Alif
Покупатель может совершать покупки/пополнять баланс в системе торговца с помощью приложения Alif Mobi, если торговец подключен к системе Alif.
Процесс проведения оплаты
- Покупатель выбирает торговца из списка доступных торговцев в приложении Alif и инициирует оплату.
- bePaid получает от Alif информацию о платеже.
- bePaid высылает торговцу запрос Информация о платеже.
- Торговец проверяет, зарегистрирован ли данный покупатель в его системе и присылает в ответе код обработки запроса. Если проверка прошла успешно, необходимо передать
"result": "0"
. Торговец должен прислать ответ в течение 14 секунд. В противном случае, соединение будет прервано по истечении времени ожидания. Если при обработке запроса возникли ошибки, торговец возвращает код ошибки, отличный от 0 в полеresult
. - bePaid отправляет торговцу автоматическое уведомление c результатом платежа.
Информация о платеже
- Торговцу необходимо реализовать в своей системе метод Информация о платеже c конечной точкой
/account_verification
. - Ответ на запрос Информация о платеже торговец должен передавать в JSON формате.
-
Запрос будет содержать следующие заголовки:
Accept: application/json
Content-type: application/json
-
Приложение торговца должно поддерживать авторизацию по методу Basic Auth. К запросу добавляется HTTP-заголовок Authorization. В заголовке указывается строка Basic и пара логин:пароль, зашифрованная в формате BASE64, где
Shop ID
используется как логин, аSecret Key
используется как пароль. Например,Authorization: Basic bG9sOnNlY3VyZQ==
. Информацию о Shop ID и Secret key магазина можно найти здесь. - Приложение торговца должно обрабатывать запросы по методу HTTP POST.
- Скорость ответа не должна превышать 14 секунд, в противном случае bePaid разрывает соединение c ошибкой
Временная ошибка. Повторите запрос позже
. -
Приложение торговца должно принимать запросы по протоколу HTTPS с IP-адресов bePaid и на определенные TCP-порты.
Info
Для получения актуального списка IP-адресов и TCP-портов bePaid обратитесь к вашему менеджеру.
Запрос
Параметр | Тип данных | Описание |
---|---|---|
request | object | |
account * обязательный |
string | Уникальный идентификатор покупателя в системе торговца (например, номер телефона или номер счета). |
id * обязательный |
string | Уникальный идентификатор транзакции в системе bePaid. |
amount * обязательный |
integer | Сумма транзакции. |
currency * обязательный |
string | Валюта транзакции в формате ISO-4217 alpha-3 code. Например, TJS . |
info | object | Секция с дополнительными параметрами для идентификации покупателя. Поля будут иметь названия, указанные торговцем при регистрации в сервисе Alif Pay. |
method | object | |
type | string | alif_mobi |
Пример запроса
{
"request":{
"account": "3542-24t24g2424242-234t22-235v8yui",
"id": "g95k8w0gk943l",
"amount":100,
"currency":"TJS",
"info":{
"fieldId1":"value1",
"fieldId2":"value2"
},
"method":{
"type": "alif_mobi"
}
}
}
Ответ
Параметр | Тип данных | Описание |
---|---|---|
request | object | |
id * обязательный |
string | Уникальный идентификатор транзакции в системе bePaid; id из запроса. |
tracking_id * обязательный |
string | Уникальный идентификатор транзакции в системе торговца. |
amount * обязательный |
integer | Значение параметра amount из запроса. |
currency * обязательный |
string | Валюта транзакции, отправленная в запросе. |
result * обязательный |
string | Код ошибки. |
description | string | Описание ошибки. |
Пример ответа
{
"response":{
"id":"3542-24t24g2424242-234t22-235v8yui",
"tracking_id":"your_uniq_number",
"amount":100,
"currency":"TJS",
"result":"0",
"description":"OK"
}
}
Ошибки в ответе
Код | Описание |
---|---|
0 | OK |
1 | Временная ошибка. Повторите запрос позже. |
4 | Неверный формат идентификатора абонента. |
5 | Идентификатор абонента не найден. Ошибка номера. |
7 | Прием платежа запрещен торговцем. |
8 | Прием платежа запрещен по техническим причинам. |
9 | Транзакция не существует |
10 | Платеж отклонен. |
11 | Дубликат, не финальный статус. |
12 | Дубликат, финальный успех. |
90 | Проведение платежа не окончено. |
241 | Сумма слишком мала. |
242 | Сумма слишком велика. |
243 | Невозможно проверить состояние счета. |
300 | Прочая ошибка. |