-
Notifications
You must be signed in to change notification settings - Fork 0
API Пополнения
Сервисы предназначены для осуществления операций «Пополнение» через Allpay.
Перед чтением этой страницы желательно ознакомиться с этой
Примеры всех XML запросов в самом конце
- СЦЕНАРИЙ ПОПОЛНЕНИЯ
- ТЕХНИЧЕСКИЙ СЦЕНАРИЙ ПОПОЛНЕНИЯ
- ОПИСАНИЕ ФОРМАТА СООБЩЕНИЙ
- ОБЩИЕ ПОЛЯ
- ПОПОЛНЕНИЕ
- ИСПОЛЬЗОВАНИЕ ТЕСТОВОЙ СИСТЕМЫ ALLPAY
- ПРИМЕРЫ ДЕМО РЕАЛИЗАЦИЙ
- НА ЯЗЫКЕ JAVA
- ПРИМЕРЫ ЗАПРОСОВ ОТВЕТОВ
- Клиент просит кассира Пополнить деньги на кошелёк allpay
- Клиент передает наличные и логин кошелька allpay Кассиру
- Кассир формирует запрос на Пополнение кошелька, используя логин Клиента. Кассир отправляет запрос на сервер allpay
- Кассир получает уведомление об успешной транзакции
- Клиент получает пуш уведомление об успешной транзакции
- Формируем запрос
createCashInTransaction
- Метод создает транзакцию, блокирует деньги агента. Статус транзакции становится PENDING (ОЖИДАНИЕ).
- Формируем запрос
completeTransaction
, номер транзакции берём из ответа отcreateCashOutTransaction
- Получаем ответ, заблокированные деньги списываются. Статус транзакции становится COMPLETE (ЗАВЕРШЕН).
В случае проблем или ошибок после шага 2 или 3 транзакцию можно отменить используя метод declineTransaction
.
language
— язык текстов. От него зависит на каком языке будут приходить тексты ошибок, статусов или других текстовых описаний.
userName
— логин пользователя в системе Allpay.
amount
— сумма денег указанная в KZT
commission
— Содержит комиссию на транзакцию
transactionInfo
— Содержит информацию о транзакции:
-
GUID
— уникальный идентификатор транзакции на стороне пользователя API -
amount
— сумма в KZT -
transactionId
— идентификатор транзакции -
transactionStatus
— статус транзакции -
commission
— комиссия на транзакцию
onlineTransactionResponseHeader
— общее поле для всех ответов на запросы. Содержит:
-
userMessage
— поле информативного характера. Обычно это сообщения, которое можно показать пользователю. Содержит описание ошибок, статусов и т.д. -
developerMessage
— поле информативного характера. Содержит техническое описание и коды ошибок. -
status
— Статус запроса. Описание статусов будет приведено ниже. -
timestamp
— дата ответа -
token
- токен
transactionResponse
— содержит информацию о транзакции.
-
header
— составное поле типа onlineTransactionResponseHeader -
transactionInfo
— составное поле типа transactionInfo
onlineTransactionRequestHeader
— общее поле для всех запросов. Содержит:
-
lang
— определяет язык. Поле типа language, описанного выше. -
timestamp
— дата отправки запроса. -
requester
— логин отправителя в системе Allpay.
Пример запроса:
Входящие параметры:
userName - логин пользователя которого нужно пополнить
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.allpay.kz/mfs/soap/CashInTransactionManagement/1.1">
<soapenv:Header/>
<soapenv:Body>
<ns:checkUserAndValidateCashIn>
<!--Optional:-->
<CheckUserRequest>
<header>
<!--Optional:-->
<lang>ru</lang>
<timestamp>?</timestamp>
<requester>?</requester>
<!--Optional:-->
<token>?</token>
</header>
<userName>?</userName>
</CheckUserRequest>
</ns:checkUserAndValidateCashIn>
</soapenv:Body>
</soapenv:Envelope>
Блок basicUserInfo - опционален. Если он отстутсвует - значит такого пользователя нет. Запрашивать можно только клиентов. Блок basicUserInfo содержит identified - является ли пользователь идентифицированным IIN - ИИН - Индивидуальный идентификационный номер firstName - имя lastName - фамилия patronymic - отчество
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.allpay.kz/mfs/soap/CashInTransactionManagement/1.1">
<soapenv:Header/>
<soapenv:Body>
<ns:checkUserAndValidateCashInResponse>
<!--Optional:-->
<return>
<header>
<userMessage>?</userMessage>
<developerMessage>?</developerMessage>
<status>?</status>
<timestamp>?</timestamp>
</header>
<!--Optional:-->
<basicUserInfo>
<identified>?</identified>
<!--Optional:-->
<IIN>?</IIN>
<!--Optional:-->
<firstName>?</firstName>
<!--Optional:-->
<lastName>?</lastName>
<!--Optional:-->
<patronymic>?</patronymic>
</basicUserInfo>
</return>
</ns:checkUserAndValidateCashInResponse>
</soapenv:Body>
</soapenv:Envelope>
Входящие параметры:
- GUID - (он же RRN) номер транзакции (должен быть уникален в разрезе мерчанта. Иными словами rrn + requester - у нас уникальны);
- amount - количество на которое необходимо пополнить
- toUserName - клиент чей счет необходимо пополнить
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.allpay.kz/mfs/soap/CashInTransactionManagement/1.1">
<soapenv:Header/>
<soapenv:Body>
<ns:createCashInPayment>
<!--Optional:-->
<CashInRequest>
<header>
<!--Optional:-->
<lang>ru</lang>
<timestamp>?</timestamp>
<requester>?</requester>
<!--Optional:-->
<token>?</token>
</header>
<toUserName>?</toUserName>
<amount>?</amount>
<GUID>?</GUID>
</CashInRequest>
</ns:createCashInPayment>
</soapenv:Body>
</soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.allpay.kz/mfs/soap/CashInTransactionManagement/1.1">
<soapenv:Header/>
<soapenv:Body>
<ns:createCashInPaymentResponse>
<!--Optional:-->
<return>
<header>
<userMessage>?</userMessage>
<developerMessage>?</developerMessage>
<status>?</status>
<timestamp>?</timestamp>
</header>
<terminalPaymentTransactionStatus>?</terminalPaymentTransactionStatus>
<!--Optional:-->
<reason>?</reason>
</return>
</ns:createCashInPaymentResponse>
</soapenv:Body>
</soapenv:Envelope>
Для тестирования сервисов можно подключится к тестовой инфраструктуре ПС Allpay. Запрос на получение доступа к тестовому серверу отправляйте на почту techsupport@allpay.kz
Исходный код демо проектов находится здесь
Проект находится здесь
Скоро будет