One Touch No Reg API
Преди да продължите:
- Трябва да сте се свързали с Търговския ни отдел
- Трябва да сте получили
APPID
&SECRET
Плащане от нерегистриран потребител¶
При плащане от потребител без регистрация се генерира токен, на който валидността се определя от опцията за запазване на картата за бъдещи плащания savecard = 0|1
.
При savecard = 0
токенът е валиден само за текущото плащане
При savecard = 1
токенът е валиден за всички бъдещи плащания
Генериране на чексума¶
Заявките за плащане от потребител без регистрация изискват Hexadecimal HMAC SHA-1 CHECKSUM
Параметър | Описание |
---|---|
request_data | Параметрите и стойностите им в заявката, сортирани във възходящ ред по името на параметъра, конкатенирани с \n (newline) |
SECRET | Уникален ключ, който получавате от ePay.bg при регистриране на приложение |
Примерни параметри на заявката
1 2 3 4 5 6 7 8 9 10 11 |
|
Пример на request_data
request_data="AMOUNT10\nAPPID2143960160650364377823089976443473298565779337965372776022890068\nDESCRIPTIONsome descr\nDEVICEID1231234\nID124345678\nRCPT8897458022\nRCPT_TYPEKIN\nREASONreason\nSAVECARD1\n"
Пример за генериране на чексума
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
|
Резултат от кодирането
Kодиране на request_data
с параметър SECRET="012345678909876543210"
Резултат:
CHECKSUM = "98a395b01ec69d049528d8971b8546aaa4adac16"
GET /api/payment/noreg/send¶
Метод | Система |
---|---|
GET | API_BASE_WEB |
Потребителят въвежда данни за картата и избира дали да я запази за бъдещи плащания.
Това генерира потребителски идентификатор TOKEN
, след което потребителят може да извърши плащане.
Валидност на токен при незапазена карта
При savecard = 0
, токенът е валиден само за текущото плащане.
Параметри на заявката
Параметър | Тип | Описание | Опционалност |
---|---|---|---|
AMOUNT | int | Сума за плащане в стотинки | Задължителен |
APPID | string | Идентификатор на приложението | Задължителен |
DESCRIPTION | string | Описание на превода | Задължителен |
DEVICEID | string | Идентификатор на устройството | Задължителен |
ID | string | Уникален ключ, чрез който в последствие търсите резултата от заявката | Задължителен |
RCPT | string | КИН на получателя | Задължителен |
RCPT_TYPE | string | Винаги е KIN |
Задължителен |
REASON | string | Описана причина за превода | Задължителен |
CHECKSUM | string | Hexadecimal HMAC SHA-1 e чексума, удостоверяваща, че заявката идва от вас | Задължителен |
SAVECARD | int 0|1 |
Опция за запазване на картата за бъдещи плащания SAVECARD = 1 |
Опционален |
Примерна заявка
API_BASE_WEB/api/payment/noreg/send?APPID=2143960160650364377823089976443473298565779337965372776022890068&DEVICEID=1231234&ID=124345678&AMOUNT=10&RCPT=8897458022&RCPT_TYPE=KIN&DESCRIPTION=some descr&REASON=reason&checksum=93bb9753b17205f94b184bc5a94f55b3d1d2afca
API_BASE_WEB/api/payment/noreg/send?APPID=2143960160650364377823089976443473298565779337965372776022890068&DEVICEID=1231234&ID=124345678&AMOUNT=10&RCPT=8897458022&RCPT_TYPE=KIN&DESCRIPTION=some descr&REASON=reason&SAVECARD=1&checksum=98a395b01ec69d049528d8971b8546aaa4adac16
След въвеждане на данни за картата, клиентът се пренасочва към REPLY_ADDRESS
.
GET /api/payment/noreg/send/status¶
Метод | Система |
---|---|
GET | API_BASE |
Проверка на плащане от нерегистриран потребител
Параметър | Тип | Описание | Опционалност |
---|---|---|---|
APPID | string | Уникален идентификатор на приложението | Задължителен |
DEVICEID | string | Уникален идентификатор на устройството | Задължителен |
ID | string | Уникален ключ, чрез който впоследствие търсите резултата от заявката | Задължителен |
RCPT_TYPE | string | Винаги е KIN |
Задължителен |
RCPT | string | КИН на получателя | Задължителен |
Примерна заявка
https://demo.epay.bg/xdev/api/api/payment/noreg/send/status?AMOUNT=666&APPID=6609898197243081281733444125044765054179316360618564706359682755&CHECKSUM=24f946e2d30ea5c184c788539cf8f06fe996cc18&DESCRIPTION=test&DEVICEID=TestTestov123&ID=TestTestov123&RCPT=2945322142&RCPT_TYPE=KIN&REASON=test
Отговор при успешно плащане¶
При savecard=1
се връща токен, който може да бъде използван за бъдещи плащания. Връща се и ID
на платежния инструмент, който при последващи плащания трябва да се подава в параметър PINS
.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
|
Описание на параметрите на отговора
payment
Параметър | Тип | Описание |
---|---|---|
АMOUNT | int | Сума на плащането в стотинки |
TAX | int | Такса за плащането в стотинки |
TOTAL | int | AMOUNT + TAX в стотинки |
REASON | string | Допълнително описание на плащането |
DESCRIPTION | string | Описание на плащането |
RCPT | string | КИН на получателя |
RCPT_TYPE | string | Винаги е KIN |
PAYER_KIN | string | КИН на наредителя на плащането |
STATE | int | Резултата от плащането 2|3|4 2 - Обработва се 3 - Успешно плащане 4 - Неуспешно плащане |
STATE.TEXT | string | Грешка, която може да бъде показана на потребителя |
TOKEN | string | Уникален потребителски идентификатор |
NO | string | Системен код на плащането |
payment_instrument
Съдържа се savecard=1
, когато потребителят е запазил платежния инструмент по време на плащането.
Параметър | Тип | Описание |
---|---|---|
ID | int | Ключ на картата |
NAME | string | Име на картата |
CARD_TYPE | string | Първата цифра от номера на картата |
CARD_TYPE_DESCR | string | Информация за платежния инструмент |
TYPE | int 0|1 |
TYPE = 1 (банкова карта) |
EXPIRES | string MM/YYYY |
Дата на валидност на картата |
VERIFIED | int 0|1 |
Потвърдена ли е картата 0 - не 1 - да |
CARD_TYPE_COUNTRY | string | Страна на издаване на картата |
paid_with
Съдържа се savecard=0
, когато потребителят НЕ е запазил платежния инструмент по време на плащането.
Параметър | Тип | Описание |
---|---|---|
CARD_TYPE_COUNTRY | string | Страна на издаване на картата |
CARD_TYPE_DESCR | string | Информация за платежния инструмент |
CARD_TYPE | string | Първата цифра от номера на картата, ако е банкова карта |
TYPE | int 0|1 |
TYPE = 1 (банкова карта) |
Отговор при неуспешно плащане¶
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
|
1 2 3 4 |
|
Този статус показва текущото състояние на заявката, клиентът може все още да не е платил заявката.
1 2 3 4 |
|
Връща се, когато заявката не е платена в рамките на 15 минути
1 2 3 4 5 |
|
Описание на параметрите на отговора
Параметър | Тип | Описание |
---|---|---|
status | string | Статус |
msg | string | Съобщение на грешката |
err | string | Tип на грешката |
errm | string | Oписание на грешката |