Сұрақтарыңыз бар болса, бір түймен біргеміз

Бізге хабарласу

REST API сипаттамасы

REST — бұл желі арқылы деректерді тасымалдаудың қарапайым әдісі. Деректер параметрлер жиынтығы бар HTTP-сұрауларыарқылы тасымалданады. Өңделген сұраулар JSON нысандары түрінде қайтарылады (жауап мысалын төменде қараңыз).

{
  "errorCode": "12",
  "errorMessage": "Empty amount"
}

Сынақ карталар

Сынақ өткізу мақсатында келесі сынақ карталарды пайдалануға болады.

Карта нөмірі (SSL) 4444 5555 1111 3333
Жарамдылық мерзімі 12/24
CVC 123
Карта нөмірі (3DS1) 4012 0010 3816 6662
Жарамдылық мерзімі 12/24
CVC 123
3-D Secure растау коды 12345678
Карта нөмірі (3DS2) 5555 5555 5555 5599
Жарамдылық мерзімі 12/24
CVC 123

Мерчант аутентификациясы

Төлем шлюзінде мерчант аутентификациясын орындау үшін екі әдісті қолдануға болады.

Міндетті Атау Түрі Сипаттама
Сипаттаманы көру

userName String Сатушының API есептік жазбасының логині. Аутентификация үшін тіркелу кезінде пайдаланушы аты мен құпиясөз орнына токен пайдаланылса (token параметрі), құпиясөзді жіберудің қажеті жоқ.
Сипаттаманы көру

password String Сатушының API есептік жазбасының құпиясөзі. Аутентификация үшін тіркелу кезінде пайдаланушы аты мен құпиясөз орнына токен пайдаланылса (token параметрі), құпиясөзді жіберудің қажеті жоқ.
Міндетті Атау Түрі Сипаттама
Сипаттаманы көру

token String Төлем шлюзіне сұрауларды жіберген кезде сатушы аутентификациясы үшін пайдаланылатын мән. Осы параметрді көрсетсеңіз, userName және password көрсетілмеуі керек.

REST протоколы арқылы, application/x-www-form-urlencoded түріндегі сұрауларды жіберу (multipart/form-data түрінде жібермеу).

Қосылым координаттары

Сұраулар келесі талаптарға сәйкес болуы керек:

Төмендегі кестеде REST сұрауларына қатынасуға болатын URL-мекенжайлары көрсетілген.

Сұрау URL

Тапсырысты тіркеу

https://3dsec.berekebank.kz/payment/rest/register.do

Алдын ала авторизациядан өтетін тапсырысты тіркеу

https://3dsec.berekebank.kz/payment/rest/registerPreAuth.do

Тапсырысты аяқтау сұрауы

https://3dsec.berekebank.kz/payment/rest/deposit.do

Қаражатты қайтару сұрауы

https://3dsec.berekebank.kz/payment/rest/refund.do

Тапсырыс күйінің сұрауы

https://3dsec.berekebank.kz/payment/rest/getOrderStatusExtended.do

Байламдар арқылы төлеу

https://3dsec.berekebank.kz/payment/rest/paymentOrderBinding.do

Тапсырыс үшін төлеу сұрауы, карта деректері мерчант тарапынан жиналады - валидация

https://3dsec.berekebank.kz/payment/rest/paymentOrder.do

Тапсырыс үшін төлеу сұрауы, карта деректері мерчант тарапынан жиналады

https://3dsec.berekebank.kz/payment/rest/paymentOrder.do

Тапсырыс үшін төлеу сұрауы, карта деректері мерчант тарапынан жиналады

https://3dsec.berekebank.kz/payment/rest/paymentOrder.do

Егер сіз REST-сұрауларын төлем шлюзінің сатушы консоліне кірген браузерден тексерсеңіз, кез келген REST сұрауын орындау төлем шлюзінің сатушы консоліндегі қатеге себеп болады. Төлем шлюзінің сатушы консоліндегі сеансты қалпына келтіру үшін мына қадамдарды орындау керек:

Қатенің пайда болуын алдын алу үшін төмендегі әдістердің бірін орындауға болады:

Интеграция үлгісі

Төлем шлюзінің төлем бетіндегі карта деректерін енгізу арқылы төлем жасау

Бір кезеңді төлем Екі кезеңді төлем
1 Сатып алушы тауарлар мен қызметтерді таңдап, төлем әдісі ретінде төлем картасын пайдаланады. Сатып алушы тауарлар мен қызметтерді таңдап, төлем әдісі ретінде төлем картасын пайдаланады.
2 Мерчант төлем шлюзіне тапсырысты тіркеу сұрауын жібереді:
register.do.
Басқа параметрлерге қоса, мына параметрлер көрсетіледі:
  • returnUrl – төлем сәтті аяқталған кезде клиент бағытталатын URL-мекенжайы;
  • failUrl – төлем сәтсіз аяқталған кезде клиент бағытталатын URL-мекенжайы.
Мерчант авторизациядан бұрын төлем шлюзіне тапсырысты тіркеу сұрауын жібереді:
registerPreAuth.do.
Басқа параметрлерге қоса, мына параметрлер көрсетіледі:
  • amount – есептен шығару сомасы;
  • orderNumber – мерчант жүйесіндегі тапсырыс нөмірі;
  • returnUrl – төлем сәтті аяқталған кезде клиент бағытталатын URL-мекенжайы;
  • failUrl – төлем сәтсіз аяқталған кезде клиент бағытталатын URL-мекенжайы;
3 Басқа параметрлерге қоса, төлем шлюзі мына параметрлерді қайтарады:
  • orderId – төлем шлюзіндегі тапсырыстың бірегей нөмірі;
  • formUrl – төлем пішімінің URL-мекенжайы.
Басқа параметрлерге қоса, төлем шлюзі мына параметрлерді қайтарады:
  • orderId – төлем шлюзіндегі тапсырыстың бірегей нөмірі;
  • formUrl – төлем пішімінің URL-мекенжайы.
4 Сатушы пайдаланушыны formUrl жауап параметрінде көрсетілген мекенжай бойынша өткізеді. Сатушы клиентті formUrl сұрау параметрінде көрсетілген мекенжай бойынша өткізеді.
5 Клиентке төлем картасының деректерін енгізу пішіні көрсетіледі. Клиент алған пішінді толтырып, деректерді төлем шлюзінің серверіне жібереді. 5
6 Кейінгі әрекеттер клиенттің картасында 3-D Secure протоколының бар-жоғына байланысты болады:
  • 3-D Secure протоколына қолдау көрсетілмейді – үдерістің келесі қадамына өту;
  • 3-D Secure протоколына қолдау көрсетіледі – төлем шлюзі клиентті банк-эмитенттің ACS серверіндегі аутентификация (көп жағдайда, SMS-аутентификация) пішініне өткізеді және аутентификация сәтті өтсе, үдеріс аяқталады.
Кейінгі әрекеттер клиенттің картасында 3-D Secure протоколының бар-жоғына байланысты болады:
  • 3-D Secure протоколына қолдау көрсетілмейді – үдерістің келесі қадамына өту;
  • 3-D Secure протоколына қолдау көрсетіледі – төлем шлюзі клиентті банк-эмитенттің ACS серверіндегі аутентификация (көп жағдайда, SMS-аутентификация) пішініне өткізеді және аутентификация сәтті өтсе, үдеріс аяқталады.
7 Төлем шлюзі тіркелген тапсырыстың сомасын есептен шығарады.
8 Төлем өңделген соң, төлем шлюзі клиентті returnUrl бетіне бағыттайды. Төлем өңделген соң, төлем шлюзі клиентті returnUrl бетіне бағыттайды.
9 Клиенттің браузерінде дүкеннен төлем нәтижелері көрсетілген беттің ашылуы талап етіледі. Клиенттің браузерінде дүкеннен төлем нәтижелері көрсетілген беттің ашылуы талап етіледі.
10 Сатушы төлем шлюзінен (orderId):
getOrderStatusExtended.do тапсырысын тіркеу кезінде алынған бірегей идентификаторды пайдаланып, тапсырыс күйін талап етеді.
Сатушы төлем шлюзінен (orderId):
getOrderStatusExtended.do тапсырысын тіркеу кезінде алынған бірегей идентификаторды пайдаланып, тапсырыс күйін талап етеді.
11 Төлем шлюзі дүкенге төлем күйін қайтарады, ал дүкен төлем нәтижесін клиент браузеріне жібереді. Төлем шлюзі дүкенге төлем күйін қайтарады, ал дүкен төлем нәтижесін клиент браузеріне жібереді.
12 N/A Клиенттен қаражатты алу үшін сатушы тапсырысты аяқтау сұрауын жіберуі тиіс:
deposit.do.
13 N/A Төлем шлюзі жауапты жібереді. Тапсырыс күйі қайтарылмайды. Тапсырыс күйін алу үшін төлем шлюзіне getOrderStatusExtended сұрауын жіберіңіз:
getOrderStatusExtended.do.

Тапсырыс күйін алу үшін getOrderStatusExtended сұрауының орнына кері қоңырау хабарландыруларын пайдалануға болады. Осы хабарландырулар сізге автоматты түрде тапсырыс күйі өзгергеннен кейін жіберіледі.

Қаражатты қайтару

Төлем шлюзінде қаражатты толық немесе ішінара қайтаруға болады. ** Deposited** (Аяқталды) күйіндегі тапсырыстар бойынша қаражатты қайтаруға болады. Төмендегі кестеде қаражатты қайтару кезіндегі әрекеттер көрсетілген.

Әрекет
1 Сатушы қаражатты қайтаруды сұрады (refund):
refund.do.
2 Сәтті жауаптан кейін сатушы тапсырыс күйін сұрайды:
getOrderStatusExtended.do.

Тапсырыс күйін алу үшін getOrderStatusExtended сұрауының орнына кері қоңырау хабарландыруларын пайдалануға болады. Осы хабарландырулар сізге автоматты түрде тапсырыс күйі өзгергеннен кейін жіберіледі.

REST API бойынша анықтама

Электронды саудаға арналған негізгі мүмкіндіктерді тексеріп көру мақсатында Postman үшін API-сұратымдарының топтамасын жүктеп алуыңызға болады.

Postman топтамасын жүктеу

Тапсырысты тіркеу

Тапсырысты тіркеу үшін register.do сұрауы пайдаланылады.

Сұрау параметрлері

Міндетті Атау Түрі Сипаттама
Сипаттаманы көру

userName String Сатушының API есептік жазбасының логині. Аутентификация үшін тіркелу кезінде пайдаланушы аты мен құпиясөз орнына токен пайдаланылса (token параметрі), құпиясөзді жіберудің қажеті жоқ.
Сипаттаманы көру

password String Сатушының API есептік жазбасының құпиясөзі. Аутентификация үшін тіркелу кезінде пайдаланушы аты мен құпиясөз орнына токен пайдаланылса (token параметрі), құпиясөзді жіберудің қажеті жоқ.
Сипаттаманы көру

token String Төлем шлюзіне сұрауларды жіберген кезде сатушы аутентификациясы үшін пайдаланылатын мән. Осы параметрді көрсетсеңіз, userName және password көрсетілмеуі керек.
Сипаттаманы көру

orderNumber Alphanumeric Мерчант жүйесіндегі тапсырыс нөмірі (ID); әр мерчант үшін бірегей болуы керек.
Иә

amount Integer Ең төменгі валюта бірліктерінде көрсетілген төлем сомасы (мысалы, тиынмен).
Жоқ

currency Integer ISO 4217 төлем валютасының коды. Көрсетілмеген жағдайда, әдепкі мән пайдаланылады.
Иә

returnUrl String Төлем сәтті орындалған жағдайда, пайдаланушы бағытталатын мекенжай. Мекенжайды пайдаланылатын протоколымен бірге толық көрсету қажет (мысалы, test.ruорнына https://test.ru ). Кері жағдайда, пайдаланушы мына мекенжайға бағытталады: «https://https://3dsec.berekebank.kz/payment/».
Жоқ

failUrl String Төлем орындалмаған жағдайда, пайдаланушы бағытталатын мекенжай. Мекенжайды пайдаланылатын протоколымен бірге толық көрсету қажет (мысалы, test.ruорнына https://test.ru ). Кері жағдайда, пайдаланушы мына мекенжайға бағытталады: «https://https://3dsec.berekebank.kz/payment/».
Жоқ

dynamicCallbackUrl String Параметр callback-хабарландыруларын динамикалық түрде жіберу функциясын пайдалануға мүмкіндік береді. Осында мерчант үшін белсендірілген барлық «төлемді» callback-хабарландырулары жіберілетін мекенжайды көрсетуге болады. «Төлемді» – мына операциялар туралы callback-хабарландыруларды білдіреді: қаражатты сәтті ұстап тұру (холд), төлемді таймаут үшін өткізбеу, cardpresent төлемін қабылдамау, сәтті іске асырылған есептен шығару, қайтару, бас тарту. Осында «төлемді» болып табылмайтын мерчант үшін белсендірілген callback-хабарландырулары (байламды қосу/ажырату, байламды жасау) callback-хабарландыруларының статикалық мекенжайына жіберіледі. Параметрді пайдалану қажеттілігі төлем шлюзі тарапындағы сатушы конфигурацияларына байланысты болады.
Жоқ

description String Кез келген пішімдегі тапсырыс сипаттамасы.
Осы өрісті процессинг жүйесіне жіберу функциясын қосу үшін техникалық қолдау көрсету қызметіне хабарласыңыз.
Жоқ

language Alphabetic ISO 639-1 бойынша тіл кілті. Көрсетілмесе, әдепкі бойынша дүкен параметрлерінде таңдалған тіл пайдаланылады.
Жоқ

clientId Alphanumeric Мерчант жүйесіндегі клиенттің нөмірі (ID) — 255 таңбаға дейін. Байламдардың функцияларын орындау үшін қолданылады. Мерчантқа байламдарды жасауға рұқсат етілсе, жауап ретінде қайтарылуы мүмкін.
Төлемдер байлам арқылы өңделген кезде осы параметрді міндетті түрде таңдау қажет. Кері жағдайда, төлемді жасау мүмкін болмайды.
Жоқ

merchantLogin String Тапсырысты еншілес мерчанттың атынан тіркеу үшін оның логинін осы параметрде көрсетіңіз.
Жоқ

jsonParams String Мерчанттың қосымша параметрлерін көрсету бөлімі. Кейін сақтауға арналған қосымша ақпарат өрістері.
{name1:value1,…,nameN:valueN}
Осы өрістер кейін банк реестрінде көрсету үшін банк процессингіне жіберілуі мүмкін.
Осы функцияны қосу үшін банкіңізге хабарласыңыз.
Мерчант үшін сатып алушылар туралы хабарландырулар орнатылған болса, осы бөлімде сатушының электрондық пошта мекенжайы бар email параметрі көрсетілуі керек.
Әдепкі бойынша банк процессингіне мына параметрлер жіберіледі:
  • orderNumber - мерчант жүйесіндегі тапсырыс нөмірі;
  • description - тапсырыс сипаттамасы (99 таңбаға дейін пайдаланылып, келесі таңбаларды қолдануға рұқсат берілмейді: %, +, күймешені қайтару \r және жолды түсіру \n).

Егер merchantOrderId көрсетілсе, оның мәні банк процессингіне тапсырыс нөмірі ретінде жіберіледі (orderNumber параметрінің орнына).
Жоқ

sessionTimeoutSecs Integer Тапсырыстың секундпен берілген мерзімі. Параметр көрсетілмесе, мерчант параметрлерде көрсеткен мән немесе әдепкі уақыт (1200 секунд = 20 минут) пайдаланылады. Сұрауда expirationDate параметрі бар болса, sessionTimeoutSecs параметрінің мәні ескерілмейді.
Жоқ

expirationDate String Тапсырыс мерзімінің аяқталу күні және уақыты. Формат: yyyy-MM-ddTHH:mm:ss.
Осы параметр сұрауда берілмеген жағдайда, тапсырыс мерзімінің аяқталу күнін анықтау үшін sessionTimeoutSecs параметрі пайдаланылады.
Жоқ

bindingId String Бұрын жасалған байламның идентификаторы. Оны тек мерчанттың байламдармен жұмыс істеуге рұқсаты бар болған жағдайда ғана пайдалануға болады.
Жоқ

features String Төменде рұқсат етілетін мәндер көрсетілген.
  • AUTO_PAYMENT - төлем карта иесінің түпнұсқалығын тексерусіз жүзеге асырылады (CVC және 3D-Secure кодтары талап етілмейді). Осындай төлемдерді жасау үшін мерчантта тиісті рұқсаттар болуы керек.
  • VERIFY- осы мәнді тапсырысты рәсімдеу сұрауында көрсеткен кезде, карта иесі верификациядан өтеді, (оған 3-D Secure үдерісінен өту қажет болады), дегенмен, қаражат алынбайды, себебі осы жағдайда amount параметрі 0 мәнінде болуы мүмкін. Верификация картаның өз иесінде екеніне көз жеткізуге және осыдан кейін төлемдер жасаған кезде бұл картадан аутентификация деректерін (CVC, 3D-Secure) тексермей, қаражатты есептен шығаруға мүмкіндік береді. Сұрауда төлем сомасы көрсетілсе де, VERIFY мәні берілген кезде бұл сома клиент шотынан алынбайды. Тіркелу сәтті аяқталған соң, тапсырыс бірден REVERSED (бас тартылды) күйіне өтеді.
  • FORCE_TDS - 3-D Secure қорғанысын пайдалану арқылы төлемді мәжбүрлі түрде орындау. Карта 3-D Secure қорғанысына қолдау көрсетпесе, транзакция өтпейді.
  • FORCE_SSL - SSL арқылы (3-D Secure қорғанысы жоқ) төлемді мәжбүрлі түрде орындау.
  • FORCE_FULL_TDS - 3-D Secure арқылы аутентификацияны орындағаннан кейін, PaRes күйі тек Y болуы керек, бұл пайдаланушының сәтті аутентификациясын қамтамасыз етеді. Кері жағдайда, транзакция өтпейді.
Жоқ

phone Integer Сатып алушының телефон нөмірі. Ел кодын әрқашан көрсету керек, осында + белгісін көрсетуге не көрсетпеуге болады. Осылайша, келесі нұсқалар қолжетімді болады:
  • +79998887766;
  • 79998887766. Цифрлардың рұқсат етілген саны: 7-15 аралығында.
Жоқ

email String Клиенттің электрондық пошта мекенжайы.
Сипаттаманы көру

billingPayerData Object Клиенттің AVS/AVV қызметтері аясында мекенжай тексерісінен өту үшін қажетті тіркеу деректері (мекенжай, пошта индексі) бар блок. Төлем шлюзінің тарапынан сатушы үшін функция қосулы болған жағдайда міндетті болып табылады.

Төменде billingPayerData блогының параметрлері келтірілген (клиентті тіркеу мекенжайы туралы деректер).

Міндетті Атау Түрі Сипаттама
Жоқ

billingCity String Эмитент банктің нақты картасы бойынша тіркелген қала.
Жоқ

billingCountry String Эмитент банктің нақты картасы бойынша тіркелген ел (ISO 3166-1, сандық).
Жоқ

billingAddressLine1 String Эмитент банктің нақты картасы бойынша тіркелген мекенжай. 1-жол. AVS-тексерісі үшін берілуі міндетті.
Жоқ

billingAddressLine2 String Эмитент банктің нақты картасы бойынша тіркелген мекенжай. 2-жол.
Жоқ

billingAddressLine3 String Эмитент банктің нақты картасы бойынша тіркелген мекенжай. 3-жол.
Жоқ

billingPostalCode String Эмитент банктің нақты картасы бойынша тіркелген пошта индексі. AVS-тексерісі үшін берілуі міндетті.
Жоқ

billingState String Эмитент банктің нақты картасы бойынша тіркелген штат.

Жауап параметрлері

Міндетті Атау Түрі Сипаттама
Жоқ

formUrl String Сатып алушы бағытталатын төлем пішінінің URL-мекенжайы. Тапсырысты тіркеу errorCode кодында көрсетілген қатеге байланысты сәтсіз аяқталса, URL қайтарылмайды.
Жоқ

errorCode Integer Қате коды. Қате орын алмаған кезде, болмауы мүмкін.
Жоқ

orderId String Төлем шлюзіндегі тапсырыс нөмірі. Төлем шлюзі ауқымында бірегей болып табылады.
Жоқ

errorMessage String Қате сипаттамасы. Сипаттама тілі сұраудың language параметрінде таңдалады.

Қателер коды

Қате коды Хабар
0 Сұрауды өңдеу жүйелік қателерсіз аяқталды.
1 Көрсетілген нөмірі бар тапсырыс өңделіп қойды.
1 Тапсырыс нөмірі дұрыс емес
3 Белгісіз валюта.
4 Тапсырыс нөмірі бос болмауы керек
4 Сатушы аты бос болмауы керек
4 Сома көрсетілмеген
4 Қайтару URL-мекенжайы бос болмауы керек
4 Құпиясөз бос болмауы керек.
5 Кіру рұқсаты жоқ.
5 Пайдаланушы құпиясөзді ауыстыруы керек.
5 [jsonParams] дұрыс емес
7 Жүйелік қате.
13 Мерчанттың тексеру төлемдерін орындау артықшылықтары жоқ
14 Features дұрыс көрсетілмеген

Мысалдар

Сұрау мысалы

curl --request POST \
  --url https://3dsec.berekebank.kz/payment/rest/register.do \
  --header 'content-type: application/x-www-form-urlencoded' \
  --data amount=2000 \
  --data userName=test_user \
  --data password=test_user_password \
  --data returnUrl=finish.html \
  --data failUrl=errors_en.html \
  --data email=test@test.ru \
  --data clientId=259753456 \
  --data language=en

Жауап мысалы

{
  "orderId": "01491d0b-c848-7dd6-a20d-e96900a7d8c0",
  "formUrl": "https://3dsec.berekebank.kz/payment/merchants/rbs/payment_en.html?mdOrder=01491d0b-c848-7dd6-a20d-e96900a7d8c0"
}

Алдын ала авторизациядан өтетін тапсырысты тіркеу

Алдын ала авторизациядан өтетін тапсырысты тіркеу үшін registerPreAuth.do әдісі пайдаланылады.

Сұрау параметрлері

Міндетті Атау Түрі Сипаттама
Сипаттаманы көру

userName String Сатушының API есептік жазбасының логині. Аутентификация үшін тіркелу кезінде пайдаланушы аты мен құпиясөз орнына токен пайдаланылса (token параметрі), құпиясөзді жіберудің қажеті жоқ.
Сипаттаманы көру

password String Сатушының API есептік жазбасының құпиясөзі. Аутентификация үшін тіркелу кезінде пайдаланушы аты мен құпиясөз орнына токен пайдаланылса (token параметрі), құпиясөзді жіберудің қажеті жоқ.
Сипаттаманы көру

token String Төлем шлюзіне сұрауларды жіберген кезде сатушы аутентификациясы үшін пайдаланылатын мән. Осы параметрді көрсетсеңіз, userName және password көрсетілмеуі керек.
Иә

orderNumber Alphanumeric Мерчант жүйесіндегі тапсырыс нөмірі (ID); әр мерчант үшін бірегей болуы керек.
Иә

amount Integer Ең төменгі валюта бірліктерінде көрсетілген төлем сомасы (мысалы, тиынмен).
Жоқ

currency Integer ISO 4217 төлем валютасының коды. Көрсетілмеген жағдайда, әдепкі мән пайдаланылады.
Иә

returnUrl String Төлем сәтті орындалған жағдайда, пайдаланушы бағытталатын мекенжай. Мекенжайды пайдаланылатын протоколымен бірге толық көрсету қажет (мысалы, test.ruорнына https://test.ru ). Кері жағдайда, пайдаланушы мына мекенжайға бағытталады: «https://https://3dsec.berekebank.kz/payment/».
Жоқ

failUrl String Төлем орындалмаған жағдайда, пайдаланушы бағытталатын мекенжай. Мекенжайды пайдаланылатын протоколымен бірге толық көрсету қажет (мысалы, test.ruорнына https://test.ru ). Кері жағдайда, пайдаланушы мына мекенжайға бағытталады: «https://https://3dsec.berekebank.kz/payment/».
Жоқ

dynamicCallbackUrl String Параметр callback-хабарландыруларын динамикалық түрде жіберу функциясын пайдалануға мүмкіндік береді. Осында мерчант үшін белсендірілген барлық «төлемді» callback-хабарландырулары жіберілетін мекенжайды көрсетуге болады. «Төлемді» – мына операциялар туралы callback-хабарландыруларды білдіреді: қаражатты сәтті ұстап тұру (холд), төлемді таймаут үшін өткізбеу, cardpresent төлемін қабылдамау, сәтті іске асырылған есептен шығару, қайтару, бас тарту. Осында «төлемді» болып табылмайтын мерчант үшін белсендірілген callback-хабарландырулары (байламды қосу/ажырату, байламды жасау) callback-хабарландыруларының статикалық мекенжайына жіберіледі. Параметрді пайдалану қажеттілігі төлем шлюзі тарапындағы сатушы конфигурацияларына байланысты болады.
Жоқ

description String Кез келген пішімдегі тапсырыс сипаттамасы.
Осы өрісті процессинг жүйесіне жіберу функциясын қосу үшін техникалық қолдау көрсету қызметіне хабарласыңыз.
Жоқ

language Alphabetic ISO 639-1 бойынша тіл кілті. Көрсетілмесе, әдепкі бойынша дүкен параметрлерінде таңдалған тіл пайдаланылады.
Жоқ

clientId Alphanumeric Мерчант жүйесіндегі клиенттің нөмірі (ID) — 255 таңбаға дейін. Байламдардың функцияларын орындау үшін қолданылады. Мерчантқа байламдарды жасауға рұқсат етілсе, жауап ретінде қайтарылуы мүмкін.
Төлемдер байлам арқылы өңделген кезде осы параметрді міндетті түрде таңдау қажет. Кері жағдайда, төлемді жасау мүмкін болмайды.
Жоқ

merchantLogin String Тапсырысты еншілес мерчанттың атынан тіркеу үшін оның логинін осы параметрде көрсетіңіз.
Жоқ

jsonParams String Мерчанттың қосымша параметрлерін көрсету бөлімі. Кейін сақтауға арналған қосымша ақпарат өрістері.
{name1:value1,…,nameN:valueN}
Осы өрістер кейін банк реестрінде көрсету үшін банк процессингіне жіберілуі мүмкін.
Осы функцияны қосу үшін банкіңізге хабарласыңыз.
Мерчант үшін сатып алушылар туралы хабарландырулар орнатылған болса, осы бөлімде сатушының электрондық пошта мекенжайы бар email параметрі көрсетілуі керек.
Әдепкі бойынша банк процессингіне мына параметрлер жіберіледі:
  • orderNumber - мерчант жүйесіндегі тапсырыс нөмірі;
  • description - тапсырыс сипаттамасы (99 таңбаға дейін пайдаланылып, келесі таңбаларды қолдануға рұқсат берілмейді: %, +, күймешені қайтару \r және жолды түсіру \n).

Егер merchantOrderId көрсетілсе, оның мәні банк процессингіне тапсырыс нөмірі ретінде жіберіледі (orderNumber параметрінің орнына).
Жоқ

sessionTimeoutSecs Integer Тапсырыстың секундпен берілген мерзімі. Параметр көрсетілмесе, мерчант параметрлерде көрсеткен мән немесе әдепкі уақыт (1200 секунд = 20 минут) пайдаланылады. Сұрауда expirationDate параметрі бар болса, sessionTimeoutSecs параметрінің мәні ескерілмейді.
Жоқ

expirationDate String Тапсырыс мерзімінің аяқталу күні және уақыты. Формат: yyyy-MM-ddTHH:mm:ss.
Осы параметр сұрауда берілмеген жағдайда, тапсырыс мерзімінің аяқталу күнін анықтау үшін sessionTimeoutSecs параметрі пайдаланылады.
Жоқ

bindingId String Бұрын жасалған байламның идентификаторы. Оны тек мерчанттың байламдармен жұмыс істеуге рұқсаты бар болған жағдайда ғана пайдалануға болады.
Жоқ

features String Төменде рұқсат етілетін мәндер көрсетілген.
  • AUTO_PAYMENT - төлем карта иесінің түпнұсқалығын тексерусіз жүзеге асырылады (CVC және 3D-Secure кодтары талап етілмейді). Осындай төлемдерді жасау үшін мерчантта тиісті рұқсаттар болуы керек.
  • VERIFY- осы мәнді тапсырысты рәсімдеу сұрауында көрсеткен кезде, карта иесі верификациядан өтеді, (оған 3-D Secure үдерісінен өту қажет болады), дегенмен, қаражат алынбайды, себебі осы жағдайда amount параметрі 0 мәнінде болуы мүмкін. Верификация картаның өз иесінде екеніне көз жеткізуге және осыдан кейін төлемдер жасаған кезде бұл картадан аутентификация деректерін (CVC, 3D-Secure) тексермей, қаражатты есептен шығаруға мүмкіндік береді. Сұрауда төлем сомасы көрсетілсе де, VERIFY мәні берілген кезде бұл сома клиент шотынан алынбайды. Тіркелу сәтті аяқталған соң, тапсырыс бірден REVERSED (бас тартылды) күйіне өтеді.
  • FORCE_TDS - 3-D Secure қорғанысын пайдалану арқылы төлемді мәжбүрлі түрде орындау. Карта 3-D Secure қорғанысына қолдау көрсетпесе, транзакция өтпейді.
  • FORCE_SSL - SSL арқылы (3-D Secure қорғанысы жоқ) төлемді мәжбүрлі түрде орындау.
  • FORCE_FULL_TDS - 3-D Secure арқылы аутентификацияны орындағаннан кейін, PaRes күйі тек Y болуы керек, бұл пайдаланушының сәтті аутентификациясын қамтамасыз етеді. Кері жағдайда, транзакция өтпейді.
Жоқ

autocompletionDate String The date and time when the two-stage payment was completed automatically in the following format: 2017-12-29T13:02:51. The used timezone is UTC+3. To enable sending this field to the processing system, contact your technical support service.
Жоқ

email String Клиенттің электрондық пошта мекенжайы.
Жоқ

phone Integer Сатып алушының телефон нөмірі. Ел кодын әрқашан көрсету керек, осында + белгісін көрсетуге не көрсетпеуге болады. Осылайша, келесі нұсқалар қолжетімді болады:
  • +79998887766;
  • 79998887766. Цифрлардың рұқсат етілген саны: 7-15 аралығында.
Сипаттаманы көру

billingPayerData Object Клиенттің AVS/AVV қызметтері аясында мекенжай тексерісінен өту үшін қажетті тіркеу деректері (мекенжай, пошта индексі) бар блок. Төлем шлюзінің тарапынан сатушы үшін функция қосулы болған жағдайда міндетті болып табылады.

Төменде billingPayerData блогының параметрлері келтірілген (клиентті тіркеу мекенжайы туралы деректер).

Міндетті Атау Түрі Сипаттама
Жоқ

billingCity String Эмитент банктің нақты картасы бойынша тіркелген қала.
Жоқ

billingCountry String Эмитент банктің нақты картасы бойынша тіркелген ел (ISO 3166-1, сандық).
Жоқ

billingAddressLine1 String Эмитент банктің нақты картасы бойынша тіркелген мекенжай. 1-жол. AVS-тексерісі үшін берілуі міндетті.
Жоқ

billingAddressLine2 String Эмитент банктің нақты картасы бойынша тіркелген мекенжай. 2-жол.
Жоқ

billingAddressLine3 String Эмитент банктің нақты картасы бойынша тіркелген мекенжай. 3-жол.
Жоқ

billingPostalCode String Эмитент банктің нақты картасы бойынша тіркелген пошта индексі. AVS-тексерісі үшін берілуі міндетті.
Жоқ

billingState String Эмитент банктің нақты картасы бойынша тіркелген штат.

Жауап параметрлері

Міндетті Атау Түрі Сипаттама
Жоқ

orderId String Төлем шлюзіндегі тапсырыс нөмірі. Төлем шлюзі ауқымында бірегей болып табылады.
Жоқ

formUrl String Сатып алушы бағытталатын төлем пішінінің URL-мекенжайы. Тапсырысты тіркеу errorCode кодында көрсетілген қатеге байланысты сәтсіз аяқталса, URL қайтарылмайды.
Жоқ

errorCode Integer Қате коды. Қате орын алмаған кезде, болмауы мүмкін.
Жоқ

errorMessage String Қате сипаттамасы. Сипаттама тілі сұраудың language параметрінде таңдалады.

Қателер коды

Қате коды Хабар
0 Сұрауды өңдеу жүйелік қателерсіз аяқталды.
1 Көрсетілген нөмірі бар тапсырыс өңделіп қойды.
1 Тапсырыс нөмірі дұрыс емес
3 Белгісіз валюта.
4 Тапсырыс нөмірі бос болмауы керек
4 Сатушы аты бос болмауы керек
4 Сома көрсетілмеген
4 Қайтару URL-мекенжайы бос болмауы керек
4 Құпиясөз бос болмауы керек.
5 Дұрыс емес сома.
5 'Тіл’ параметрі дұрыс емес.
5 Сатушы логіне дұрыс емес
5 Кіру рұқсаты жоқ.
5 Пайдаланушы құпиясөзді ауыстыруы керек.
5 [jsonParams] дұрыс емес
7 Жүйелік қате.
13 Мерчанттың тексеру төлемдерін орындау артықшылықтары жоқ
14 Features дұрыс көрсетілмеген

Мысалдар

Сұрау мысалы

curl --request POST \
  --url https://3dsec.berekebank.kz/payment/rest/registerPreAuth.do \
  --header 'content-type: application/x-www-form-urlencoded' \
  --data amount=2000 \
  --data userName=test_user \
  --data password=test_user_password \
  --data returnUrl=finish.html \
  --data orderNumber=1255555555555 \
  --data clientId=259753456 \
  --data language=en

Жауап мысалы

{
  "orderId": "01492437-d2fb-77fa-8db7-9e2900a7d8c0",
  "formUrl": "https://3dsec.berekebank.kz/payment/merchants/rbs/payment_en.html?mdOrder=01492437-d2fb-77fa-8db7-9e2900a7d8c0"
}

Тапсырысты аяқтау

Алдын ала авторизацияланған тапсырысты аяқтау үшін deposit.do сұрауы пайдаланылады.

Сұрау параметрлері

Міндетті Атау Түрі Сипаттама
Иә

userName String Сатушының API есептік жазбасының логині.
Иә

password String Сатушының API есептік жазбасының құпиясөзі.
Иә

orderId String Төлем шлюзіндегі тапсырыс нөмірі. Төлем шлюзі ауқымында бірегей болып табылады.
Иә

amount Integer Ең төменгі валюта бірліктерінде көрсетілген төлем сомасы (мысалы, тиынмен).

Жауап параметрлері

Міндетті Атау Түрі Сипаттама
Жоқ

errorCode Integer Қате коды. Қате орын алмаған кезде, болмауы мүмкін.
Жоқ

errorMessage String Қате сипаттамасы. Сипаттама тілі сұраудың language параметрінде таңдалады.

Қателер коды

Қате коды Хабар
5 Кіру рұқсаты жоқ.
5 Пайдаланушы құпиясөзді ауыстыруы керек.
5 Дұрыс емес сома.
5 Депозит сомасы нөлге тең немесе кемінде бір рубль болуы керек.
6 Тіркелмеген orderId.
7 Төлем дұрыс күйінде болуы керек.
7 Жүйелік қате.

Мысалдар

Сұрау мысалы

curl --request POST \
  --url https://3dsec.berekebank.kz/payment/rest/deposit.do \
  --header 'content-type: application/x-www-form-urlencoded' \
  --data userName=test_user \
  --data password=test_user_password \
  --data amount=2000 \
  --data orderId=01492437-d2fb-77fa-8db7-9e2900a7d8c0 \
  --data language=en

Жауап мысалы

{
  "errorCode": 0,
  "errorMessage":"Success"
}

Қаражатты қайтару

Қаражатты қайтару үшін refund.do сұрауы пайдаланылады.

Тұрақты төлемдерді бастайтын тапсырыстар бойынша қаражатты қайтару мүмкін емес, себебі осы жағдайда қаражат есептен шығарылмайды.

Бұл сұрауда көрсетілген тапсырыс бойынша қаражат төлем жасаушыға қайтарылады. Тапсырыс бойынша қаражат есептен шығарылмаған жағдайда, сұрау қатемен қайтарылады. Жүйе қаражатты бірнеше рет қайтаруға рұқсат береді, дегенмен, жалпы алғанда, сома бастапқы есептен шығарылған сомадан аспауы керек.

Сұрау параметрлері

Міндетті Атау Түрі Сипаттама
Иә

orderId String Төлем шлюзіндегі тапсырыс нөмірі. Төлем шлюзі ауқымында бірегей болып табылады.
Иә

amount Integer Ең төменгі валюта бірліктерінде көрсетілген төлем сомасы (мысалы, тиынмен).
Жоқ

language Alphabetic ISO 639-1 бойынша тіл кілті. Көрсетілмесе, әдепкі бойынша дүкен параметрлерінде таңдалған тіл пайдаланылады.

Жауап параметрлері

Міндетті Атау Түрі Сипаттама
Жоқ

errorCode Integer Қате коды. Қате орын алмаған кезде, болмауы мүмкін.
Жоқ

errorMessage String Қате сипаттамасы. Сипаттама тілі сұраудың language параметрінде таңдалады.

Қателер коды

Қате коды Хабар
0 Сұрауды өңдеу жүйелік қателерсіз аяқталды.
5 Кіру рұқсаты жоқ.
5 Пайдаланушы құпиясөзді ауыстыруы керек.
5 [orderId] көрсетілмеген
5 Дұрыс емес сома.
6 Тіркелмеген orderId.
7 Төлем дұрыс күйінде болуы керек.
7 Қайтару сомасы төлем сомасынан асып кетті.
7 Жүйелік қате.

Мысалдар

Сұрау мысалы

curl --request POST \
  --url https://3dsec.berekebank.kz/payment/rest/refund.do \
  --header 'content-type: application/x-www-form-urlencoded' \
  --data userName=test_user \
  --data password=test_user_password \
  --data orderId=01491d0b-c848-7dd6-a20d-e96900a7d8c0 \
  --data amount=2000 \
  --data language=en

Жауап мысалы

{
  "errorCode": 0,
  "errorMessage":"Success"
}

Тапсырыстың күйі

Сұрау параметрлері

Міндетті Атау Түрі Сипаттама
Жоқ

userName String Сатушының API есептік жазбасының логині. Аутентификация үшін тіркелу кезінде пайдаланушы аты мен құпиясөз орнына токен пайдаланылса (token параметрі), құпиясөзді жіберудің қажеті жоқ.
Жоқ

password String Сатушының API есептік жазбасының құпиясөзі. Аутентификация үшін тіркелу кезінде пайдаланушы аты мен құпиясөз орнына токен пайдаланылса (token параметрі), құпиясөзді жіберудің қажеті жоқ.
Жоқ

token String Төлем шлюзіне сұрауларды жіберген кезде сатушы аутентификациясы үшін пайдаланылатын мән. Осы параметрді көрсетсеңіз, userName және password көрсетілмеуі керек.
Иә

orderId String Төлем шлюзіндегі тапсырыс нөмірі. Төлем шлюзі ауқымында бірегей болып табылады.
Иә

orderNumber Alphanumeric Мерчант жүйесіндегі тапсырыс нөмірі (ID); әр мерчант үшін бірегей болуы керек.
Жоқ

language Alphabetic ISO 639-1 бойынша тіл кілті. Көрсетілмесе, әдепкі бойынша дүкен параметрлерінде таңдалған тіл пайдаланылады.

Жауап параметрлері

Жауап параметрлерінің бірнеше жиынтығы бар. Жауаппен келген параметрдің түрі төлем шлюзіндегі мерчант параметрлерінде көрсетілген getOrderStatusExtended нұсқасына байланысты болады.

Нұсқа Міндетті Атау Түрі Сипаттама
Барлық нұсқалар. Сипаттаманы көру

orderNumber Alphanumeric Мерчант жүйесіндегі тапсырыс нөмірі (ID); төлем шлюзінде тіркелген әр мерчант үшін бірегей болуы керек — 30 таңбаға дейін. Тапсырыс нөмірі төлем шлюзінің тарапында жасалса, осы параметрді көрсету қажет емес.
Барлық нұсқалар. Жоқ

orderStatus Integer Осы параметрдің мәні төлем шлюзіндегі тапсырыстың күйін көрсетеді. Тапсырыс табылмаған кезде болмайды. Төменде қолжетімді параметрлер тізімі берілген:
  • 0 - тапсырыс тіркелген, бірақ төленбеген;
  • 1 - алдын ала авторизацияланған сома ұсталған (екі кезеңді төлемдер үшін)
  • 2 - тапсырыс сомасының толық авторизациясы орындалды;
  • 3 - авторизациядан бас тартылды;
  • 4 - транзакция бойынша қайтару операциясы орындалды;
  • 5 - банк-эмитентінің ACS сервері арқылы авторизация іске қосылды;
  • 6 - авторизация орындалмады.
Барлық нұсқалар. Иә

actionCode Integer Банк процессингінен алынған жауап коды.
Барлық нұсқалар. Иә

actionCodeDescription String Банк процессингімен қайтарылатын actionCode сипаттамасы.
Барлық нұсқалар. Жоқ

errorCode Integer Қате коды. Қате орын алмаған кезде, болмауы мүмкін.
Барлық нұсқалар. Жоқ

errorMessage String Қате сипаттамасы. Сипаттама тілі сұраудың language параметрінде таңдалады.
Барлық нұсқалар. Иә

amount Integer Ең төменгі валюта бірліктерінде көрсетілген төлем сомасы (мысалы, тиынмен).
Барлық нұсқалар. Жоқ

currency Integer ISO 4217 төлем валютасының коды. Көрсетілмеген жағдайда, әдепкі мән пайдаланылады.
Барлық нұсқалар. Иә

date String Тапсырысты тіркеу күні.
Барлық нұсқалар. Жоқ

orderDescription String Тіркеу кезінде төлем шлюзіне жіберілетін тапсырыстың сипаттамасы.
Барлық нұсқалар. Иә

ip String Төлеушінің IP-мекенжайы. IPv6 барлық сұрауларда қолданылады (39 таңбаға дейін).
09+ Иә

paymentWay String Төлем жасау әдістері (карта деректерін енгізу арқылы төлеу, байлам арқылы төлеу және т.б.).
19+ Жоқ

avsCode Alphabetic AVS верификациясының жауап коды (карта иесінің мекенжайын және пошта индексін тексеру). Ықтимал мәндері:
  • A – пошта индексі мен мекенжай сәйкес келеді.
  • B – мекенжай сәйкес келеді, ал пошта индексі сәйкес келмейді.
  • C – пошта индексі сәйкес келеді, ал мекенжай сәйкес келмейді.
  • D – пошта индексі мен мекенжай сәйкес келмейді.
  • E – деректерді тексеру сұратылды, бірақ нәтиже сәтсіз болды.
  • F – AVS/AVV тексеру сұратымының пішімі дұрыс емес.

attributes бөлімінде төлем шлюзіндегі тапсырыс нөмірі туралы ақпарат бар. name параметрі әрқашан mdOrder болады, ал value – төлем жүйесіндегі тапсырыс нөмірі болады.

Нұсқа Атау Түрі Міндетті Сипаттама
Барлық нұсқалар. Жоқ

name Numeric Қосымша параметрдің атауы.
Барлық нұсқалар. Жоқ

value Numeric Қосымша параметрдің мәні – 1024 таңбаға дейін.

Тапсырыста мерчанттың қосымша параметрлері бар болса, жауапта merchantOrderParams бөлімі таңдалады. Әр қосымша параметр merchantOrderParams жеке элементінде таңдалады.

Нұсқа Атау Түрі Міндетті Сипаттама
Барлық нұсқалар. Жоқ

name Numeric Қосымша параметрдің атауы.
Барлық нұсқалар. Жоқ

value Numeric Қосымша параметрдің мәні – 1024 таңбаға дейін.

cardAuthInfo элементінде secureAuthInfo элемент тізімі мен келесі параметрлерден тұратын құрылым болады.

Нұсқа Атау Түрі Міндетті Сипаттама
Барлық нұсқалар. Жоқ

maskedPan String Төлемді жасау үшін пайдаланылатын жасырылған карта нөмірі. Тапсырыс бойынша төлем жасалған соң ғана көрсетіледі.
Барлық нұсқалар. Жоқ

expiration Integer Келесі пішімдегі картаның жарамдылық мерзімі: YYYYMM. Тапсырыс бойынша төлем жасалған соң ғана көрсетіледі.
Барлық нұсқалар. Жоқ

cardholderName Alphabetic Карта иесінің латын әліпбиімен көрсетілген аты. Осы параметр тек тапсырыс төленгеннен кейін беріледі.
Барлық нұсқалар. Жоқ

approvalCode String Халықаралық төлем жүйесінің (ХТЖ) авторизация коды. Бұл өрістің ұзындығы бекітілген (алты таңба) және сандар мен латын әріптерінен тұруы мүмкін.
06 және одан жоғары. Жоқ

refund Boolean Банк сатып алушыға қаражатты мәжбүрлі түрде қайтарды ма. Ықтимал мәндері:
  • true - қаражат қайтарылды;
  • false - қаражат қайтарылмады.
08 және одан жоғары. Иә

paymentSystem String Төлем жүйесінің атауы. Келесі мәндер көрсетілуі мүмкін:
  • VISA;
  • MASTERCARD;
  • AMEX;
  • JCB;
  • CUP;
  • MIR.
08 және одан жоғары. Иә

product String Корпоративті карталар туралы қосымша мәліметтер. Осы мәліметтерді техникалық қолдау көрсету қызметі толтырады. Осындай мәліметтер болмаса, бос мән қайтарылады.

secureAuthInfo элементі cavv және xid параметрлерінің тізімі болып табылатын eci және threeDSInfo элементтерінен тұрады.

Нұсқа Атау Түрі Міндетті Сипаттама
Барлық нұсқалар. Жоқ

eci Integer Электрондық коммерциялық көрсеткіш. Тапсырыс бойынша төлем жасалғаннан кейін және тиісті рұқсаттар болған жағдайда ғана көрсетіледі. Төменде ECI-кодтарының түсіндірмесі берілген.
  • ECI=1 немесе ECI=6 – мерчант 3-D Secure протоколына қолдау көрсетеді, төлем картасы 3-D Secure протоколына қолдау көрсетпейді, төлем CVV2/CVC негізінде өңделеді.
  • ECI=2 немесе ECI=5 – мерчант және төлем картасы 3-D Secure протоколына қолдау көрсетпейді;
  • ECI=7 - мерчант 3-D Secure протоколына қолдау көрсетпейді, төлем CVV2/CVC негізінде өңделеді.
Барлық нұсқалар. Жоқ

cavv String Карта иесінің аутентификациясын тексеру мәні. Тапсырыс бойынша төлем жасалғаннан кейін және тиісті рұқсаттар болған жағдайда ғана көрсетіледі.
Барлық нұсқалар. Жоқ

xid String Транзакцияның электрондық коммерциялық идентификаторы. Тапсырыс бойынша төлем жасалғаннан кейін және тиісті рұқсаттар болған жағдайда ғана көрсетіледі.

bindingInfo элементі келесі параметрлерден тұрады.

Нұсқа Атау Түрі Міндетті Сипаттама
Барлық нұсқалар. Жоқ

clientId Alphanumeric Мерчант жүйесіндегі клиенттің нөмірі (ID) — 255 таңбаға дейін. Байламдардың функцияларын орындау үшін қолданылады. Мерчантқа байламдарды жасауға рұқсат етілсе, жауап ретінде қайтарылуы мүмкін.
Төлемдер байлам арқылы өңделген кезде осы параметрді міндетті түрде таңдау қажет. Кері жағдайда, төлемді жасау мүмкін болмайды.
Барлық нұсқалар. Жоқ

bindingId String Бұрын жасалған байламның идентификаторы. Оны тек мерчанттың байламдармен жұмыс істеуге рұқсаты бар болған жағдайда ғана пайдалануға болады.
02 және одан жоғары. Жоқ

authDateTime String 1 қаңтар, 1970 жылдың (GMT) 00:00 уақытынан өтіп кеткен, миллисекунд саны ретінде көрсетілген авторизацияның күні мен уақыты.
02 және одан жоғары. Жоқ

authRefNum String Төлемді тіркеу кезінде берілген төлем авторизациясының тіркеу нөмірі.
02 және одан жоғары. Жоқ

terminalId String Терминал идентификаторы.

paymentAmountInfo элементі келесі параметрлерден тұрады.

Нұсқа Атау Түрі Міндетті Сипаттама
03 және одан жоғары. Жоқ

approvedAmount Integer Сатып алушының шотында бұғатталып қалған ең төменгі валюта бірліктеріндегі сома (мысалы, цент түрінде). Тек екі сатылы төлемдерде ғана пайдаланылады.
03 және одан жоғары. Жоқ

depositedAmount Integer Минималды валюта бірлігімен (мысалы, тиынмен) берілген есептен шығару сомасы.
03 және одан жоғары. Жоқ

refundedAmount Integer Минималды бірлікпен берілген қайтару сомасы.
03 және одан жоғары. Жоқ

paymentState String Тапсырыс күйі, параметр мына мәндерде болуы мүмкін:
  • CREATED - тапсырыс жасалған (бірақ төленбеген);
  • APPROVED - тапсырыс расталған (сатып алушы шотындағы қаражат бұғатталған);
  • DEPOSITED- тапсырыс аяқталды (қаражат сатып алушы шотынан түсті);
  • DECLINED - тапсырыс қабылданбады;
  • REVERSED - бас тарту операциясы;
  • REFUNDED - қаражатты қайтару операциясы.
11 және одан жоғары. Жоқ

feeAmount Integer Комиссия сомасы.

bankInfo элементі келесі параметрлерден тұрады.

Нұсқа Атау Түрі Міндетті Сипаттама
03 және одан жоғары. Жоқ

bankName String Эмитент банктің атауы.
03 және одан жоғары. Жоқ

bankCountryCode String Эмитент банктің ел коды.
03 және одан жоғары. Жоқ

bankCountryName String Эмитент банктің елі.

Қателер коды

Қате коды Хабар
0 Сұрауды өңдеу жүйелік қателерсіз аяқталды.
5 Кіру рұқсаты жоқ.
5 Пайдаланушы құпиясөзді ауыстыруы керек.
5 [orderId] көрсетілмеген
6 Тіркелмеген orderId.
7 Жүйелік қате.

Мысалдар

Сұрау мысалы

curl --request POST \
  --url https://3dsec.berekebank.kz/payment/rest/getOrderStatusExtended.do \
  --header 'content-type: application/x-www-form-urlencoded' \
  --data userName=test_user \
  --data password=test_user_password \
  --data orderId=01491d0b-c848-7dd6-a20d-e96900a7d8c0 \
  --data language=en

Жауап мысалы

{
  "errorCode": "0",
  "errorMessage": "Success",
  "orderNumber": "7005",
  "orderStatus": 2,
  "actionCode": 0,
  "actionCodeDescription": "",
  "amount": 2000,
  "currency": "978",
  "date": 1617972915659,
  "orderDescription": "",
  "merchantOrderParams": [],
  "transactionAttributes": [],
  "attributes": [
    {
      "name": "mdOrder",
      "value": "01491d0b-c848-7dd6-a20d-e96900a7d8c0"
    }
  ],
  "cardAuthInfo": {
    "maskedPan": "555555**5599",
    "expiration": "202412",
    "cardholderName": "TEST CARDHOLDER",
    "approvalCode": "123456",
    "pan": "555555**5599"
  },
  "bindingInfo": {
    "clientId": "259753456",
    "bindingId": "01491394-63a6-7d45-a88f-7bce00a7d8c0"
  },
  "authDateTime": 1617973059029,
  "terminalId": "123456",
  "authRefNum": "714105591198",
  "paymentAmountInfo": {
    "paymentState": "DEPOSITED",
    "approvedAmount": 2000,
    "depositedAmount": 2000,
    "refundedAmount": 0
  },
  "bankInfo": {
    "bankCountryCode": "UNKNOWN",
    "bankCountryName": "&ltUnknown&gt"
  }
}

Байламдар арқылы төлеу

Сұрау параметрлері

Міндетті Атау Түрі Сипаттама
Иә

userName String Сатушының API есептік жазбасының логині.
Иә

password String Сатушының API есептік жазбасының құпиясөзі.
Иә

mdOrder String Төлем шлюзіндегі тапсырыс нөмірі. Төлем шлюзі ауқымында бірегей болып табылады.
Иә

bindingId String Бұрын жасалған байламның идентификаторы. Оны тек мерчанттың байламдармен жұмыс істеуге рұқсаты бар болған жағдайда ғана пайдалануға болады.
Жоқ

language Alphabetic ISO 639-1 бойынша тіл кілті. Көрсетілмесе, әдепкі бойынша дүкен параметрлерінде таңдалған тіл пайдаланылады.
Иә

ip String Төлеушінің IP-мекенжайы. IPv6 барлық сұрауларда қолданылады (39 таңбаға дейін).
Жоқ

cvc Integer Мерчант үшін Төлемдерді CVC кодынсыз жасай алады рұқсаты таңдалмаған жағдайда, бұл параметр міндетті болып табылады.
Жоқ

email String Клиенттің электрондық пошта мекенжайы.
Жоқ

threeDSSDK String Ықтимал мәндері: true немесе false. Төлемнің 3DS SDK арқылы түсетінін көрсететін жалауша.

Жауап параметрлері

Міндетті Атау Түрі Сипаттама
Жоқ

redirect String Төлем сәтті орындалып, төлеу кезінде картадағы 3-D Secure протоколының қосылуы тексерілмесе, осы параметр қайтарылады. Төлем жасалғаннан кейін клиент қайта бағытталатын URL-мекенжайы.
Жоқ

info String Жауап сәтті болған жағдайда. Төлем жасау әрекетінің нәтижесі. Төменде ықтимал мәндері көрсетілген.
  • Төлеміңіз өңделді, қайта бағыттау орындалуда...
  • Операция өтпеді. Енгізілген деректерді, картадағы қаражаттың жеткілікті екенін тексеріп, операцияны қайталаңыз. Қайта бағыттау орындалуда...
  • Төлем жасау мүмкін емес. Қайта бағыттау орындалуда...
  • Операция өтпеді. Дүкенге хабарласыңыз. Қайта бағыттау орындалуда...
  • Операция өтпеді. Картаны шығарған банкке хабарласыңыз. Қайта бағыттау орындалуда...
  • Рұқсат етілмеген операция Карта иесінің аутентификациясы сәтсіз аяқталды. Қайта бағыттау орындалуда...
  • Банкпен байланыс жоқ. Кейінірек қайталаңыз. Қайта бағыттау орындалуда...
  • Деректерді енгізудің күту мерзімі аяқталды. Қайта бағыттау орындалуда...
  • Банктен жауап алынбады. Кейінірек қайталаңыз. Қайта бағыттау орындалуда...
Иә

errorCode Integer Қате коды. Қате орын алмаған кезде, болмауы мүмкін.
Жоқ

errorMessage String Қате сипаттамасы. Сипаттама тілі сұраудың language параметрінде таңдалады.
Жоқ

error String Сұрау жіберілген тілдегі қате туралы хабар (жауапта қате болған жағдайда).
Жоқ

acsUrl String 3D-Secure арқылы төлеген жағдайда сәтті жауап берілген кезде. ACS серверіне қайта бағыттайтын URL-мекенжайы.
Жоқ

paReq String 3D-Secure арқылы төлеген жағдайда сәтті жауап берілген кезде. Payment Authentication Request. Төлеуші аутентификациясының сұрауы.
Жоқ

termUrl String 3D-Secure арқылы төлеген жағдайда сәтті жауап берілген кезде. ACS серверіне қайта бағыттайтын URL-мекенжайы.

Қателер коды

Қате коды Хабар
0 Сұрауды өңдеу жүйелік қателерсіз аяқталды.
1 [cvc] көрсетілмеді.
2 Байлам табылмады.
2 Тапсырыс табылмады.
5 Кіру рұқсаты жоқ.
5 Пайдаланушы құпиясөзді ауыстыруы керек.
7 Жүйелік қате.

Мысалдар

Сұрау мысалы

curl --request POST \
  --url https://3dsec.berekebank.kz/payment/rest/paymentOrderBinding.do \
  --header 'content-type: application/x-www-form-urlencoded' \
  --data userName=test_user \
  --data password=test_user_password \
  --data mdOrder=01491d0b-c848-7dd6-a20d-e96900a7d8c0 \
  --data bindingId=01491394-63a6-7d45-a88f-7bce00a7d8c0 \
  --data clientId=259753456 \
  --data ip=1d0d:db8:6:1::77 \
  --data cvc=123 \
  --data language=en

SSL-төлемін сәтті іске асыру жауабының мысалы (3-D Secure протоколы жоқ)

{
  "redirect": "https://3dsec.berekebank.kz/payment/merchants/temp/finish.html?orderId=01491d0b-c848-7dd6-a20d-e96900a7d8c0&lang=en",
  "info": "Your order is proceeded, redirecting...",
  "errorCode": 0
}

3D-Secure арқылы төлемді сәтті іске асыру жауабының мысалы

{
  "info": "Your order is proceeded, redirecting...",
  "errorCode": 0,
  "acsUrl": "https://web.rbsuat.com/acs/auth/start.do",
  "paReq": "eJxVUu9vgjAQ/VcM37FQKqI5a9zUjEWI2TDZt6VCBxj5IRSj/vVrEab70OTe3fW967vC/JIdB2de1WmRzzRzaGgDnodFlObxTNsFa93R5hSCpOJ8+cnDpuIUPF7XLOaDNJpp2B79OJYz0e2ITXTCTaI7Y2bpeDwyrYkVhXuHaRS2iw9+otAJUakzxIB6KBmrMGG5oMDC04vrU4LHtmEA6iBkvHKXdEQsbBFAdwQ5yzitWR7ti8t31lEAatMQFk0uqiu1iQWoB9BUR5oIUU4RErwWw7DIAKkkoMcM20ZFtSS5pBH1b/HVv3mGF6ywF8SGd9jd/IMnTzwDpDogYoJTbGDTICYZmM7UsqeGlG3zwDKlLuvtg+4ASqWxeK48Z0AaXck99OP3CPilLHKu7gD6iwE9Jn59Ux6GQvpzLlfBpEwcX3ibrVuwdbrelOv3OvpaucrZtkkxptIZTMw7pQKAFA3qloa6fcvo3z/4BaHYvAI=",
  "termUrl": "https://3dsec.berekebank.kz/payment/rest/finish3ds.do?lang=en"
}

Қатесі бар жауаптың мысалы

{
  "error": "Access denied",
  "errorCode": 5,
  "errorMessage": "Access denied"
}

Байламдарды алу

Сұрау параметрлері

Міндетті Атау Түрі Сипаттама
Иә

clientId Alphanumeric Мерчант жүйесіндегі клиенттің нөмірі (ID) — 255 таңбаға дейін. Байламдардың функцияларын орындау үшін қолданылады. Мерчантқа байламдарды жасауға рұқсат етілсе, жауап ретінде қайтарылуы мүмкін.
Төлемдер байлам арқылы өңделген кезде осы параметрді міндетті түрде таңдау қажет. Кері жағдайда, төлемді жасау мүмкін болмайды.

Жауап параметрлері

Міндетті Атау Түрі Сипаттама
Иә

errorCode Integer Қате коды. Қате орын алмаған кезде, болмауы мүмкін.
Жоқ

errorMessage String Қате сипаттамасы. Сипаттама тілі сұраудың language параметрінде таңдалады.
Жоқ

error String Сұрау жіберілген тілдегі қате туралы хабар (жауапта қате болған жағдайда).
Жоқ

maskedPan String Төлемді жасау үшін пайдаланылатын жасырылған карта нөмірі. Тапсырыс бойынша төлем жасалған соң ғана көрсетіледі.
Жоқ

paymentWay String Төлем жасау әдістері (карта деректерін енгізу арқылы төлеу, байлам арқылы төлеу және т.б.).
Иә

bindingId String Бұрын жасалған байламның идентификаторы. Оны тек мерчанттың байламдармен жұмыс істеуге рұқсаты бар болған жағдайда ғана пайдалануға болады.
Иә

expiryDate Integer Келесі пішімдегі картаның жарамдылық мерзімі: YYYYMM. Тапсырыс бойынша төлем жасалған соң ғана көрсетіледі.

Қателер коды

Қате коды Хабар
0 Сұрауды өңдеу жүйелік қателерсіз аяқталды.
1 [cvc] көрсетілмеді.
2 Байлам табылмады.
2 Тапсырыс табылмады.
5 Кіру рұқсаты жоқ.
5 Пайдаланушы құпиясөзді ауыстыруы керек.
7 Жүйелік қате.

Мысалдар

Сұрау мысалы

curl --request POST \
  --url https://3dsec.berekebank.kz/payment/rest/getBindings.do \
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --data userName=ik_bindings-api \
  --data password=Ik_pass1 \
  --data clientId=dos-clientos \
  --data bindingType=C

Сәтті аяқталған сұрау мысалдары

{
"errorCode":"0",
"errorMessage":"Success",
"bindings": [
    {
        "bindingId":"69d6a793-afb5-79be-8ce7-63ff00a8656a",
        "maskedPan":"444455**3333",
        "expiryDate":"202412",
        "paymentWay":"CARD",
        "displayLabel":"XXXXXXXXXXXX3333"
        }
    ]
 }

Тапсырыс үшін төлеу сұрауы, карта деректері мерчант (ішкі 3DS Server) тарапынан жиналады

Төлем жасау үшін paymentOrder.do сұрауы пайдаланылады.

Сұрау параметрлері

Міндетті Атау Түрі Сипаттама
Иә

userName String Сатушының API есептік жазбасының логині.
Иә

password String Сатушының API есептік жазбасының құпиясөзі. Аутентификация үшін тіркелу кезінде пайдаланушы аты мен құпиясөз орнына токен пайдаланылса (token параметрі), құпиясөзді жіберудің қажеті жоқ.
Иә

MDORDER String Төлем шлюзіндегі тапсырыс нөмірі.
Иә

$PAN Numeric Төлем картасының нөмірі.
Иә

$CVC Numeric Картаның артқы жағындағы CVC/CVV2 коды.
Иә

YYYY Numeric Төлем картасы жарамдылығының аяқталу жылы.
Иә

MM Numeric Төлем картасы жарамдылығының аяқталу айы.
Иә

TEXT Alphabetic Карта иеленушісінің аты.
Иә

language Alphabetic ISO 639-1 бойынша тіл кілті. Көрсетілмесе, әдепкі бойынша дүкен параметрлерінде таңдалған тіл пайдаланылады.
Жоқ

ip String Төлеушінің IP-мекенжайы. IPv6 барлық сұрауларда қолданылады (39 таңбаға дейін).
Жоқ

email String Клиенттің электрондық пошта мекенжайы.
Жоқ

bindingNotNeeded Boolean Рұқсат етілетін мәндер:
  • true – төлемді аяқтағаннан кейін байлам жасау өшірілген (байлам – клиенттің тапсырысты тіркеуге сұрау салған кезде берілген идентификаторы, бұл идентификатор paymentOrder сұратымынан кейін тапсырыстың мәліметтерінен жойылады);
  • false – сәтті төленген жағдайда байламды жасауға болады (қажетті шарттарды сақтаған кезде). Бұл әдепкі бойынша мән.
Жоқ

jsonParams String Мерчанттың қосымша параметрлерін көрсету бөлімі. Кейін сақтауға арналған қосымша ақпарат өрістері.
{name1:value1,…,nameN:valueN}
Осы өрістер кейін банк реестрінде көрсету үшін банк процессингіне жіберілуі мүмкін.
Осы функцияны қосу үшін банкіңізге хабарласыңыз.
Мерчант үшін сатып алушылар туралы хабарландырулар орнатылған болса, осы бөлімде сатушының электрондық пошта мекенжайы бар email параметрі көрсетілуі керек.
Әдепкі бойынша банк процессингіне мына параметрлер жіберіледі:
  • orderNumber - мерчант жүйесіндегі тапсырыс нөмірі;
  • description - тапсырыс сипаттамасы (99 таңбаға дейін пайдаланылып, келесі таңбаларды қолдануға рұқсат берілмейді: %, +, күймешені қайтару \r және жолды түсіру \n).

Егер merchantOrderId көрсетілсе, оның мәні банк процессингіне тапсырыс нөмірі ретінде жіберіледі (orderNumber параметрінің орнына).
Жоқ

threeDSSDK String Ықтимал мәндері: true немесе false. Төлемнің 3DS SDK арқылы түсетінін көрсететін жалауша.
Сипаттаманы көру

billingPayerData Object Клиенттің AVS/AVV қызметтері аясында мекенжай тексерісінен өту үшін қажетті тіркеу деректері (мекенжай, пошта индексі) бар блок. Төлем шлюзінің тарапынан сатушы үшін функция қосулы болған жағдайда міндетті болып табылады.

Төменде billingPayerData блогының параметрлері келтірілген (клиентті тіркеу мекенжайы туралы деректер).

Міндетті Атау Түрі Сипаттама
Жоқ

billingCity String Эмитент банктің нақты картасы бойынша тіркелген қала.
Жоқ

billingCountry String Эмитент банктің нақты картасы бойынша тіркелген ел (ISO 3166-1, сандық).
Жоқ

billingAddressLine1 String Эмитент банктің нақты картасы бойынша тіркелген мекенжай. 1-жол. AVS-тексерісі үшін берілуі міндетті.
Жоқ

billingAddressLine2 String Эмитент банктің нақты картасы бойынша тіркелген мекенжай. 2-жол.
Жоқ

billingAddressLine3 String Эмитент банктің нақты картасы бойынша тіркелген мекенжай. 3-жол.
Жоқ

billingPostalCode String Эмитент банктің нақты картасы бойынша тіркелген пошта индексі. AVS-тексерісі үшін берілуі міндетті.
Жоқ

billingState String Эмитент банктің нақты картасы бойынша тіркелген штат.

Жауап параметрлері

Міндетті Атау Түрі Сипаттама
Иә

errorCode Integer Қате коды. Қате орын алмаған кезде, болмауы мүмкін.
Жоқ

errorMessage String Қате сипаттамасы. Сипаттама тілі сұраудың language параметрінде таңдалады.
Жоқ

info String Жауап сәтті болған жағдайда. Төлем жасау әрекетінің нәтижесі. Төменде ықтимал мәндері көрсетілген.
  • Төлеміңіз өңделді, қайта бағыттау орындалуда...
  • Операция өтпеді. Енгізілген деректерді, картадағы қаражаттың жеткілікті екенін тексеріп, операцияны қайталаңыз. Қайта бағыттау орындалуда...
  • Төлем жасау мүмкін емес. Қайта бағыттау орындалуда...
  • Операция өтпеді. Дүкенге хабарласыңыз. Қайта бағыттау орындалуда...
  • Операция өтпеді. Картаны шығарған банкке хабарласыңыз. Қайта бағыттау орындалуда...
  • Рұқсат етілмеген операция Карта иесінің аутентификациясы сәтсіз аяқталды. Қайта бағыттау орындалуда...
  • Банкпен байланыс жоқ. Кейінірек қайталаңыз. Қайта бағыттау орындалуда...
  • Деректерді енгізудің күту мерзімі аяқталды. Қайта бағыттау орындалуда...
  • Банктен жауап алынбады. Кейінірек қайталаңыз. Қайта бағыттау орындалуда...
Жоқ

redirect String Төлем сәтті орындалып, төлеу кезінде картадағы 3-D Secure протоколының қосылуы тексерілмесе, осы параметр қайтарылады. Төлем жасалғаннан кейін клиент қайта бағытталатын URL-мекенжайы.
Жоқ

termUrl String 3D-Secure арқылы төлеген жағдайда сәтті жауап берілген кезде. ACS серверіне қайта бағыттайтын URL-мекенжайы.
Жоқ

acsUrl String 3D-Secure арқылы төлеген жағдайда сәтті жауап берілген кезде. ACS серверіне қайта бағыттайтын URL-мекенжайы.
Жоқ

paReq String 3D-Secure арқылы төлеген жағдайда сәтті жауап берілген кезде. Payment Authentication Request. Төлеуші аутентификациясының сұрауы.

Қателер кодтары (errorCode параметрі):

Мәні Сипаттама
0 Сұрауды өңдеу жүйелік қателерсіз аяқталды.
5 Төлем жасау әрекеттері аяқталды
5 Жүйелік немесе ішкі қате.

Мысалдар

Сұрау мысалы

curl --request POST \
  --url https://3dsec.berekebank.kz/payment/rest/paymentorder.do \
  --header 'content-type: application/x-www-form-urlencoded' \
  --data userName=test_user \
  --data password=test_user_password \
  --data MDORDER=014932b6-9dc7-7782-aeec-a07500a7d8c0 \
  --data '$PAN=5555555555555599' \
  --data '$CVC=123' \
  --data YYYY=2024 \
  --data MM=12 \
  --data 'TEXT=TEST CARDHOLDER' \
  --data language=en

Жауап мысалдары

3-D Secure аутентификациясы қажет болмаған кездегі жауаптың мысалы.

{
  "redirect": "https://3dsec.berekebank.kz/payment/merchants/temp/finish.html?orderId=014932b6-9dc7-7782-aeec-a07500a7d8c0&lang=en",
  "info": "Your order is proceeded, redirecting...",
  "errorCode": 0
}

3-D Secure аутентификациясы қажет болған кездегі жауаптың мысалы.

{
  "info": "Your order is proceeded, redirecting...",
  "errorCode": 0,
  "acsUrl": "https://web.rbsuat.com/acs/auth/start.do",
  "paReq": "eJxVUsFWwjAQ/BVe7yVNmrbIW+JDQOFAVawHvfhKu5QKTaENvsrXm0ARve3MJjOb2cBtU2w7X1jVeSkHFu06VgdlUqa5zAbWa3Rv96xbAdG6Qhy/YHKoUMAc6zrOsJOnA6sXBMFq5fn2kiO1OcOl3XN7nr2M0VkFbnrjUd8S8DRc4F5AayS0T5cBuUCtWCXrWCoBcbK/m4WCs8B3HCAthAKr2Vh43GUuB3JGIOMCRR3LdFk2H0UrAeREQ1IepKq+hc9dIBcAh2or1krt+oQorFU3KQsghgRyneHpYKpaizR5KsLjjIfjZ3d+nLB5lDnh54aG0eR7ftwMgJgTkMYKBXMYdTj1Oo7f91jfpUBOPMSFcdf904POAHbGY/i385cBHXSl93AZ/4IAm10p0dwB8lsDuU48mpoME6XzkYutGr5Pm8fR5G5fUF4c3yI2XT1kb5lvkj0dMoq5ToZxepY0AIiRIe3SSLtvXf37Bz+jLruc",
  "termUrl": "https://3dsec.berekebank.kz/payment/rest/finish3ds.do?lang=en"
}

3-D Secure аутентификациясы қажет болса, paymentOrder бойынша жауап келгенде, клиент ACS серверіне қайта бағытталуы керек. Қайта бағыттаудың екі жолы бар: қалыпты және жеңілдетілген (төмендегі кестені қараңыз).

Қайта бағыттау әдісі Сипаттама
Қалыпты Төлем 3-D Secure арқылы орындалса, мерчанттар клиенттерін acsUrl ішінде көрсетілген мекенжай бойынша ACS серверіне қайта бағыттауы керек, сұраудың негізгі мәтініне MD=mdorder&PaReq=pareq&TermUrl=termUrl қосу керек, осында:
  • mdorder - төлем шлюзіндегі тапсырыстың бірегей идентификаторы;
  • pareq - paymentOrder жауабы ретінде алынған параметр;
  • termUrl - paymentOrder жауабы ретінде алынған параметр;

  • Бұл POST-сұрауы болуы керек.
    Банкпен келісілген конфигурацияға байланысты, ACS серверіндегі аутентификациядан кейін сатып алушы дүкенге немесе төлем шлюзіне қайта бағытталады. Төлемді жалғастыру жолдары төменде көрсетілген.
Жеңілдетілген Клиенттер ACS аутентификация бетіне кіру рұқсатын алуы үшін мерчант оларды мына URL-мекенжайы бойынша төлем шлюзінің бетіне өткізеді:
https://3dsec.berekebank.kz/payment/acsRedirect.do?orderId=«
осында:
  • »« – клиент тапсырысының бірегей нөмірі.

Осыдан кейін, клиенттен қосымша әрекеттердің қажетінсіз, төлем шлюзі клиентті аутентификацияны өтуі үшін ACS серверіне өткізеді.
Рұқсат етілген әрекеттердің санынан асып кетсе, соңғы төлем жасау әрекетіне келесі жауап қайтарылады.
»{"redirect":"false.html?login=test&orderId=85eb9a84-2a47-7cca-b0ae-662c000016d1&lang=ru","info":"Операция өтпеді. Енгізілген деректерді, төлем картасындағы қолжетімді соманы тексеріп, әрекетті қайталаңыз.
Қайта бағыттау орындалуда...","errorCode":0}<br/>Осында қайта бағыттаудың URL-мекенжайы — бұлfailUrlпараметрінде берілген мән (немесеfailUrlберілмеген жағдайда,returnUrl).<br/>Барлық келесі әрекеттерге келесі жауап қайтарылады.<br/>{"redirect":"false.html?login=test&orderId=85eb9a84-2a47-7cca-b0ae-662c000016d1&lang=ru","info":"Redirecting...","errorCode":0}<br/>Осында қайта бағыттаудың URL-мекенжайы — бұлfailUrlпараметрінде берілген мән (немесеfailUrlберілмеген жағдайда,returnUrl``).
Осында төлем шлюзі қатені қайтармайды.

Тапсырыс үшін төлеу сұрауы, карта деректері мерчант (сыртқы 3DS Server) тарапынан жиналады

Сұрау параметрлері

Міндетті Атау Түрі Сипаттама
Иә

userName String Сатушының API есептік жазбасының логині.
Иә

password String Сатушының API есептік жазбасының құпиясөзі.
Иә

MDORDER String Төлем шлюзіндегі тапсырыс нөмірі.
Иә

$PAN Numeric Төлем картасының нөмірі.
Иә

$CVC Numeric Картаның артқы жағындағы CVC/CVV2 коды.
Иә

YYYY Numeric Төлем картасы жарамдылығының аяқталу жылы.
Иә

MM Numeric Төлем картасы жарамдылығының аяқталу айы.
Иә

TEXT Alphabetic Карта иеленушісінің аты.
Иә

language Alphabetic ISO 639-1 бойынша тіл кілті. Көрсетілмесе, әдепкі бойынша дүкен параметрлерінде таңдалған тіл пайдаланылады.
Жоқ

ip String Төлеушінің IP-мекенжайы. IPv6 барлық сұрауларда қолданылады (39 таңбаға дейін).
Жоқ

email String Клиенттің электрондық пошта мекенжайы.
Жоқ

bindingNotNeeded Boolean Рұқсат етілетін мәндер:
  • true – төлемді аяқтағаннан кейін байлам жасау өшірілген (байлам – клиенттің тапсырысты тіркеуге сұрау салған кезде берілген идентификаторы, бұл идентификатор paymentOrder сұратымынан кейін тапсырыстың мәліметтерінен жойылады);
  • false – сәтті төленген жағдайда байламды жасауға болады (қажетті шарттарды сақтаған кезде). Бұл әдепкі бойынша мән.
Жоқ

jsonParams Alphanumeric Кейін сақтауға арналған қосымша ақпарат өрістері келесі түрде көрсетіледі: {"param":"value","param2":"value2"}.
Осы өрістер кейін банк реестрінде көрсету үшін банк процессингіне жіберілуі мүмкін.
Әдепкі бойынша orderNumber (тапсырыс нөмірі) және description (тапсырыс сипаттамасы) көрсетіледі.description 99 таңбадан аспауы керек және мына таңбалар пайдаланылмауы тиіс:% ,+ , күймешені қайтару \r және жолды түсіру \n).
Осы функцияны қосу үшін банкіңізге хабарласыңыз.
Сыртқы 3DS Server пайдаланылса, төлем шлюзі әр paymentOrder сұрауының eci параметрі болатынын күтеді. eci мәні SSL-авторизациясы үшін пайдаланылатын мәндерден өзгеше болса, xid және cavv параметрлерін көрсету керек.
Сипаттаманы көру

billingPayerData Object Клиенттің AVS/AVV қызметтері аясында мекенжай тексерісінен өту үшін қажетті тіркеу деректері (мекенжай, пошта индексі) бар блок. Төлем шлюзінің тарапынан сатушы үшін функция қосулы болған жағдайда міндетті болып табылады.

Төменде billingPayerData блогының параметрлері келтірілген (клиентті тіркеу мекенжайы туралы деректер).

Міндетті Атау Түрі Сипаттама
Жоқ

billingCity String Эмитент банктің нақты картасы бойынша тіркелген қала.
Жоқ

billingCountry String Эмитент банктің нақты картасы бойынша тіркелген ел (ISO 3166-1, сандық).
Жоқ

billingAddressLine1 String Эмитент банктің нақты картасы бойынша тіркелген мекенжай. 1-жол. AVS-тексерісі үшін берілуі міндетті.
Жоқ

billingAddressLine2 String Эмитент банктің нақты картасы бойынша тіркелген мекенжай. 2-жол.
Жоқ

billingAddressLine3 String Эмитент банктің нақты картасы бойынша тіркелген мекенжай. 3-жол.
Жоқ

billingPostalCode String Эмитент банктің нақты картасы бойынша тіркелген пошта индексі. AVS-тексерісі үшін берілуі міндетті.
Жоқ

billingState String Эмитент банктің нақты картасы бойынша тіркелген штат.

Жауап параметрлері

Міндетті Атау Түрі Сипаттама
Иә

errorCode Integer Қате коды. Қате орын алмаған кезде, болмауы мүмкін.
Жоқ

errorMessage String Қате сипаттамасы. Сипаттама тілі сұраудың language параметрінде таңдалады.
Жоқ

info String Жауап сәтті болған жағдайда. Төлем жасау әрекетінің нәтижесі. Төменде ықтимал мәндері көрсетілген.
  • Төлеміңіз өңделді, қайта бағыттау орындалуда...
  • Операция өтпеді. Енгізілген деректерді, картадағы қаражаттың жеткілікті екенін тексеріп, операцияны қайталаңыз. Қайта бағыттау орындалуда...
  • Төлем жасау мүмкін емес. Қайта бағыттау орындалуда...
  • Операция өтпеді. Дүкенге хабарласыңыз. Қайта бағыттау орындалуда...
  • Операция өтпеді. Картаны шығарған банкке хабарласыңыз. Қайта бағыттау орындалуда...
  • Рұқсат етілмеген операция Карта иесінің аутентификациясы сәтсіз аяқталды. Қайта бағыттау орындалуда...
  • Банкпен байланыс жоқ. Кейінірек қайталаңыз. Қайта бағыттау орындалуда...
  • Деректерді енгізудің күту мерзімі аяқталды. Қайта бағыттау орындалуда...
  • Банктен жауап алынбады. Кейінірек қайталаңыз. Қайта бағыттау орындалуда...

errorCode = 0 және info = "Your order is proceeded, redirecting"болса, бұл төлемнің сәтті өңделгенін білдіреді. Басқа жағдайларда қате пайда болды, errorMessage қараңыз.

Қателер кодтары (errorCode параметрі):

Мәні Сипаттама
0 Сұрауды өңдеу жүйелік қателерсіз аяқталды
5 Төлем жасау әрекеттері аяқталды
5 Жүйелік немесе ішкі қате.

Мысалдар

Сұрау мысалы

curl --request POST \\
  --url https://3dsec.berekebank.kz/payment/rest/paymentorder.do \\
  --header 'content-type: application/x-www-form-urlencoded' \\
  --data userName=test_user \\
  --data password=test_user_password \\
  --data MDORDER=0140dda0-71ed-7706-a61f-36bd00a7d8c0 \\
  --data '$PAN=5555555555555599' \\
  --data '$CVC=123' \\
  --data YYYY=2024 \\
  --data MM=12 \\
  --data 'TEXT=TEST CARDHOLDER' \\
  --data language=en \\
  --data 'xid=MDAwMDAwMDEzMzkyMjg5ODExNTc=' \\
  --data 'cavv=AAABCpEChRM5IomAKFAAAAAAAAA=' \\
  --data eci=05

Жауап мысалы

{
  "redirect": "https://3dsec.berekebank.kz/payment/merchants/temp/finish.html?orderId=01493844-d4d3-703f-9f7e-a73900a7d8c0&lang=en",
  "info": "Your order is proceeded, redirecting...",
  "errorCode": 0
}

Apple Pay тапсырысын тіркеу

Сұрау параметрлері

Міндетті Атау Түрі Сипаттама
Иә

merchant String Төлем шлюзі жүйесіндегі сатушының логині.
Иә

orderNumber Alphanumeric Мерчант жүйесіндегі тапсырыс нөмірі (ID); әр мерчант үшін бірегей болуы керек.
Жоқ

description String Кез келген пішімдегі тапсырыс сипаттамасы.
Осы өрісті процессинг жүйесіне жіберу функциясын қосу үшін техникалық қолдау көрсету қызметіне хабарласыңыз.
Жоқ

language Alphabetic ISO 639-1 бойынша тіл кілті. Көрсетілмесе, әдепкі бойынша дүкен параметрлерінде таңдалған тіл пайдаланылады.
Жоқ

additionalParameters Сипаттаманы көру Кейін қарауы үшін сатушының жеке кабинетінде сақталатын тапсырыстың қосымша параметрлері. Параметр атауының әрбір жаңа жұбы мен оның мәндері үтірмен бөлінуі қажет. Төменде пайдалану мысалы келтірілген.
{ "firstParamName": "firstParamValue", "secondParamName": "secondParamValue"}
Жоқ

preAuth String Алдын ала авторизациялау (клиент шотындағы қаражатты шешілгенше бұғаттау) қажеттілігін анықтайтын параметр. Келесі мәндер қолжетімді:
  • true - екі кезеңді төлем жасау мүмкіндігі қосылған;
  • false- бір кезеңді төлем жасау мүмкіндігі қосылған (қаражат бірден шешіледі).
Параметр жоқ болса, бір кезеңді төлем жасалады.
Иә

paymentToken String paymentToken параметрінде шифры ашылған және Base64 модулінде кодталған Apple Pay жүйесіндегі PKPaymentToken Object нысанынан алынған paymentData сипат мәні бар болуы керек (толық ақпаратты Apple Pay құжаттамасынан қараңыз). Осылайша, төлем шлюзіне төлем жасау сұрауын жіберу үшін сатушы:
  1. Apple Pay жүйесінен paymentData сипаты бар PKPaymentToken Object нысанын алуы керек;
  2. paymentData мәнін шығарып, оны Base64 модулінде кодтауы керек;
  3. paymentData сипатының кодталған мәнін сатушы төлем шлюзіне бағыттайтын төлем жасау сұрауындағы paymentToken параметрінің мәні ретінде қосуы керек.

Жауап параметрлері

Міндетті Атау Түрі Сипаттама
Иә

success String Сұраудың сәтті өңделгенін көрсетеді. Келесі мәндер қолжетімді:
  • true - сұрау сәтті өңделді
  • false - сұрау өтпеді.
Сипаттаманы көру data N/A Осы параметр төлем сәтті өңделген кезде ғана қайтарылады. Төмендегі сипаттаманы қараңыз.
Сипаттаманы көру error N/A Осы параметр төлемде қате пайда болған кезде ғана қайтарылады. Төмендегі сипаттаманы қараңыз.
Сипаттаманы көру orderStatus N/A Тапсырыс күйінің параметрлері бар және төлем шлюзі сұраудың барлық параметрлерін дұрыс деп анықтаған кезде ғана қайтарылады. Төмендегі сипаттаманы қараңыз.

data бөлімінде келесі элементтер бар.

Міндетті Атау Түрі Сипаттама
Иә

orderId String Төлем шлюзіндегі тапсырыс нөмірі. Төлем шлюзі ауқымында бірегей болып табылады.

error бөлімінде келесі элементтер бар.

Міндетті Атау Түрі Сипаттама

code Integer Қате коды.

description String Қатенің толық техникалық сипаттамасы – бұл параметрдің құрамы пайдаланушыға көрсетілмеуі керек.

message String Пайдаланушыға көрсетілетін қате туралы хабар.

orderStatus бөлімінде келесі элементтер бар.

Міндетті Атау Түрі Сипаттама
Жоқ

errorCode Integer Қате коды. Қате орын алмаған кезде, болмауы мүмкін.
Жоқ

orderNumber Alphanumeric Мерчант жүйесіндегі тапсырыс нөмірі (ID); әр мерчант үшін бірегей болуы керек.
Жоқ

orderStatus Integer Осы параметрдің мәні төлем шлюзіндегі тапсырыстың күйін көрсетеді. Тапсырыс табылмаған кезде болмайды. Төменде қолжетімді параметрлер тізімі берілген:
  • 0 - тапсырыс тіркелген, бірақ төленбеген;
  • 1 - алдын ала авторизацияланған сома ұсталған (екі кезеңді төлемдер үшін)
  • 2 - тапсырыс сомасының толық авторизациясы орындалды;
  • 3 - авторизациядан бас тартылды;
  • 4 - транзакция бойынша қайтару операциясы орындалды;
  • 5 - банк-эмитентінің ACS сервері арқылы авторизация іске қосылды;
  • 6 - авторизация орындалмады.
Жоқ

actionCode Integer Банк процессингінен алынған жауап коды.
Жоқ

actionCodeDescription String Банк процессингімен қайтарылатын actionCode сипаттамасы.
Жоқ

amount Integer Ең төменгі валюта бірліктерінде көрсетілген төлем сомасы (мысалы, тиынмен).
Жоқ

currency Integer ISO 4217 төлем валютасының коды. Көрсетілмеген жағдайда, әдепкі мән пайдаланылады.
Жоқ

date String Тапсырысты тіркеу күні.
Жоқ

ip String Төлеушінің IP-мекенжайы. IPv6 барлық сұрауларда қолданылады (39 таңбаға дейін).
Сипаттаманы көру merchantOrderParams N/A Мерчанттың қосымша параметрлері берілетін атрибуттары бар бөлім. Төмендегі сипаттаманы қараңыз.
Сипаттаманы көру attributes N/A Төлем жүйесіндегі тапсырыс атрибуттары (тапсырыс нөмірі). Төмендегі сипаттаманы қараңыз.
Сипаттаманы көру cardAuthInfo N/A Сатып алушының төлем картасы туралы ақпарат. Төмендегі сипаттаманы қараңыз.
Жоқ

authDateTime String 1 қаңтар, 1970 жылдың (GMT) 00:00 уақытынан өтіп кеткен, миллисекунд саны ретінде көрсетілген авторизацияның күні мен уақыты.
Жоқ

terminalId String Терминал идентификаторы.
Жоқ

authRefNum String Төлемді тіркеу кезінде берілген төлем авторизациясының тіркеу нөмірі.
Сипаттаманы көру paymentAmountInfo N/A Растау, есептен шығару және қайтару сомалары туралы ақпаратты қамтитын кірістірілген параметрлері бар параметр. Төмендегі сипаттаманы қараңыз.
Сипаттаманы көру bankInfo N/A Кірістірілген  bankCountryName параметрі бар. Төмендегі сипаттаманы қараңыз.

merchantOrderParams бөлімінде келесі элементтер бар.

Міндетті Атау Түрі Сипаттама
Иә

name Alphanumeric Мерчанттың қосымша параметрінің атауы.
Иә

value Alphanumeric Сатушының қосымша параметрінің мәні – 1024 таңбаға дейін.

attributes бөлімінде келесі элементтер бар.

Міндетті Атау Түрі Сипаттама
Иә

name Alphanumeric Қосымша параметрдің атауы.
Иә

value Alphanumeric Қосымша параметрдің мәні – 1024 таңбаға дейін.

cardAuthInfo бөлімінде келесі элементтер бар.

Міндетті Атау Түрі Сипаттама
Иә

expiration Integer Келесі пішімдегі картаның жарамдылық мерзімі: YYYYMM. Тапсырыс бойынша төлем жасалған соң ғана көрсетіледі.
Иә

cardholderName Alphabetic Карта иесінің латын әліпбиімен көрсетілген аты. Осы параметр тек тапсырыс төленгеннен кейін беріледі.
Иә

approvalCode String Халықаралық төлем жүйесінің (ХТЖ) авторизация коды. Бұл өрістің ұзындығы бекітілген (алты таңба) және сандар мен латын әріптерінен тұруы мүмкін.
Иә

pan String Жасырын DPAN: сатып алушының мобильді құрылғысымен байланыстырылған және Apple Pay жүйесінде төлем картасы нөмірінің функцияларын атқаратын нөмір.

paymentAmountInfo бөлімінде келесі элементтер бар.

Міндетті Атау Түрі Сипаттама
Иә

paymentState String Тапсырыс күйі, параметр мына мәндерде болуы мүмкін:
  • CREATED - тапсырыс жасалған (бірақ төленбеген);
  • APPROVED - тапсырыс расталған (сатып алушы шотындағы қаражат бұғатталған);
  • DEPOSITED- тапсырыс аяқталды (қаражат сатып алушы шотынан түсті);
  • DECLINED - тапсырыс қабылданбады;
  • REVERSED - бас тарту операциясы;
  • REFUNDED - қаражатты қайтару операциясы.
Иә

approvedAmount Integer Сатып алушының шотында бұғатталып қалған ең төменгі валюта бірліктеріндегі сома (мысалы, цент түрінде). Тек екі сатылы төлемдерде ғана пайдаланылады.
Иә

depositedAmount Integer Минималды валюта бірлігімен (мысалы, тиынмен) берілген есептен шығару сомасы.
Иә

refundedAmount Integer Минималды бірлікпен берілген қайтару сомасы.

bankInfo бөлімінде келесі элементтер бар.

Міндетті Атау Түрі Сипаттама
Иә

bankCountryName String Эмитент банктің елі.

Қателер коды

Мысалдар

Сұрау мысалы

curl --request POST \
--url https://3dsec.berekebank.kz/payment/applepay/payment.do \
--header 'Content-Type: application/json' \
--data-raw '{
  "additionalParameters" : {
    "phone" : "9521235847",
    "order-pain" : "111",
    "email" : "apple@pay.com"
  },
  "features" : [ ],
  "language" : "ru",
  "merchant" : "sandbox_merchant",
  "orderNumber" : "281477871",
  "paymentToken" : "eyJkYXRhIjoiYPhK3M1bEtm...YjM2NWMzZWNmYjE5fIkVDX3YxIn0=",
  "preAuth" : false,
  "recurrent" : false,
  "recurrentInitialize" : false
}'

Төлем сәтті аяқталған жағдайдағы жауап

{
    "success": true,
    "data": {
        "orderId": "b926351f-a634-49cf-9484-ccb0a3b8cfad"
    },
    "orderStatus": {
        "errorCode": "0",
        "orderNumber": "229",
        "orderStatus": 1,
        "actionCode": 0,
        "actionCodeDescription": "",
        "amount": 960000,
        "currency": "978",
        "date": 1478682458102,
        "ip": "81.18.144.51",
        "merchantOrderParams": [
            {
                "name": "param2",
                "value": "param2"
            },
            {
                "name": "param1",
                "value": "param1"
            }
        ],
        "attributes": [
            {
                "name": "mdOrder",
                "value": "b926351f-a634-49cf-9484-ccb0a3b8cfad"
            }
        ],
        "cardAuthInfo": {
            "expiration": "201907",
            "cardholderName": "CARD HOLDER",
            "approvalCode": "123456",
            "pan": "520424**0010"
        },
        "authDateTime": 1478682459082,
        "terminalId": "12345678",
        "authRefNum": "111111111111",
        "paymentAmountInfo": {
            "paymentState": "APPROVED",
            "approvedAmount": 960000,
            "depositedAmount": 0,
            "refundedAmount": 0
        },
        "bankInfo": {
            "bankCountryName": "<UNKNOWN>"
        }
    }
}

Төлем сәтсіз аяқталған жағдайдағы жауап

{
  "error": {
    "code": 10,
    "description": "Processing Error",
    "message": "Auth is invalid"
  },
  "success": false
}

Google Pay тапсырысын тіркеу

Сұрау параметрлері

Тапсырысты тіркеу үшін /google/payment.do сұрауы пайдаланылады.

Міндетті Атау Түрі Сипаттама
Иә

merchant String Төлем шлюзі жүйесіндегі сатушының логині.

Иә

| orderNumber | Alphanumeric | Мерчант жүйесіндегі тапсырыс нөмірі (ID); әр мерчант үшін бірегей болуы керек. |

Жоқ

| description | String | Кез келген пішімдегі тапсырыс сипаттамасы.
Осы өрісті процессинг жүйесіне жіберу функциясын қосу үшін техникалық қолдау көрсету қызметіне хабарласыңыз. |

Жоқ

| language | Alphabetic | ISO 639-1 бойынша тіл кілті. Көрсетілмесе, әдепкі бойынша дүкен параметрлерінде таңдалған тіл пайдаланылады. |

Жоқ

| additionalParameters | Сипаттаманы көру | Кейін қарауы үшін сатушының жеке кабинетінде сақталатын тапсырыстың қосымша параметрлері. Параметр атауының әрбір жаңа жұбы мен оның мәндері үтірмен бөлінуі қажет. Төменде пайдалану мысалы келтірілген.
{ "firstParamName": "firstParamValue", "secondParamName": "secondParamValue"} |

Жоқ

| preAuth | String | Алдын ала авторизациялау (клиент шотындағы қаражатты шешілгенше бұғаттау) қажеттілігін анықтайтын параметр. Келесі мәндер қолжетімді:

Параметр жоқ болса, бір кезеңді төлем жасалады. |

Жоқ

| clientId | Alphanumeric | Мерчант жүйесіндегі клиенттің нөмірі (ID) — 255 таңбаға дейін. Байламдардың функцияларын орындау үшін қолданылады. Мерчантқа байламдарды жасауға рұқсат етілсе, жауап ретінде қайтарылуы мүмкін.
Төлемдер байлам арқылы өңделген кезде осы параметрді міндетті түрде таңдау қажет. Кері жағдайда, төлемді жасау мүмкін болмайды. |

Иә

| paymentToken | String | Google Pay жүйесінен алынған және Base64 модулінде кодталған токен. |

Иә

| ip | String | Төлеушінің IP-мекенжайы. IPv6 барлық сұрауларда қолданылады (39 таңбаға дейін). |

Иә

| amount | Integer | Ең төменгі валюта бірліктерінде көрсетілген төлем сомасы (мысалы, тиынмен). |

Жоқ

| currencyCode | String | ISO 4217 төлем валютасының цифрлық коды. Көрсетілмеген жағдайда, 643 (Ресей рублі) болып есептеледі. |

Сипаттаманы көру

| email | String | Клиенттің электрондық пошта мекенжайы. |

Сипаттаманы көру

| phone | Integer | Сатып алушының телефон нөмірі. Ел кодын әрқашан көрсету керек, осында + белгісін көрсетуге не көрсетпеуге болады. Осылайша, келесі нұсқалар қолжетімді болады:

|

Иә

| returnUrl | String | Төлем сәтті орындалған жағдайда, пайдаланушы бағытталатын мекенжай. Мекенжайды пайдаланылатын протоколымен бірге толық көрсету қажет (мысалы, test.ruорнына https://test.ru ). Кері жағдайда, пайдаланушы мына мекенжайға бағытталады: «https://https://3dsec.berekebank.kz/payment/». |

Жоқ

| failUrl | String | Төлем орындалмаған жағдайда, пайдаланушы бағытталатын мекенжай. Мекенжайды пайдаланылатын протоколымен бірге толық көрсету қажет (мысалы, test.ruорнына https://test.ru ). Кері жағдайда, пайдаланушы мына мекенжайға бағытталады: «https://https://3dsec.berekebank.kz/payment/». |

Жауап параметрлері

Міндетті Атау Түрі Сипаттама
Иә

success String Сұраудың сәтті өңделгенін көрсетеді. Келесі мәндер қолжетімді:
  • true - сұрау сәтті өңделді
  • false - сұрау өтпеді.
Сипаттаманы көру data N/A Осы параметр төлем сәтті өңделген кезде ғана қайтарылады. Төмендегі сипаттаманы қараңыз.
Сипаттаманы көру error N/A Осы параметр төлемде қате пайда болған кезде ғана қайтарылады. Төмендегі сипаттаманы қараңыз.
Сипаттаманы көру orderStatus N/A Тапсырыс күйінің параметрлері бар және төлем шлюзі сұраудың барлық параметрлерін дұрыс деп анықтаған кезде ғана қайтарылады. Төмендегі сипаттаманы қараңыз.

data бөлімінде келесі элементтер бар.

Міндетті Атау Түрі Сипаттама
Иә

orderId String Төлем шлюзіндегі тапсырыс нөмірі. Төлем шлюзі ауқымында бірегей болып табылады.
Иә

orderId String Төлем шлюзіндегі тапсырыс нөмірі. Төлем шлюзі ауқымында бірегей болып табылады.
Банк-эмитентінің ACS серверінде қосымша аутентификация пайдаланылған жағдайда ғана

termUrl String 3D-Secure арқылы төлеген жағдайда сәтті жауап берілген кезде. ACS серверіне қайта бағыттайтын URL-мекенжайы.
Банк-эмитентінің ACS серверінде қосымша аутентификация пайдаланылған жағдайда ғана

acsUrl String 3D-Secure арқылы төлеген жағдайда сәтті жауап берілген кезде. ACS серверіне қайта бағыттайтын URL-мекенжайы.
Банк-эмитентінің ACS серверінде қосымша аутентификация пайдаланылған жағдайда ғана

paReq String 3D-Secure арқылы төлеген жағдайда сәтті жауап берілген кезде. Payment Authentication Request. Төлеуші аутентификациясының сұрауы.
Байламдар пайдаланылса, параметр қайтарылады

bindingId String Бұрын жасалған байламның идентификаторы. Оны тек мерчанттың байламдармен жұмыс істеуге рұқсаты бар болған жағдайда ғана пайдалануға болады.

error бөлімінде келесі элементтер бар.

Міндетті Атау Түрі Сипаттама

code Integer Қате коды.

| description | String | Қатенің толық техникалық сипаттамасы – бұл параметрдің құрамы пайдаланушыға көрсетілмеуі керек. |

| message | String | Пайдаланушыға көрсетілетін қате туралы хабар. |

Қателер коды

Қате коды Хабар
0 Сұрауды өңдеу жүйелік қателерсіз аяқталды
1 Картадағы қаражат жеткіліксіз
5 Кіру рұқсаты жоқ.
10 paymentToken параметрінің дұрыс емес мәні
10 orderNumber параметрінің дұрыс емес мәні
10 merchant параметрінің дұрыс емес мәні
10 ip параметрінің дұрыс емес мәні
10 Жіберілген деректерді шифрлау орындалмады.
10 Сатушыда жеке кілті жоқ

Мысалдар

Сұрау мысалы

curl --request POST \
--url https://3dsec.berekebank.kz/payment/google/payment.do \
--header 'Content-Type: application/json' \
--data-raw '{
  "amount" : 1000,
  "features" : [ ],
  "merchant" : "sandbox_merchant",
  "orderNumber" : "350467565",
  "paymentToken" : "eyJzaWduYXR1cmUiOiJNRVF...dGM3NHUxQWY5L1pNPVwifSJ9",
  "preAuth" : false,
  "returnUrl" : "https://ya.ru/"
}'

Төлем сәтті аяқталған жағдайдағы жауап

{
"success":true,
"data": {
 "orderId": "12312312123"
 }
}

Токені жоқ карта мен ACS серверіне өткізу орындалатын сұрауға жауап мысалы

{"success":true,"data":{"orderId":"e757d0cf-a028-7bdc-acb9-44480008afa2","acsUrl":"https://test.ru/acs/auth/start.do","paReq":"eJxV....DOm3R/rFG/TvQ/wAgGS/bg==","termUrl":"https://3dsec.berekebank.kz/payment/rest/finish3ds.do"}

Төлем сәтсіз аяқталған жағдайдағы жауап

{
  "error": {
    "code": 1,
    "description":
"Processing Error",
    "message":
"The funds on the card are not sufficient"
  },
  "success": false
}
# Кері қоңырау хабарландырулары (callback) Төлем шлюзінің API-мекенжайы төлем күйлерінің өзгеруі туралы callback-хабарландыруларын алуға мүмкіндік береді. ## Жалпы ақпарат ### Хабарландырулар келуі мүмкін оқиғалар Сатушы төмендегі кестеде көрсетілген тапсырыстар бойынша операциялардың кері қоңырау хабарландыруларын алуы мүмкін. | Оқиға | Төлем түрі | |---|---| | Қаражатты ұстап қалу. | Тек екі кезеңді төлемдер. | | Қаражат мерчанттың шотына түседі. | Бір және екі кезеңді төлемдер. | | Тапсырыстан бас тартылды. | Бір және екі кезеңді төлемдер. | | Қаражатты қайтару. | Бір және екі кезеңді төлемдер. | ## Хабарландырулардың түрлері Хабарландырулардың екі түрі болуы мүмкін (төмендегі кестені қараңыз). | Хабарландырудың түрі | Сипаттама | |---|---| | **Бақылау сомасы жоқ хабарландырулар** | Осындай хабарландыруларда тек тапсырыс туралы ақпарат болады, сондықтан сатушы қаскүнем жіберген хабарландыруды түпнұсқа хабарландыру деп санауы мүмкін. | | **Бақылау сомасы бар хабарландырулар** | Тапсырыс туралы мәліметтерден басқа, осындай хабарландыруларда аутентификация коды болуы керек. Аутентификация коды – бұл тапсырыс туралы мәліметтердің бақылау сомасы. Осы бақылау сомасы callback-хабарландырудың шынымен төлем шлюзі арқылы жіберілгеніне көз жеткізуге мүмкіндік береді.
Бақылау сомасы бар callback-хабарландыруын жіберудің екі әдісі бар:
Қажетті рұқсаттар болған жағдайда, ашық кілтті төлем шлюзінің жеке кабинетінен жүктеп алуға болады. Қауіпсіздікті қамтамасыз ету үшін асимметриялы криптографияны пайдалану ұсынылады.
Бақылау сомалары бар хабарландыруларды қосу және тиісті криптографиялық кілтті алу үшін біздің техникалық қолдау қызметімізге хабарласыңыз. ## Сатушының сайтындағы SSL-сертификаттарына қойылатын талаптар Тапсырыстардың күйі бойынша хабарландырулармен жұмыс істейтін дүкенге кіру үшін HTTPS-қосылымы пайдаланылса, осы дүкен орналасқан сайттың сертификаты келесі талаптарға сәйкес келуі керек (төмендегі кестені қараңыз). | Талап | Сипаттама | |---|---| | Қолтаңба алгоритмі. | SHA-256 төмен емес. | | Қолдау көрсетілетін сертификаттау орталықтары. | Төменде цифрлық сертификаттарды тіркейтін ұйымдардың мысалдары көрсетілген:

Сондай-ақ, сертификаттарды Ресейдегі жеткізушілер арқылы рәсімдеу мүмкіндігі бар:

Өздігінен қол қойылған сертификаттарға рұқсат берілмейді. Сертификатқа сенімді сертификаттау орталығында қол қойылуы керек (жоғары қараңыз).
## Хабарландырулардың URL-мекенжайлар пішімі **Бақылау сомасы жоқ хабарландыру** ```shell {merchant-url}?={mdOrdermdOrder}&orderNumber={orderNumber}&operation={operation}&status={status} ``` **Бақылау сомасы бар хабарландыру** ```shell {merchant-url}?mdOrder={mdOrder}&orderNumber={orderNumber}&checksum={checksum}&operation={operation}&status={status} ``` Берілген параметрлер төмендегі кестеде көрсетілген. Кестеде тек негізгі параметрлер ұсынылған. Осыған қоса, жеке кабинетте хабарландыруларда көрсетілетін қосымша параметрлерді белгілеу мүмкіндігі бар. | Параметр | Сипаттама | |---|---| | ``mdOrder`` | Төлем шлюзінде сақталатын бірегей тапсырыс нөмірі. | | ``orderNumber`` | Мерчант жүйесіндегі бірегей тапсырыс нөмірі (идентификатор). | | ``checksum`` | Параметрлер жиынынан алынған аутентификация коды немесе бақылау сомасы. | | ``operation`` | Хабарландырудың жіберілуіне себеп болған оқиғаның түрі:
| ``status`` | ``operation`` параметрінде көрсетілген операцияның сәтті аяқталу индикаторы:
Санаттар:
eCommerce API V1
Санаттар
Іздеу нәтижелері