Pay
Обзор
Операция Pay выполняет платеж после успешной проверки (см. Документация по операции Check). Она завершает процесс оплаты, переводя средства на счет получателя.
Запрос на оплату (Pay Request)
После успешной проверки отправляется следующий запрос для выполнения платежа:
{
"billId": 1024****65,
"amount": null,
"type": "PC",
"gatewayAmount": null,
"settingId": null,
"params": {
"cardId": "1d65****-****-****-****-****3536",
"otp": 29****78,
"phone": "99890******07",
"bookId": 15****69,
"pan": "5440********3132",
"exp": 28**03
},
"agentParams": {},
"tranId": null
}Параметры запроса на оплату
billId
Long
Да
Идентификатор счета (получен из ответа на проверку)
amount
Long/null
Нет
Сумма платежа (если null, используется сумма из проверки)
type
String
Да
Тип операции ("PC" - платежная карта)
gatewayAmount
Long/null
Нет
Сумма шлюза
settingId
Long/null
Нет
Идентификатор настроек
params
Map<String,Object>
Да
Параметры платежа
params.cardId
String (UUID)
Да
Идентификатор карты
params.otp
Integer
Да
Код подтверждения SMS
params.phone
String
Да
Номер телефона
params.bookId
Long
Да
Идентификатор книги
params.pan
String
Да
Номер карты
params.exp
Integer (YYMM)
Да
Срок действия карты
agentParams
Map<String,Object>
Нет
Параметры агента
tranId
String/null
Нет
Идентификатор транзакции
Ответ на оплату (Pay Response)
При успешном выполнении платежа возвращается следующий ответ:
Параметры ответа на оплату
id
Long
Идентификатор счета
recipientId
Long
Идентификатор получателя
recipientShortName
String
Краткое имя получателя (макс. 64 символа)
sessionId
String/null
Идентификатор сессии (для POS-систем, макс. 32 символа)
amountRatio
Integer
Коэффициент суммы (например, 1 - рубли/сумы, 100 - тийины/копейки)
amount
Long
Сумма платежа
account
String
Номер счета/телефона (макс. 64 символа)
currency
Integer
Код валюты (3-значный код ISO 4217)
extId
String
Внешний идентификатор транзакции (макс. 32 символа)
requestTime
String
Время запроса (формат ISO 8601 Instant)
responseTime
String
Время ответа (формат ISO 8601 Instant)
responseText
String
Текст ответа (макс. 128 символов)
success
Boolean
Статус успеха (true/false)
data
Map<String,Object>
Дополнительные данные (JSON-объект)
statusCode
Integer
Код статуса (0 - успех, другие значения - ошибка)
statusMessage
String/null
Сообщение о статусе
problemStatus
ProblemStatus/null
Статус проблемы
gatewayName
String/null
Название шлюза
sender
P2pParticipantDto
Информация об отправителе
sender.name
String
Имя отправителя
sender.amount
Long
Сумма отправки
sender.commissionAmount
Long
Сумма комиссии
sender.commission
Object/null
Детали комиссии
sender.currency
Integer
Код валюты
sender.data
Map<String,Object>
Дополнительные данные отправителя
receiver
P2pParticipantDto
Информация о получателе
receiver.name
String
Имя получателя
receiver.amount
Long
Сумма получения
receiver.commissionAmount
Long
Сумма комиссии
receiver.commission
Object/null
Детали комиссии
receiver.currency
Integer
Код валюты
receiver.data
Map<String,Object>
Дополнительные данные получателя
Статусы транзакций для операции оплаты
PAYING- Платеж в процессеSUCCESS- Платеж успешенFAILED- Платеж не удалсяWAITING- Ожидание (для асинхронных сервисов)CANCELLED- Платеж отменен
Важные замечания
Формат суммы: Все суммы указываются в тийинах (1 сум = 100 тийинов).
Код валюты: 860 - Узбекский сум (UZS).
OTP: Убедитесь, что код подтверждения SMS введен правильно.
Обработка ошибок
Проверяйте следующие параметры в ответе API:
success: trueиstatusCode: 0- операция успешнаsuccess: falseилиstatusCode != 0- ошибка операции
В случае ошибок используйте следующие параметры:
statusMessage- Подробная информация об ошибкеproblemStatus- Статус проблемы (перечисление ProblemStatus)status- Значение перечисления TransactionStatus (см. Документация по статусам транзакций)
Last updated