API section
Checkout
A whole sale or refund: payment on the terminal → receipt on the register → slip. If the receipt fails, the agent cancels the payment itself (PAYMENT_CANCELLED).
| POST | /api/v1/checkouts | Sale or refund with a receipt |
Order: card operation on the terminal (if there is a CARD payment) → receipt on the register → slip on the register. If the receipt fails after a card payment, the payment is cancelled on the terminal (error PAYMENT_CANCELLED); if the cancellation also fails — PAYMENT_NOT_CANCELLED with the payment data in error.details. Result: { receipt: fiscal document, payment: card operation }.
Parameters
| Name | In | Type | Description |
|---|---|---|---|
Idempotency-Keyrequired | header | string | |
Prefer | header | string |
Request body application/json required
Fields · CheckoutRequest
registerIdinteger int32terminalIdinteger int3211 fields · Receipt
typestringrequiredvalues:SELLSELL_RETURNBUYBUY_RETURNtaxationstringvalues:OSNUSN_INCOMEUSN_INCOME_OUTCOMEESHNPATENToperatorOperator2 fields · Operator
namestringrequiredfrom 1innstring
customerCustomer3 fields · Customer
contactstringnamestringinnstring
headerarray of TextLine4 fields · TextLine
kindstringrequiredvalues:TEXTPAIRSEPARATORtextstringrightstringalignstringvalues:LEFTCENTERRIGHT
- from 1
9 fields · ReceiptItem
namestringrequiredfrom 1priceinteger int64from 0quantitynumberrequiredamountinteger int64from 0vatstringrequiredvalues:NONEVAT0VAT5VAT7VAT10VAT20VAT22VAT105VAT107VAT110VAT120VAT122paymentMethodstringrequiredvalues:FULL_PREPAYMENTPREPAYMENTADVANCEFULL_PAYMENTPARTIAL_PAYMENTCREDITCREDIT_PAYMENTpaymentObjectstringrequiredvalues:COMMODITYEXCISEJOBSERVICEGAMBLING_BETGAMBLING_PRIZELOTTERYLOTTERY_PRIZEINTELLECTUAL_ACTIVITYPAYMENTAGENT_COMMISSIONCOMPOSITEANOTHERdepartmentinteger int32markingMarking4 fields · Marking
codestringrequiredfrom 1fractionstringpattern:\d+/\d+measurestringvalues:PIECEGRAMKILOGRAMTONCENTIMETERDECIMETERMETERSQUARE_CENTIMETERSQUARE_DECIMETERSQUARE_METERMILLILITERLITERCUBIC_METERKILOWATT_HOURGKALDAYHOURMINUTESECONDKILOBYTEMEGABYTEGIGABYTETERABYTEOTHERindustryPropsstring
- from 1
2 fields · ReceiptPayment
typestringrequiredvalues:CASHCARDPREPAIDCREDITOTHERamountinteger int64
footerarray of TextLine4 fields · TextLine
kindstringrequiredvalues:TEXTPAIRSEPARATORtextstringrightstringalignstringvalues:LEFTCENTERRIGHT
electronicbooleansenderEmailstringsettlementPlacestring
originalPaymentRefstringprintSlipboolean
JSON
{
"registerId": 1,
"terminalId": 1,
"receipt": {
"type": "SELL",
"taxation": "OSN",
"operator": {
"name": "string",
"inn": "string"
},
"customer": {
"contact": "string",
"name": "string",
"inn": "string"
},
"header": [
{}
],
"items": [
{}
],
"payments": [
{}
],
"footer": [
{}
],
"electronic": false,
"senderEmail": "string",
"settlementPlace": "string"
},
"originalPaymentRef": "string",
"printSlip": false
}Response 200 application/json
Fields · Operation
idstring uuidtypestringidempotencyKeystringresourcesarray of stringstatusstringvalues:QUEUEDRUNNINGSUCCEEDEDFAILEDUNKNOWNstagestringcreatedAtstring date-timestartedAtstring date-timefinishedAtstring date-timeresultany valueerrorOperationError3 fields · OperationError
codestringmessagestringdetailsany value
warningsarray of string
Errors — problem+json with a code field, see error codes.
Request example
curl
curl -X POST 'http://localhost:7790/api/v1/checkouts' \
-H 'Idempotency-Key: $(uuidgen)' \
-H 'Prefer: wait=30' \
-H 'Content-Type: application/json' \
--data '{"registerId":1,"terminalId":1,"receipt":{"type":"SELL","taxation":"OSN","operator":{"name":"string","inn":"string"},"customer":{"contact":"string","name":"string","inn":"string"},"header":[{}],"items":[{}],"payments":[{}],"footer":[{}],"electronic":false,"senderEmail":"string","settlementPlace":"string"},"originalPaymentRef":"string","printSlip":false}'curl
curl -X POST 'https://cloud.hw-connector.ru/agent/api/v1/checkouts' \
-H 'X-Api-Key: hwk_…' \
-H 'X-Device-Id: 42' \
-H 'Idempotency-Key: $(uuidgen)' \
-H 'Prefer: wait=30' \
-H 'Content-Type: application/json' \
--data '{"registerId":1,"terminalId":1,"receipt":{"type":"SELL","taxation":"OSN","operator":{"name":"string","inn":"string"},"customer":{"contact":"string","name":"string","inn":"string"},"header":[{}],"items":[{}],"payments":[{}],"footer":[{}],"electronic":false,"senderEmail":"string","settlementPlace":"string"},"originalPaymentRef":"string","printSlip":false}'