/api/reseller/order/{custom_id}curl https://hexpay.live/api/reseller/order/<custom_id> \
-H "Authorization: Bearer <YOUR_API_KEY>"{
"success": true,
"custom_id": "a4cee2fe-ce8c-448b-bf2c-000000000001",
"status": "delivered",
"product": "stars",
"product_ref": null,
"gift_id": null,
"recipient": "durov",
"quantity": 100,
"price_quoted_rub": 132.07,
"price_quoted_nano": 132070,
"price_charged_rub": 132.07,
"price_charged_nano": 132070,
"delivered_payload": {
"key": "37ada9160f7870a33fc8",
"tx_hash": "37ada9160f7870a33fc8"
},
"activation_guide": "🤖 После оплаты вы получите CDK-ключ. Активация на https://9977ai.vip/: 1. Войдите в свой аккаунт…",
"error_code": "recipient_invalid",
"error_message": "Получатель не найден или не может принять этот товар",
"refunded": true,
"refund_amount_nano": 132070,
"refund_amount_rub": 132.07,
"delivery_state": "queued",
"action_required": {
"type": "confirm_login",
"url": null,
"expires_at": "2026-08-21T12:30:00Z",
"hint": null
},
"eta_seconds": 0,
"refunded_at": "2026-08-21T12:00:41Z",
"created_at": "2026-08-21T12:00:00Z",
"completed_at": "2026-08-21T12:00:41Z"
}Header Authorization: Bearer <key> on every request. The key is issued in the cabinet and shown once. It spends your deposit: keep it on the server.
successbooleanoptionalcustom_idstringoptionalstatusstringoptional• created — цена зафиксирована, депозит не списан
• pending — оплачен, ждёт доставки
• processing — доставляется
• delivered — доставлен (терминальный)
• failed — доставка не удалась, депозит возвращён (терминальный)
• cancelled — неоплаченный заказ истёк по TTL либо заказ отменён нами
вручную; если он был оплачен, депозит возвращён (терминальный)
• rejected — на оплате не хватило депозита, списания не было (терминальный)
createdpendingprocessingdeliveredfailedcancelledrejectedproductstringoptionalproduct_refstringoptionalдля gift — gift_id; для neural — код позиции; для game и apple — product_ref из каталога
gift_idstringoptionalустаревший алиас product_ref — используйте product_ref
recipientstringoptionalquantityintegeroptionalдля gift — звёздность подарка; для steam — сумма пополнения в ₽
price_quoted_rubnumberoptionalprice_quoted_nanointegeroptionalprice_charged_rubnumberoptionalprice_charged_nanointegeroptionaldelivered_payloadobjectoptionalЧто именно доставлено. У части товаров это лишь подтверждение, у нейросетей и
пакетов игровых кодов — сам товар, который нужно отдать покупателю:
• stars, premium — tx_hash транзакции Fragment
• gift — tx_hash: null, подтверждение — статус delivered
• neural — `key`: CDK-ключ подписки
• game (коды) — `codes`: массив кодов
• apple — `codes`: массив кодов активации
• steam и игры-пополнения — tx_hash с идентификатором заказа у исполнителя
Если поставщик отдал меньше карт, чем заказано, рядом приходят
partial_delivery: true, ordered_quantity и delivered_quantity, а разница
возвращается на депозит — см. «Частичная выдача».
tx_hash у neural/game — историческое имя, там лежит тот же ключ (у кодов —
склеенный через ; ). Поле оставлено ради ранних интеграций; новый код пишите
на key и codes.
activation_guidestringoptionalИнструкция активации — что покупателю делать с товаром. Приходит для всех
товаров: у нейросети это активация ключа, у Apple — погашение карты с
предупреждением про регион, у Stars и Premium — честное «активировать нечего».
Текст зависит от позиции: страна карты Apple, вид доставки игры. Язык —
параметр ?lang=ru|en того же запроса. Тот же текст доступен заранее через
GET /api/reseller/guide. В теле вебхука это поле НЕ приходит.
error_codestringoptionalмашиночитаемая причина провала — ветвитесь по нему, а не по тексту
recipient_invalidout_of_stockproduct_unavailableinvalid_order_datadelivery_rejecteddelivery_faileddelivery_in_reviewtemporary_failureorder_cancelledaction_expirederror_messagestringoptionalчеловекочитаемый текст причины
refundedbooleanoptionalна депозит вернулись деньги — всегда true при status=failed, при status=cancelled с оплатой, а также при частичной выдаче (status=delivered). Сколько именно — в refund_amount_nano
refund_amount_nanointegeroptionalсколько вернулось на депозит (при частичной выдаче — только за невыданное)
refund_amount_rubnumberoptionaldelivery_statestringoptionalТолько у асинхронных товаров (Spotify). Уточняет, что происходит внутри
статуса processing — сам status при этом остаётся одним из семи известных
вам значений, нового мы не вводили.
action_required означает, что дело за покупателем.
queuedprocessingaction_requiredworkingin_reviewdonefailedaction_requiredobjectoptionalТолько у асинхронных товаров и только когда нужно действие покупателя.
eta_secondsintegeroptionalсколько секунд осталось на действие покупателя
refunded_atstringoptionalcreated_atstringoptionalcompleted_atstringoptional401—404—curl https://hexpay.live/api/reseller/order/<custom_id> \
-H "Authorization: Bearer <YOUR_API_KEY>"{
"success": true,
"custom_id": "a4cee2fe-ce8c-448b-bf2c-000000000001",
"status": "delivered",
"product": "stars",
"product_ref": null,
"gift_id": null,
"recipient": "durov",
"quantity": 100,
"price_quoted_rub": 132.07,
"price_quoted_nano": 132070,
"price_charged_rub": 132.07,
"price_charged_nano": 132070,
"delivered_payload": {
"key": "37ada9160f7870a33fc8",
"tx_hash": "37ada9160f7870a33fc8"
},
"activation_guide": "🤖 После оплаты вы получите CDK-ключ. Активация на https://9977ai.vip/: 1. Войдите в свой аккаунт…",
"error_code": "recipient_invalid",
"error_message": "Получатель не найден или не может принять этот товар",
"refunded": true,
"refund_amount_nano": 132070,
"refund_amount_rub": 132.07,
"delivery_state": "queued",
"action_required": {
"type": "confirm_login",
"url": null,
"expires_at": "2026-08-21T12:30:00Z",
"hint": null
},
"eta_seconds": 0,
"refunded_at": "2026-08-21T12:00:41Z",
"created_at": "2026-08-21T12:00:00Z",
"completed_at": "2026-08-21T12:00:41Z"
}