Invoys bo‘yicha to‘lov
1. Prepare
POST - /api/v1/checkout/invoice/prepare
Request header
Field | Optional | Description |
|---|---|---|
Content-Type | false | application/json |
X-Lang | true | RU |
Request sample
curl --location 'baseUrl/api/v1/checkout/invoice/prepare' \
--header 'Content-Type: application/json' \
--data '{
"invoiceIdentifier": "976328aeb1414c48b288201dd9343fe0"
}'Этот идентфикатор получается от урл который бекенд отправил клиенту как смс
https://checkout.xonsaroypay.uz/invoice?invoiceIdentifier=976328aeb1414c48b288201dd9343fe0
оон выглядит таким образом
Если status:
SUCCESS
REVERSED
FAILED
PENDING
REJECTED
WAITING
CANCELED
просто надо показать что заказ уже конечном статусе
CREATED
HOLD_SUCCESS
VERIFICATION_FAILED
можно оплатит заказа клиент может оплатить если заказ только в этих статусах
PROCESS
BALANCE_WAITING
WARNED
то показать что оплата в процессеResponse sample (HTTP 200)
{
"orderId": "cf956d85-d87a-4409-8883-7cfa1638fbe5",
"senderMasked": "9860***5612",
"serviceId": "c655a18f-73c3-4abe-a0c8-bf7df7a3697e",
"serviceName": "branch1",
"amount": 5000,
"feeAmount": 0,
"currency": "UZS",
"serviceImageUrl": "Service Image Url",
"generatedPayUrl": "Generated Pay Url",
"billingIdentifier": "branch1",
"lang": "RU",
"returnUrl": "",
"paymentData": {},
"items": [
{
"id": 4,
"fieldOrder": 0,
"key": "billingIdentifier",
"title": "Номер договора",
"isRequired": true,
"type": "STRING",
"fieldRegex": "^[a-zA-Z]+$",
"placeholder": "BBxxxxxxx",
"value": "ZE12381923"
},
{
"id": 6,
"fieldOrder": 0,
"key": "description",
"title": "Допрольнительный инфо",
"isRequired": false,
"type": "STRING",
"fieldRegex": "",
"placeholder": "",
"value": "Xonsaroy uchun to'lov"
}
],
"status": "CREATED",
"payTime": 0
}Response sample (HTTP 4xx)
{
"data": {
"message": "Инвойс не найдена"
},
"timestamp": 1757402253311
}2. Payment
POST - /api/v1/checkout/invoice/payment
Request header
Field | Optional | Description |
|---|---|---|
Content-Type | false | application/json |
X-Lang | true | RU |
Request sample
curl --location 'lbaseUrl/api/v1/checkout/invoice/payment' \
--header 'Content-Type: application/json' \
--data '
{
"orderId": "1dc1e1c1-399e-4402-b1b8-241777f5cae6",
"cardNumber": "9860270000070000",
"cardExpire": "1227"
}'Response sample (HTTP 200)
{
"data": {
"message": "success.payment"
},
"timestamp": 1758047999722
}Response sample (HTTP 4xx)
{
"data": {
"message": "Инвойс не найдена"
},
"timestamp": 1757402253311
}3. Confirm
POST - /api/v1/checkout/invoice/verify
Request header
Field | Optional | Description |
|---|---|---|
Content-Type | false | application/json |
X-Lang | true | RU |
Request sample
curl --location 'baseUrl/api/v1/checkout/invoice/verify' \
--header 'Content-Type: application/json' \
--data '{
"operationId": "5e1107bc-6984-4661-b8dd-8e8c84b729cc",
"otpCode": "782419"
}'Response sample (HTTP 200)
{
"data": {
"id": "85bec26d-d86a-4fdc-aece-2269d9d3b26b",
"amount": 5000,
"feeAmount": 0,
"currency": "UZS",
"serviceName": "Smartcast Business1",
"orderId": "ee6ec31a-a59f-4c7d-80ba-32733f2054b4",
"senderMasked": "9860•5395",
"payTime": 1760899056300,
"items": [
{
"id": 4,
"fieldOrder": 0,
"key": "billingIdentifier",
"title": "Номер договора",
"isRequired": true,
"type": "STRING",
"fieldRegex": "^[a-zA-Z]+$",
"placeholder": "BBxxxxxxx",
"value": "ZE12381923"
},
{
"id": 6,
"fieldOrder": 0,
"key": "description",
"title": "Допрольнительный инфо",
"isRequired": false,
"type": "STRING",
"fieldRegex": "",
"placeholder": "",
"value": "Xonsaroy uchun to'lov"
}
]
"serviceImageUrl": "https://s3.xonsaroypay.uz/ecom/business-1-1141661b-e35e-4f3b-bdb5-44f1e6ddf326.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ecom-user%2F20251019%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20251019T183736Z&X-Amz-Expires=86400&X-Amz-SignedHeaders=host&X-Amz-Signature=69aae726e28c4d55647e47d8e96de63434e24752b973b901ee9cbc678f2561f0",
"operationStatus": "SUCCESS"
},
"timestamp": 1760899056308
}Response sample (HTTP 4xx)
{
"data": {
"message": "Инвойс не найдена"
},
"timestamp": 1757402253311
}