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

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

Кіріспе

Интернет-эквайринг – бұл банк карталарын пайдалана отырып, жалпыға қолжетімді Интернет желісі арқылы қызметтерді немесе тауарларды сатудың заманауи әдісі.

Интернетте сатып алу үдерісінің ерекшеліктері бар болғандықтан, тауарларды/қызметтерді сату операцияларын жүзеге асыру кезінде қатысатын тараптардың, яғни клиенттің, дүкеннің және банк-эквайердің арасындағы қауіпсіз қатынастарды қамтамасыз етудің қажеттілігі туындайды.

Банк карталары арқылы Интернетте қызметтерді немесе тауарларды сату үдерісін жоспарлаған дүкен төлемдердің қауіпсіздігін қамтамасыз ету бойынша процедураларды орындауы тиіс:

Мобильді SDK

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

Мобильді SDK жиынтығы төлем шлюзінің API экожүйесінің құрамдасы болып табылады және мобильді құрылғылардан онлайн-төлемдерді қабылдауға мүмкіндік береді. Мобильді SDK төлемдерді жасау пішінін сіздің iOS немесе Android жүйелерінің негізіндегі қолданбаңызға ендіруге мүмкіндік береді. Мобильді SDK төлем мәліметтерін енгізу процесінің қауіпсіздігін қамтамасыз етеді. Бұл мақалада бірінші төлемді алу қадамдары көрсетілген. Сіз реттеген барлық төлем әдістері клиенттеріңізге қолжетімді болады.

Орындау әдісі:

  1. Пайдаланушы мобильді қолданбаңызда төлеу әдісін таңдайды, қажетті деректерді енгізеді және төлем жасау қадамына өтеді;
  2. Мобильді қолданба seToken (өздігінен шифрланған токен) токенін жасап, төлем деректерін шифрлайды;
  3. Мобильді қолданба рұқсат алу үшін seToken токенін төлем шлюзіне жібереді.

iOS

SDK жиынтығы қолдау көрсететін төлем әдістері:

Төлем әдісі Қолдау көрсету
Банк картасы Иә
Байлам (сақталған банк картасы) Иә
Apple Pay Иә

iOS SDK туралы толығырақ

Android

SDK жиынтығы қолдау көрсететін төлем әдістері:

Төлем әдісі Қолдау көрсету
Банк картасы Иә
Байлам (сақталған банк картасы) Иә
Google Pay Иә

Android SDK туралы толығырақ

Қосу қадамдары

Төлемдерді мобильді қолданба арқылы қабылдау үшін төмендегі әрекеттерді орындау қажет:

  1. Интернет-дүкеніңізді банкте тіркеу;
  2. Сатушы консоліне қатынасу үшін сынақ есептік жазба деректерін алу;
  3. API әдістерін шақыру үшін сынақ есептік жазба деректерін алу;
  4. Төлем шлюзімен сынақ режимде байланыстыру;
  5. Сынақ режимде байланыстыру әдісі реттелген соң, қадамның орындалғанын тексеру үшін банктің қолдау көрсету қызметіне хабарласыңыз;
  6. Сатушы консоліне қатынасу үшін белсенді есептік жазба деректерін алу;
  7. API әдістерін шақыру үшін белсенді есептік жазба деректерін алу;
  8. Банкіңізбен жүйеңіздің белсенді режимге ауысуы туралы келісіңіз;
  9. Банк өкілімен интернет-дүкеннің белсенді режимде жұмыс істеуге дайындығы жөніндегі келісімшартқа қол қойыңыз;
  10. Белсенді режимде жұмысты бастау.

SDK арқылы төлеу процесі

SDK арқылы төлеу әдісі төмендегі диаграммада көрсетілген

sequenceDiagram participant C as Клиент participant MA as Мобильді қолданба participant SDK as SDK participant SDK2 as 3DS2 SDK participant PG as Төлем шлюзі participant 3DS as 3DSS/ACS/DS C ->> 3DS: 1. register.do MA ->> SDK: 2. init(mdOrder) SDK ->> PG: 3. getSesstionStatus.do SDK ->> SDK: 4. Көрсету loop Бірнеше әрекет C ->> SDK: 5. Төлеу түймесін басу. SDK ->> PG: 6. Төлем шлюзінде есептеудің тиісті әдісі alt a. Төлем аяқталды PG->> SDK: 7а. Төлем күйі көрсетілген жауап (21-ге ауысу) else b. 3DS2 талап етіледі PG->> SDK: 7b. Төлем күйі көрсетілген жауап SDK ->> SDK2: 8. init(key) SDK2 ->> SDK: 9. құрылғы деректерін алу SDK ->> PG: 10. құрылғы деректері бар сұрау alt Frictionless PG->> SDK: 11a. ACS деректері (сәтті/сәтсіз) else Challenge Flow PG->> SDK: 11b. ACS деректері SDK ->> SDK2: 12. 3DS2 SDK жиынтығында шақыру SDK2 ->> 3DS: 13. бастапқы пішінді алу C ->> SDK2: 14. Клиент растау кодын енгізеді SDK2 ->> 3DS: 15. Кодты ACS серверіне жіберу 3DS ->> SDK2: 16. ACS тексеру күйін қайтарады SDK2 ->> SDK: 17. күйі SDK ->> PG: 18. finish3dsVer2PaymentAnonymous.do PG ->> PG: 19. төлем PG->> SDK: 20. төлем нәтижелері бойынша деректер end end SDK ->> PG: 21. getSessionStatus.do end SDK ->> PG: 22. getFinishedPaymentInfo.do SDK ->>MA: 23. Нәтижесі бар callback

1-қадам. Клиент тапсырысты мобильді қолданбада тіркеп, mdOrder (rest/register.do) алады. Байламдарды пайдалану қажет болса, міндетті түрде clientId параметрін беру керек.

2-қадам. Мобильді қолданба mdOrder жіберу арқылы мобильді SDK жиынтығын іске қосады.

3-қадам. Мобильді SDK getSessionStatus.do әдісі арқылы тапсырыс туралы барлық қажетті ақпаратты алады.

4-қадам. Мобильді SDK карта деректерін енгізу пішінін көшіреді (байламдар мен Apple Pay жүйесі арқылы орындалуы мүмкін).

5-қадам. Клиент қажетті төлем әдісін таңдайды (карта, байлам, токендер арқылы төлеу).

6-қадам. SDK төлемге сұрауды жібереді. * a. SDK карта арқылы төлеу үшін шлюз әдісін қолданады (processform.do). Картаны сақтау опциясы таңдалса, bindingNotNeeded=false беріледі, таңдалмаса – bindingNotNeeded=true беріледі (міндетті түрде false болуы керек, параметрді елемеуге болмайды). * b. SDK байлам арқылы төлеу үшін шлюз әдісін қолданады (processBindingForm.do). Осында тапсырыс нөмірі mdOrder арқылы емес, orderId арқылы берілетінін ескеріңіз. * c. SDK токен арқылы төлеу үшін (/applepay/payment.do немесе /google/payment.do) шлюз әдісін қолданады.

7-қадам. Жауап ретінде төлем мәліметтері келеді. 7a-қадам. Төлем жасалса, күйін тексеру тармағына өтеміз (21-т.). 7b-қадам. 3DS2 талап етілсе, келесі тармаққа өтеміз.

8-қадам. SDK жиынтығы 3DS2 SDK іске қосады.

9-қадам. SDK құрылғы туралы шифрланған деректерді алады.

10-қадам. SDK шлюзді қайта шақырады, бірақ осыған шифрланған деректерді қосады.

11a-қадам. Frictionless жағдайында, процесс сәтті/сәтсіз төлеммен аяқталуы мүмкін, осы кезде күйін тексеру тармағына өту қажет. 11b-қадам. Challenge Flow жағдайында, ACS серверіне өту үшін SDK жиынтығы барлық қажетті деректерді 3DS2 SDK жиынтығына өткізу үшін алады.

12-қадам. SDK растау пішімі үшін 3DS2 SDK жиынтығын шақырады.

13-қадам. Бастапқы пішінді алу үшін 3DS2 SDK жиынтығы ACS серверімен байланысады.

14-қадам. Клиент растау кодын енгізеді.

15-қадам. 3DS2 SDK жиынтығы растау кодын ACS серверіне жібереді.

16-қадам. ACS операцияның сәтті не сәтсіз аяқталғаны туралы хабарлайды.

17-қадам. 3DS2 SDK хабарландырумен SDK жиынтығын шақырады.

18-қадам. SDK finish3dsVer2PaymentAnonymous.do төлем шлюзі әдісін қолданады. Әдістің сипаттамасын осында қараңыз.

19-қадам. Төлем шлюзі қаражатты есептен шығарады.

20-қадам. SDK төлем шлюзінен жауап алады.

21-қадам. SDK тапсырыс күйін тексереді. Күйінде redirect ЖӘНЕ remainingSecs > 0 өрісі БОЛМАСА, тағы бір рет төлем жасап көруге болады.

22-қадам. SDK callback хабарландыруына жіберу үшін тапсырыс бойынша қорытынды деректерді жинайды (операцияның, атрибуттарының сәтті-сәтсіз болғаны туралы деректер).

23-қадам. SDK мобильді қолданбаға төлемнің іске асырылғаны туралы хабарлайды.

Төлемдерді өңдеу

Төлем шлюзіндегі барлық төлемдер арнайы нысандар — Тапсырыстар ретінде өңделеді. Операцияны орындау үшін Тапсырысты тіркеп, авторизация деректерін жіберу керек.

sequenceDiagram participant C as Клиент participant MA as МП participant MAB as МҚБ participant PG as ТШ participant ACS as ACS C->>+MA: 1. жеке құрылғыдағы төлем инициализациясы MA->>+MAB: 2. тапсырысты тіркеуге сұрауды жіберу MAB->>+PG: 3. тапсырысты тіркеуге сұрауды жіберу PG->>PG: 4. криптограмма мәнін ашу және стандартты тексеру процесін іске қосу PG-->>-MAB: 5. тапсырыстың бірегей идентификаторы қайтарылады MAB-->>-MA: 6. тапсырыстың бірегей идентификаторы жіберіледі MA-->>-C: 7. төлем деректерін енгізу сұрауы C->>+MA: 8. төлем деректерін енгізу MA->>MA: 9. криптограмманы жасау MA->>+MAB: 10. криптограмманы жіберу MAB->>PG: 11. криптограмманы төлем сұрауында жіберу PG->>PG: 12. криптограмма мәнін ашу және стандартты тексеру процесін іске қосу alt Картада 3DS қосылған PG-->>MAB: 13. жауапты жіберу MAB-->>-MA: 14. банк-эмитентінің ACS серверіне қайта бағыттау MA->>ACS: 15. ACS аутентификация бетінің сұрауы ACS-->>C: 16. аутентификация бетін ұсыну C->>ACS: 17. қажетті аутентификация әрекеттерін орындау ACS->>ACS: 18. клиент аутентификациясын тексеру ACS-->>MA: 19. төлем шлюзіне (PARes жауабын қоса алғанда) қайта бағыттау end PG->>PG: 20. Тапсырыс рұқсатын алу PG-->>MA: 21. сатушының соңғы URL-мекенжайына қайта бағыттау (2-қадам) MA->>+MAB: 22. тапсырыс бойынша ақпаратты сұрау MAB->>PG: 23. тапсырыс бойынша ақпарат сұрауын бастау PG-->>MAB: 24. тапсырыс бойынша ақпараты бар жауап MAB-->>-MA: 25. тапсырыс бойынша ақпаратты жіберу MA-->>C: 26. тапсырыс бойынша ақпаратты ұсыну

1-қадам. Клиент өз құрылғысындағы мобильді қолданбада (МҚ) төлем жасауды бастайды;

2-қадам. Мобидьді қолданба тіркеу сұрауын дүкеннің мобильді қолданба бэкендіне (МҚБ) жібереді;

3-қадам. Дүкеннің мобильді қолданба бэкенді (МҚБ) тапсырысты тіркеу сұрауын төлем шлюзіне жібереді;

4-қадам. Төлем шлюзі тапсырысты тіркеп, бірегей идентификаторды жасайды;

5-қадам. Төлем шлюзі 3-қадамда сұрау бойынша алынған жауап ретінде тапсырыстың бірегей идентификаторын дүкеннің мобильді қолданба бэкендіне қайтарады;

6-қадам. Дүкеннің мобильді қолданба бэкенді идентификаторды мобильді қолданбаға жібереді;

7-қадам. Мобильді қолданбада төлем деректерін енгізу пішіні көрсетіледі;

8-қадам. Клиент төлем деректерін енгізеді;

9-қадам. Мобильді қолданба шифрланған хабарды жасайды;

10-қадам. Мобидьді қолданба шифрланған хабарды дүкеннің мобильді қолданба бэкендіне жібереді;

11-қадам. Дүкеннің мобильді қолданба бэкенді шифрланған хабарды төлемді жасау сұрауымен бірге төлем шлюзіне жібереді;

12-қадам. Төлем шлюзі шифрланған хабарды ашып, стандартты тексерулерді бастайды;

13-қадам. Төлем шлюзі 11-қадамда алынған сұрауға жауапты жібереді.

14-қадам. Дүкеннің мобильді қолданба бэкенді мобильді қолданбада банк-эмитентінің ACS серверіне қайта бағыттайды;

15-қадам. Мобильді қолданба банк-эмитентінің ACS серверінде аутентификация бетін талап етеді;

16-қадам. Банк-эмитентінің ACS сервері клиентке аутентификация бетін жібереді;

17-қадам. Клиент аутентификация деректерін енгізеді;

18-қадам. Банк-эмитентінің ACS сервері карта иесінің аутентификациясын орындайды;

19-қадам. Банк-эмитентінің ACS сервері мобильді қолданбада PARes қоса алғанда, төлем шлюзіне қайта бағыттайды;

20-қадам. Аутентификация сәтті өтсе, төлем шлюзі тапсырысқа рұқсат береді;

21-қадам. Төлем шлюзі мобильді қолданбада 2-қадамда алынған интернет-дүкеннің соңғы URL-мекенжайына қайта бағыттайды;

22-қадам. Мобильді қолданба дүкеннің мобильді қолданба бэкендінен тапсырыс туралы ақпаратты сұрайды;

23-қадам. Дүкеннің мобильді қолданба бэкенді төлем шлюзінен тапсырыс туралы ақпаратты талап етеді;

24-қадам. Төлем шлюзі дүкеннің мобильді қолданба бэкендіне тапсырыс туралы ақпаратты жібереді;

25-қадам. Дүкеннің мобильді қолданба бэкенді тапсырыс туралы ақпаратты мобильді қолданбаға жібереді;

26-қадам. Мобильді қолданба орындалған әрекеттердің нәтижелерін көрсетеді.

1-қадам. Тапсырысты тіркеу

Тапсырысты тіркеу үшін сервер-сервер байланысы арқылы register.do сұрауын жіберу керек:

graph LR C(Клиент) --> А А(МҚ) --> B[МҚБ] B --> G[ТШ] style B fill:#0F0 style G fill:#0F0

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

Аты
Деректер түрі
Міндеттілігі
Сипаттама Мысал
userName
AN..30
Шартты түрде міндетті
Дүкенді тіркеу кезінде алынған сатушының жүйеге кіру мәліметтері. Аутентификация үшін пайдаланушы аты мен құпиясөз орнына токен пайдаланылса (token параметрі), userName параметрін жіберудің қажеті жоқ. merchant_api_username
password
AN..30
Шартты түрде міндетті
Дүкенді тіркеу кезінде алынған сатушының құпиясөзі. Аутентификация үшін пайдаланушы аты мен құпиясөз орнына токен пайдаланылса (token параметрі), password параметрін жіберудің қажеті жоқ. merchant_api_password
token
AN..30
Шартты түрде міндетті
Тапсырысты тіркеу үшін пайдалануға болатын ашық кілт. Аутентификация кезінде пайдаланушы аты мен құпиясөз қолданылса, token параметрін жіберудің қажеті жоқ.
orderNumber
AN..32
Шартты түрде міндетті
Дүкен жүйесіндегі тапсырыстың нөмірі (идентификаторы). Төлем шлюзінде әр дүкен үшін бірегей болады. Тапсырыс нөмірін төлем шлюзі жасаған жағдайда, осы параметрді жіберудің қажеті жоқ. 1
amount
N..12
Міндетті
Минималды бірлікпен (мысалы, тиынмен) берілген төлем сомасы. 12345
currency
N3
Міндетті емес
ISO 4217 төлем валютасының коды. Көрсетілмеген жағдайда, әдепкі мән пайдаланылады – 978. 810
returnUrl
ANS..512
Міндетті
Төлем сәтті аяқталған жағдайда, клиент қайта бағытталатын URL-мекенжайы. URL-мекенжайы, пайдаланылатын протоколды қоса алғанда, толық көрсетілуі керек. https://www.shop.com/?result=return
failUrl
ANS..512
Міндетті емес
Төлем сәтсіз аяқталған жағдайда, клиент қайта бағытталатын URL-мекенжайы. URL-мекенжайы, пайдаланылатын протоколды қоса алғанда, толық көрсетілуі керек. https://www.shop.com/?result=fail
description
ANS..512
Міндетті емес
Тапсырыстың сипаттамасы. Қаржылық есептемеге қосу үшін банк процессингінде осы өрістің тек бірінші 24 таңбасы көрсетіледі. Товар интернет-магазина
language
A2
Міндетті емес
ISO 639-1 Alpha-2 түріндегі тіл коды. Параметр көрсетілмесе, мерчант параметрлерінде әдепкі бойынша таңдалған тіл пайдаланылады. en
pageView
ANS..20
Міндетті емес
Сатып алушыға көрсетілетін төлем бетінің префиксі mobile
clientId
ANS..255
Шартты түрде міндетті
Дүкен жүйесіндегі сатып алушының идентификаторы. Байламдар функционалы үшін пайдаланылады. Байлам арқылы төлем жасаған кезде осы параметрді міндетті түрде жіберу керек, кері жағдайда, төлем сәтсіз аяқталады. 123
merchantLogin
AN..255
Міндетті емес
Тапсырысты еншілес сатушы атынан тіркеу үшін оның логинін көрсету керек. merchant_1
jsonParams
Блок
Міндетті емес
Тапсырыстың қосымша параметрлерін жіберу блогы. Толығырақ. {"backUrl":"https://ya.com/"}
jsonParams.name
ANS..255
Шартты түрде міндетті
jsonParams.value
ANS..255
Шартты түрде міндетті
bindingId
AN..255
Міндетті емес
Бұрыннан бар байламның идентификаторы. Орнатылса, тапсырыс үшін төлемді тек байлам арқылы жасауға болады, ал төлем бетінде тек CVC кодын енгізу керек.
features
ANS...255
Міндетті емес
Операцияның арнайы параметрлері. FORCE_FULL_TDS, VERIFY
email
ANS..40
Міндетті емес
Клиенттің электрондық поштасы. customer@mail.com
phone
ANS..12
Міндетті емес
Клиенттің телефон нөмірі. 79991234567

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

Аты
Деректер түрі
Міндеттілігі
Сипаттама Мысал
errorCode
N1
Міндетті
Қате коды 2
error
AN..512
Шартты түрде міндетті
Қате коды No order found
errorMessage
AN..512
Шартты түрде міндетті
Қате коды No order found
info
AN..512
Шартты түрде міндетті
Төлем жасау әрекетінің нәтижесі Payment processed, redirecting...
redirect
AN..512
Шартты түрде міндетті
Төлемнен кейінгі қайтару мекенжайы https://merchant-site.com/
termUrl
AN..512
Шартты түрде міндетті
ACS серверінде аутентификация қажет болмағанда, талап етілмейді. https://3dsec.berekebank.kz/payment/rest/finish3ds.do?lang=en
acsUrl
AN..512
Шартты түрде міндетті
ACS серверінде аутентификация қажет болмағанда, талап етілмейді. https://web.rbsuat.com/acs/auth/start.do
paReq
AN..512
Шартты түрде міндетті
ACS серверінде аутентификация қажет болмағанда, талап етілмейді. eJxVUttygjAQ/RWGdwzBBNRZ41jpdePN85A3vC4DlVUoZrGTdKMpjLquJv0s...

Сұрау мысалдары

Bash

curl -X POST "__API_PREFIX__/rest/register.do?
userName=username&
password=password&
orderNumber=1&
amount=12345&
currency=978&
returnUrl=https%3A%2F%2Fwww.merchant.com&
description=description&
language=en&
clientId=1&
jsonParams=%7B%22name%22%3A%20%22value%22%7D&
features=VERIFY"

Node.js

const request = require("request")

request.post({
  url: "__API_PREFIX__/rest/register.do",
  form: {
    userName: "username",
    password: "password",
    orderNumber: "1",
    amount: 1234,
    currency: 978,
    returnUrl: "https://www.merchant.com",
    description: "description",
    language: "en",
    clientId: "1",
    features: "VERIFY"
  }
})

PHP

<?php

$data = array(
    "userName" => "username",
    "password" => "password",
    "orderNumber" => "1",
    "amount" => 1234,
    "currency" => 978,
    "returnUrl" => "https://www.merchant.ru",
    "description" => "description",
    "language" => "en",
    "clientId" => "1",
    "features" => "VERIFY"
);

$data_string = json_encode($data);

$ch = curl_init("__API_PREFIX__/rest/register.do");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$result = curl_exec($ch);

Жауап мысалы

{
  "orderId":"70906e55-7114-41d6-8332-4609dc6590f4",
  "formUrl":"__API_PREFIX__/merchants/test/payment_ru.html?mdOrder=70906e55-7114-41d6-8332-4609dc6590f4"
}

2-қадам. Шифрланған хабарды алу

Шифрланған хабарды алу үшін Mobile SDK жиынтығын пайдалану қажет:

graph LR C(Клиент) --> A A(МҚ) --> A(МҚ) style A fill:#0F0

3-қадам. Авторизация үшін карта мәліметтерін жіберу

Авторизация үшін карта мәліметтерін жіберу кезінде сервер-сервер байланысындағы paymentOrder.do сұрауы пайдаланылады:

graph LR C(Клиент) --> A A(МҚ) --> B[МҚБ] B --> G[ТШ] style B fill:#0F0 style G fill:#0F0

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

Аты
Деректер түрі
Міндеттілігі
Сипаттама Мысал
userName
AN..30
Міндетті
Дүкенді тіркеу кезінде алынған сатушының жүйеге кіру мәліметтері. merchant_api_username
password
AN..30
Міндетті
Дүкенді тіркеу кезінде алынған сатушының құпиясөзі. merchant_api_password
seToken
AN..30
Міндетті
Карта мәліметтері бар шифрланған хабар Dduur6hWg9dfp9aXos1QC8s/C6ZVujOc3qySy0VJEP1...
language
A2
Міндетті
ISO 639-1 Alpha-2 түріндегі тіл коды. Параметр көрсетілмесе, мерчант параметрлерінде әдепкі бойынша таңдалған тіл пайдаланылады. en
ip
AN..30
Міндетті емес
Төлеушінің IP-мекенжайы 255.255.255.1
email
ANS..40
Міндетті емес
Клиенттің электрондық поштасы. customer@mail.com
bindingNotNeeded
boolean
Міндетті емес
Операциядан кейін байлам жасаудың қажеттілігі true
jsonParams
Блок
Міндетті емес
Тапсырыстың қосымша параметрлер блогы. Қосымша ақпарат. {"email":"ivanov@ivan.com", "phone":"9001234567"}
jsonParams.name
ANS..255
Шартты түрде міндетті
jsonParams.value
ANS..255
Шартты түрде міндетті

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

Аты
Деректер түрі
Міндеттілігі
Сипаттама Мысал
errorCode
N1
Міндетті
Қате коды 2
error
AN..512
Шартты түрде міндетті
Қате коды No order found
errorMessage
AN..512
Шартты түрде міндетті
Қате коды No order found
info
AN..512
Шартты түрде міндетті
Төлем жасау әрекетінің нәтижесі Payment processed, redirecting...
redirect
AN..512
Шартты түрде міндетті
Төлемнен кейінгі қайтару мекенжайы https://merchant-site.com/
termUrl
AN..512
Шартты түрде міндетті
ACS серверінде аутентификация қажет болмағанда, талап етілмейді. https://3dsec.berekebank.kz/payment/rest/finish3ds.do?lang=en
acsUrl
AN..512
Шартты түрде міндетті
ACS серверінде аутентификация қажет болмағанда, талап етілмейді. https://web.rbsuat.com/acs/auth/start.do
paReq
AN..512
Шартты түрде міндетті
ACS серверінде аутентификация қажет болмағанда, талап етілмейді. eJxVUttygjAQ/RWGdwzBBNRZ41jpdePN85A3vC4DlVUoZrGTdKMpjLquJv0s...

Сұрау мысалдары

Bash

curl -X POST "__API_PREFIX__/rest/paymentorder.do?
userName=username&
password=password&
MDORDER=f1dc9771-7244-7fea-84f4-58905e249650&
seToken=530mMcGg36q703D4LrKicakmVzwyPPJ0LpXU4iPS...ZY3NZyKrZVNM&
language=en"

Node.js

const request = require("request")

request.post({
  url: "__API_PREFIX__/rest/paymentorder.do",
  form: {
    userName: "username",
    password: "password",
    MDORDER: "f1dc9771-7244-7fea-84f4-58905e249650",
    seToken: "530mMcGg36q703D4LrKicakmVzwyPPJ0LpXU4iPSZY3NZyKrZVNM...",
    language: "en"
  }
})

PHP

<?php

$data = array(
    "userName" => "username",
    "password" => "password",
    "MDORDER" => "f1dc9771-7244-7fea-84f4-58905e249650",
    "seToken" => "530mMcGg36q703D4LrKicakmVzwyPPJ0LpXU4iPSZY3NZyKrZVNM...",
    "language": "en"
);

$ch = curl_init("__API_PREFIX__/rest/paymentorder.do");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$result = curl_exec($ch);

Жауап мысалы

{
  "errorCode":0,
  "info":"Ваш платёж обработан, происходит переадресация...",
  "acsUrl":"https://web.rbsuat.com/acs/auth/start.do",
  "termUrl":"__API_PREFIX__/rest/finish3ds.do?lang=en",
  "paReq":"eJxVUttygjAQ/RWGdwzBBNRZ41jpdUZ0tHbqYyShYCvQAB3L1zdRaWue9uzl7O7ZwOR4+LC+pKqyIh/buOfalszjQmT529=..."
}

4-қадам. Тапсырыстың күйі туралы ақпаратты алу

Тіркелген тапсырыстың күйі туралы ақпаратты алу үшін сервер-сервер байланысындағы getOrderStatusExtended.do сұрауын пайдаланыңыз:

graph LR C(Клиент) --> A A(МҚ) --> B[МҚБ] B --> G[ТШ] style B fill:#0F0 style G fill:#0F0

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

Аты
Деректер түрі
Міндеттілігі
Сипаттама Мысал
userName
AN..30
Шартты түрде міндетті
Дүкенді тіркеу кезінде алынған сатушының жүйеге кіру мәліметтері. Аутентификация үшін пайдаланушы аты мен құпиясөз орнына токен пайдаланылса (token параметрі), userName параметрін жіберудің қажеті жоқ. merchant_api_username
password
AN..30
Шартты түрде міндетті
Дүкенді тіркеу кезінде алынған сатушының құпиясөзі. Аутентификация үшін пайдаланушы аты мен құпиясөз орнына токен пайдаланылса (token параметрі), password параметрін жіберудің қажеті жоқ. merchant_api_password
token
AN..30
Шартты түрде міндетті
Тапсырысты тіркеу үшін пайдалануға болатын ашық кілт. Аутентификация кезінде пайдаланушы аты мен құпиясөз қолданылса, token параметрін жіберудің қажеті жоқ. 567uijkfdjv12erfd9vjn
orderId
ANS36
Шартты түрде міндетті
Төлем шлюзіндегі тапсырыстың бірегей идентификаторы d9378a7a-5215-7eab-9d94-d5910007cc4a
orderNumber
AN..32
Шартты түрде міндетті
Дүкен жүйесіндегі тапсырыстың бірегей нөмірі (идентификаторы). order_15
language
A2
Шартты түрде міндетті
ISO 639-1 Alpha-2 түріндегі тіл коды. Параметр көрсетілмесе, мерчант параметрлерінде әдепкі бойынша таңдалған тіл пайдаланылады. en

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

Аты
Деректер түрі
Міндеттілігі
Сипаттама Мысал
orderNumber
AN..32
Шартты түрде міндетті
Дүкен жүйесіндегі тапсырыстың нөмірі (идентификаторы).
orderStatus
N2
Шартты түрде міндетті
Осы параметрдің мәні төлем шлюзіндегі тапсырыстың күйін анықтайды.
actionCode
N3
Міндетті
Жауап коды.
actionCodeDescription
AN..512
Міндетті
Қате кодының сипаттамасы language сұрауының параметрлеріндегі тілде беріледі.
errorCode
N1
Міндетті
Қате коды 2
errorMessage
AN..512
Шартты түрде міндетті
Қате коды No order found
amount
N..20
Міндетті
Минималды бірлікпен (мысалы, центпен) берілген төлем сомасы.
currency
N3
Шартты түрде міндетті
ISO 4217 төлем валютасының коды.
date
ANS
Міндетті
Тапсырысты тіркеу күні.
orderDescription
AN..512
Шартты түрде міндетті
Тіркеу кезінде көрсетілген тапсырыстың сипаттамасы
ip
ANS..39
Міндетті
Төлеушінің IP-мекенжайы.
authRefNum
AN..24*Шартты түрде міндетті*
Төлемді тіркеу кезінде берілетін төлем авторизациясының есептік нөмірі.
refundedDate
ANS
Шартты түрде міндетті
Қаражатты қайтару күні мен уақыты.
cardAuthInfo
Блок
Шартты түрде міндетті
secureAuthInfo құрылымы мен басқа параметрлері бар
cardAuthInfo.maskedPan
NS..19
Шартты түрде міндетті
Төлемді жасау үшін пайдаланылатын жасырылған карта нөмірі.
cardAuthInfo.expiration
N6
Шартты түрде міндетті
Келесі пішімдегі картаның жарамдылық мерзімі: ЖЖЖЖАА 201912
cardAuthInfo.cardholderName
A..64
Шартты түрде міндетті
Карта иесінің аты John Doe
cardAuthInfo.approvalCode
AN6
Төлем авторизациясының коды
cardAuthInfo.chargeback
A..5
Шартты түрде міндетті
Банк әрекеттерінен кейін төлемнің клиентке қайтарылуы: true/false
cardAuthInfo.paymentSystem
N..10
Шартты түрде міндетті
Төлем жүйесінің атауы: VISA/MASTERCARD/AMEX/JCB/CUP/MIR
cardAuthInfo.product
AN..255
Міндетті
Корпоративті карталар туралы қосымша ақпарат
cardAuthInfo.paymentWay
AS..14
Шартты түрде міндетті
Төлеу әдісі (карта мәліметтерін енгізу, байлам арқылы төлем жасау және т.б.).
cardAuthInfo.secureAuthInfo
Блок
Осы элементте eci және threeDSInfo элементтері бар.
cardAuthInfo.secureAuthInfo.eci
N..4
Шартты түрде міндетті
Электрондық коммерциялық көрсеткіш.
cardAuthInfo.secureAuthInfo.threeDSInfo
Блок
Шартты түрде міндетті
Осы элемент cavv және xid параметрлерінен тұрады.
cardAuthInfo.secureAuthInfo.threeDSInfo.xid
ANS..80
Шартты түрде міндетті
Транзакцияның ECI-идентификаторы MDAwMDAwMDEzODM4MTk0MzAzMjM="
cardAuthInfo.secureAuthInfo.threeDSInfo.cavv
ANS..200*Шартты түрде міндетті*
Карта иесінің аутентификациясын тексеру мәні.
bindingInfo
Блок
Шартты түрде міндетті
Осы элементтің байлам туралы ақпараты бар
clientId
ANS..255
Шартты түрде міндетті
Тапсырысты тіркеу кезінде берілген дүкен жүйесіндегі сатып алушының идентификаторы
bindingId
ANS..255
Шартты түрде міндетті
Тапсырысты жасау кезінде жасалған немесе төлем жасау үшін пайдаланылатын байлам идентификаторы
authDateTime
ANS
Шартты түрде міндетті
Авторизацияның күні/уақыты
terminalId
AN..10
Шартты түрде міндетті
Терминал идентификаторы
paymentAmountInfo
Блок
Шартты түрде міндетті
Осы элементте сомалар бойынша ақпарат бар.
approvedAmount
N..20
Шартты түрде міндетті
Ұстап қалу сомасы (екі кезеңді төлемдерде пайдаланылады)
depositedAmount
N..20
Шартты түрде міндетті
Есептен шығару үшін расталған сома
refundedAmount
N..20
Шартты түрде міндетті
Қайтарылатын сома
paymentState
A..10
Шартты түрде міндетті
Төлемнің күйі
feeAmount
N..20
Шартты түрде міндетті
Комиссия сомасы.
bankInfo
Блок
Шартты түрде міндетті
Осы элементте картаның банк-эмитенті туралы ақпарат бар
bankInfo.bankName
A..200
Шартты түрде міндетті
Банк-эмитент атауы.
bankCountryCode
AN..4
Шартты түрде міндетті
Эмитент банктің ел коды.
bankCountryName
AN..160
Шартты түрде міндетті
language сұрау параметрінде берілген тілде немесе, тіл көрсетілмеген жағдайда, пайдаланушы тілінде берілген банк-эмитент елінің атауы
payerData
Блок
Шартты түрде міндетті
Осы элементте төлеуші туралы ақпарат бар
email
AN..255
Шартты түрде міндетті
Клиенттің электрондық поштасы.

Сұрау мысалдары

Bash
curl -X POST "__API_PREFIX__/rest/getOrderStatusExtended.do?
orderId=b9054496-c65a-4975-9418-1051d101f1b9&
language=en"
Node.js
const request = require("request")
request.post({
  url: "__API_PREFIX__/rest/getOrderStatusExtended.do",
  form: {
    orderId: "b9054496-c65a-4975-9418-1051d101f1b9",
    language: "en"
  }
})
PHP
<?php

$data = array(
    "orderId" => "b9054496-c65a-4975-9418-1051d101f1b9",
    "language" => "en"
);

$ch = curl_init("__API_PREFIX__/rest/getOrderStatusExtended.do");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$result = curl_exec($ch);

Жауап мысалы

{
  "expiration":"201512",
  "cardholderName":"NIKOLA TESLA",
  "depositAmount":789789,
  "currency":"978",
  "approvalCode":"123456",
  "authCode":2,
  "clientId":"69",
  "bindingId":"07a90a5d-cc60-4d1b-a9e6-ffd15974a74f",
  "ErrorCode":"0",
  "ErrorMessage":"Success",
  "OrderStatus":2,
  "OrderNumber":"ordernumber_42",
  "Pan":"411111**1111",
  "Amount":789789
}

Тапсырыстан бас тарту (reversal)

Тапсырыстан бас тарту үшін сервер-сервер байланысындағы reverse.do сұрауын пайдаланыңыз:

graph LR C(Клиент) --> A(МҚ) A --> B[МҚБ] B --> G[ТШ] style B fill:#0F0 style G fill:#0F0
graph LR B[МҚБ] --> G[ТШ] style B fill:#0F0 style G fill:#0F0

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

Аты
Деректер түрі
Міндеттілігі
Сипаттама Мысал
userName
AN..30
Шартты түрде міндетті
Дүкенді тіркеу кезінде алынған сатушының жүйеге кіру мәліметтері. Аутентификация үшін пайдаланушы аты мен құпиясөз орнына токен пайдаланылса (token параметрі), userName параметрін жіберудің қажеті жоқ. merchant_api_username
password
AN..30
Шартты түрде міндетті
Дүкенді тіркеу кезінде алынған сатушының құпиясөзі. Аутентификация үшін пайдаланушы аты мен құпиясөз орнына токен пайдаланылса (token параметрі), password параметрін жіберудің қажеті жоқ. merchant_api_password
orderId
ANS36
Шартты түрде міндетті
Төлем шлюзіндегі тапсырыстың бірегей идентификаторы d9378a7a-5215-7eab-9d94-d5910007cc4a
jsonParams
Блок
Міндетті емес
Тапсырыстың қосымша параметрлерін жіберу блогы. Толығырақ. {"email":"ivanov@ivan.com", "phone":"9001234567"}
jsonParams.name
ANS..255
Шартты түрде міндетті
jsonParams.value
ANS..255
Шартты түрде міндетті
language
A2
Міндетті емес
ISO 639-1 Alpha-2 түріндегі тіл коды. Параметр көрсетілмесе, мерчант параметрлерінде әдепкі бойынша таңдалған тіл пайдаланылады. en

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

Аты
Деректер түрі
Міндеттілігі
Сипаттама Мысал
errorCode
N3
Міндетті
Қате коды 2
errorMessage
AN..512
Шартты түрде міндетті
Қате сипаттамасы No order found

Сұрау мысалдары

Bash

curl -X POST "__API_PREFIX__/rest/reverse.do?
  orderId=b9054496-c65a-4975-9418-1051d101f1b9&
  language=en"

Node.js

const request = require("request")
request.post({
  url: "__API_PREFIX__/rest/reverse.do",
  form: {
    orderId: "b9054496-c65a-4975-9418-1051d101f1b9",
    language: "en"
  }
})

PHP

<?php

$data = array(
    "orderId" => "b9054496-c65a-4975-9418-1051d101f1b9",
    "language" => "en"
);

$ch = curl_init("__API_PREFIX__/rest/reverse.do");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$result = curl_exec($ch);

Жауап мысалы

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

Тапсырыс бойынша қаражатты қайтару (refund)

Қайтару үшін сервер-сервер байланысындағы refund.do пайдаланыңыз:

graph LR C(Клиент) --> A(МҚ) A --> B[МҚБ] B --> G[ТШ] style B fill:#0F0 style G fill:#0F0
graph LR B[МҚБ] --> G[ТШ] style B fill:#0F0 style G fill:#0F0

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

Аты
Деректер түрі
Міндеттілігі
Сипаттама Мысал
userName
AN..30
Шартты түрде міндетті)
Дүкенді тіркеу кезінде алынған сатушының жүйеге кіру мәліметтері. Аутентификация үшін пайдаланушы аты мен құпиясөз орнына токен пайдаланылса (token параметрі), userName параметрін жіберудің қажеті жоқ. merchant_api_username
password
AN..30
Шартты түрде міндетті)
Дүкенді тіркеу кезінде алынған сатушының құпиясөзі. Аутентификация үшін пайдаланушы аты мен құпиясөз орнына токен пайдаланылса (token параметрі), password параметрін жіберудің қажеті жоқ. merchant_api_password
orderId
ANS36
Шартты түрде міндетті)
Төлем шлюзіндегі тапсырыстың бірегей идентификаторы d9378a7a-5215-7eab-9d94-d5910007cc4a
amount
N..12
Міндетті
Минималды бірлікпен берілген қайтару сомасы. 8800
jsonParams
Блок
Міндетті емес
Тапсырыстың қосымша параметрлерін жіберу блогы. Толығырақ. {"email":"ivanov@ivan.com", "phone":"9001234567"}
jsonParams.name
ANS..255
Шартты түрде міндетті
jsonParams.value
ANS..255
Шартты түрде міндетті
language
A2
Міндетті емес
ISO 639-1 Alpha-2 түріндегі тіл коды. Параметр көрсетілмесе, мерчант параметрлерінде әдепкі бойынша таңдалған тіл пайдаланылады. en

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

Аты
Деректер түрі
Міндеттілігі
Сипаттама Мысал
errorCode
N3, Міндетті
Қате коды 2
errorMessage
AN..512
Шартты түрде міндетті
Қате сипаттамасы No order found

Арнайы сипаттарды пайдалану (features)

Операцияларды орындау үшін арнайы параметрлерді пайдалануға болады:

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

Сұрау мысалдары

Bash

curl -X POST "__API_PREFIX__/rest/refund.do?
  amount=500&
  currency=978&
  language=en&
  orderId=5e97e3fd-1d20-4b4b-a542-f5995f5e8208"

Node.js

const request = require("request")

request.post({
  url: "__API_PREFIX__/rest/refund.do",
  form: {
    amount: "500",
    currency: "978",
    language: "en",
    orderId: "5e97e3fd-1d20-4b4b-a542-f5995f5e8208"
  }
})

PHP

<?php

$data = array(
    "amount" => "500",
    "currency" => "978",
    "orderId" => "5e97e3fd-1d20-4b4b-a542-f5995f5e8208",
    "language" => "en"
  );

$ch = curl_init("__API_PREFIX__/rest/refund.do");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$result = curl_exec($ch);

Жауап мысалы

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

API арқылы 3DS2 тапсырысын аяқтау

API арқылы 3DS2 тапсырысын аяқтау үшін Finish3dsVer2PaymentAnonymous.do әдісі пайдаланылады.

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

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

threeDSServerTransId String 3DS серверінде жасалған транзакцияның идентификаторы.
Иә

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

threeDSSDKAppId String SDK бірегей идентификаторы.
Иә (SDK болса)

threeDSSDKTransId String SDK жиынтығындағы транзакцияның бірегей идентификаторы.
Иә (SDK болса)

threeDSSDKEncData String Құрылғы туралы шифрланған деректер.
Иә (SDK болса)

threeDSSDKEphemPubKey String Эфемерлі кілттің ортақ бөлігі. ACS серверімен сеансты орнату үшін қажет.

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

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

threeDSServerTransId String 3DS серверінде жасалған транзакцияның идентификаторы.
Иә (SDK болса)

threeDSSDKKey String Құрылғы деректерін шифрлау кілті.
Иә (SDK болса)

threeDSAcsSignedContent String SDK үшін қол қойылған мазмұн, мазмұнға ACS серверінің URL-мекенжайы кіреді.
Иә (SDK болса)

threeDSDsTransID String ХТЖ ауқымындағы транзакцияның бірегей идентификаторы.
Иә (SDK болса)

threeDSSDKKey String Құрылғы деректерін шифрлау кілті.

Қосымша ақпарат

Features қолдану

Операцияларды орындау үшін арнайы параметрлерді пайдалануға болады:

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

jsonParams пайдалану

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

Қосымша параметрлер келесі жолмен беріледі {"<name1>":"<value1>",...,"<nameN>":"<valueN>"} Осы өрістер кейін тізілімде көрсетілуі үшін банк процессингіне жіберілуі мүмкін.

Сонымен қатар, қосымша ретінде келесі параметрлерді көрсетуге болады:

Аты
Деректер түрі
Міндеттілігі
Сипаттама Мысал
email
ANS..255
Шартты түрде міндетті
Төлем бетінде көрсетілетін электрондық пошта. Сатушы параметрлерінде клиенттен хабарландыруларды алу параметрі таңдалған болса, клиенттің электрондық поштасын көрсету керек. {"email": "client_mail@email.com"}
phone
AN..11
Міндетті)
Клиенттің телефон нөмірі – төлем бетінде көрсетіледі {"phone": "9001234567"}
backToShopUrl
ANS..255
Міндетті емес)
Сатып алушыға интернет-дүкенге оралуға мүмкіндік беретін түймені көрсету үшін осы параметрде дүкеннің мекенжайын көрсету қажет. {"backToShopUrl": "http://shop.com"}
backToShopName
ANS..255
Шартты түрде міндетті
Сатып алушыға интернет-дүкенге оралуға мүмкіндік беретін түйменің атауы (backToShopUrl параметрі пайдаланылған жағдайда) {"backToShopName": "Cancel"}

Тапсырыстың ықтимал күйлері (orderStatus)

Мәні Сипаттама
0 Тапсырыс тіркелген, бірақ төленбеген
1 Алдын ала авторизацияланған сома ұсталған (екі кезеңді төлемдер үшін)
2 Тапсырыс сомасының толық авторизациясы орындалды
3 Авторизациядан бас тартылды
4 Тапсырыс қайтарылды
5 Банк-эмитентінің ACS сервері арқылы авторизация іске қосылды
6 Авторизация орындалмады

errorCode мәндері

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

Қауіпсіздік талаптары

Осы құжатта сипатталған функциялар қауіпсіздік талаптарына сәйкес орындалуы керек:

  1. Карта мәліметтерін ашық түрде жіберуге қатаң тиым салынады;
  2. Шифрлау клиент құқрылғысында орындалуы тиіс;
  3. Шифрланған хабарларды төлемді жасағаннан кейін сақтауға және/немесе қайта пайдалануға тиым салынады.
  4. Картаны сақтау PCI-DSS талаптарына сәйкес орындалуы тиіс. Байлам жасау үшін сақталатын карта мәліметтері (тиісті идентификаторлар) төлем шлюзінде сақталады.
  5. 3DSec аутентификациясы үшін эмитент ACS серверінің веб-парақшасы клиенттерге мобильді платформаның WebView көрінісі арқылы көрсетіледі. ACS бетінде сақталуы мүмкін мекенжай жолағының, сондай-ақ, белсенді элементтердің URL шақырулары өшірілуі керек;

PCI DSS қауіпсіздік талаптары

PCI DSS құжаттамасында шифрланған хабарларды пайдалану жолы төмендегідей сипатталады:

яғни, төлем деректерін үшінші тараптар өңдейді, бірақ дүкен сайты да карта мәліметтерінің қауіпсіздігі үшін жауапты болады.

Стандарттарға сәйкес келуі үшін, интернет-дүкен SAQ-EP талаптарына сай болып, тоқсан сайын ASV растауы алуы керек. Өзге талаптар қойылмайды.

1: Әдепкі бойынша, банк процессингіне келесі өрістер жіберіледі:

orderNumber – дүкен жүйесіндегі тапсырыс идентификаторы,

description – тапсырыс сипаттамасы (ең көбі, 24 таңба, рұқсат етілмеген таңбалар: %, +, күймешені қайтару \r және жолды түсіру \n).

Санаттар:
eCommerce SDK
Санаттар
Іздеу нәтижелері