Skip to Content
Разовые платежиОбщие соглашения

Общие соглашения

Формат ответов

Все ответы имеют единую структуру-обёртку:

Успешный ответ
{ "success": true, "data": { ... } }
Ответ с ошибкой
{ "success": false, "error": { "code": "INVOICE_NOT_FOUND", "message": "Invoice with the specified ID was not found", "details": null } }

Поля data и error взаимоисключающие — отсутствующее поле не сериализуется. В отдельных случаях details содержит структурированную информацию: например, details.invoice_id для INVOICE_ALREADY_EXISTS или details.contract_id для CONTRACT_ALREADY_EXISTS.

HTTP-коды ответов

HTTP-кодЗначение
200Успешная обработка
201Ресурс создан (Invoice / Contract)
202Запрос принят к обработке (Refund)
400Невалидный запрос (ошибки валидации)
401Ошибка аутентификации
403Нет доступа к указанному проекту (IP не в whitelist, проект неактивен)
404Ресурс не найден
409Конфликт (напр. счёт уже существует)
422Бизнес-логическая ошибка
500Внутренняя ошибка платформы
503Сервис временно недоступен

Типы данных

ТипФормат JSONПример
uuidstring (UUID v4)"1624505c-0031-00cf-7d54-4cf1ce08cb30"
datetimestring (ISO 8601, UTC)"2025-03-29T20:00:08Z"
moneyobject — см. ниже—
currencystring (ISO 4217)"RUB"
msisdnstring (E.164 без +)"79600000000"
ipstring (IPv4/IPv6)"10.20.30.40"
countrystring (ISO 3166-1 alpha-2)"RU"

Денежные суммы

Все денежные значения представлены объектом money:

{ "amount": "25.00", "currency": "RUB", "vat_included": true }
  • amount — строка с фиксированной точкой (две цифры после точки). Передаётся строкой, чтобы избежать ошибок округления при работе с float.
  • currency — код валюты ISO 4217.
  • vat_included — флаг включения НДС в сумму.

Дополнительные параметры счёта

additional_parameters — произвольные пары «имя — значение» (строки), JSON-эквивалент блока <AdditionalParameters> из XML API. Через них передаются служебные флаги обработки, например NeedSendNotification, и собственные метки продавца.

{ "additional_parameters": { "NeedSendNotification": "False" } }

Блок принимают создание счёта — внутри order, — а также авторизация, отмена и возврат, где он лежит на верхнем уровне тела. Переданные значения дописываются к уже сохранённым у счёта, совпадающие по имени — перезаписываются.

Имена нечувствительны к регистру и должны быть уникальны: Flag и flag в одном объекте — ошибка запроса 400 BAD_REQUEST, а не два параметра.