Корпоративтік картадан клиенттің картасына қаражат шығару
Нақты төлемдерді іске асырар алдында, коммерсант жүйеге тіркелу үшін корпоративтік картаны (IBAN шот нөмірі) және TerminalID нөмірін хабарлауы керек. Сұрау салуды dev.epay@halykbank.kz мекенжайына жіберу керек
Төлем жасау үшін токенді алу (әр операция үшін түпнұсқа токенді алу және пайдалану қажет)
TEST URL POST https://testoauth.homebank.kz/epay2/oauth2/token PROD URL POST https://epay-oauth.homebank.kz/oauth2/token
Сұрау салу
Body: form-data
grant_type: "client_credentials" scope: " webapi usermanagement email_send verification statement statistics payment" client_id: "test" client_secret: "yF587AV9Ms94qN2QShFzVR3vFnWkhjbAK3sG" invoiceID: "000000001" amount: 100 currency: "KZT" terminal: "c36b282f-6819-4d4f-85df-a4bdc8a8f703" postLink: "" failurePostLink: ""
| Жолы | Сипаттамасы |
|---|---|
| grant_type | авторизация түрі, төлем жасау үшін client_credentials түрі қолданылады |
| scope | ресурс |
| client_id | Коммерсанттың сәйкестендіргішін кабинеттен алуға болады, тіркеу кезінде беріледі |
| client_secret | Коммерсанттың кіру кілтін кабинеттен алуға болады, тіркеу кезінде беріледі |
| invoiceID | Тапсырыс нөмірін коммерсант жасайды, әрбір жаңа тапсырыс үшін тапсырыс нөмірі бірегей, 6-дан 15 цифрға дейін болуы керек. Егер сіздің тапсырыс нөміріңізде 6-дан астам таңба болса, онда бірегейлік қосымша соңғы 6 таңба бойынша сақталуы керек |
| amount | Тапсырыс сомасы |
| currency | Валюта |
| terminal | Сату орнының сәйкестендіргішін кабинеттен алуға болады, тіркеу кезінде беріледі |
| postLink | міндетті параметрлер, сәтті болған жағдайда postlink жіберу |
| failurePostLink | міндетті емес параметрлер, сәтсіз болған жағдайда postlink жіберу |
Жауап
{
"access_token":"DCEB8O_ZM5U7SO_T_U5EJQ",
"expires_in": 7200,
"refresh_token":"",
"scope":" webapi usermanagement email_send verification statement statistics payment",
"token_type":"Bearer"
}
| Жолы | Сипаттамасы |
|---|---|
| access_token | Операцияны жүргізуге арналған токен |
| expires_in | Токеннің жарамдылық мерзімі |
| refresh_token | Авторизацияның бұл түрінде қолданылмайды |
| scope | Ресурс, төлем жүргізу үшін ресурс пайдаланылады |
| token_type | Авторизация түрі |
Қаражат шығару бетіне қайта бағыттау
Бетте JS-кітапханасын қосып, онда halyk.oct() әдісін шақыруыңыз керек.
URL TEST: https://test-epay.epayment.kz/payform/payment-api.js URL PROD: https://epay.homebank.kz/payform/payment-api.js
halyk.oct() әдісіне келесі параметрлерді беру керек.
var createPaymentObject = function(auth, invoiceId, amount) { var paymentObject = { invoiceId: "000000001", backLink: "https://example.kz/success.html", failureBackLink: "https://example.kz/failure.html", postLink: "https://example.kz/", failurePostLink: "https://example.kz/order/1123/fail", language: "rus", description: "Интернет дүкенде төлеу", accountId: "testuser1", terminal: "c36b282f-6819-4d4f-85df-a4bdc8a8f703", amount: 100, data: "{\"statement\":{\"name\":\"Tester Petrov\",\"invoiceID\":\"80000016\"}}", currency: "KZT", phone: "77777777777", email: "example@example.com" paymentObject.auth = auth; return paymentObject; }; halyk.pay(createPaymentObject(auth, invoiceId, amount));
| Жолы | Сипаттамасы |
|---|---|
| invoiceId | Тапсырыс нөмірін коммерсант жасайды, әрбір жаңа тапсырыс үшін тапсырыс нөмірі бірегей, 6-дан 15 цифрға дейін болуы керек. Егер сіздің тапсырыс нөміріңізде 6-дан астам таңба болса, онда бірегейлік қосымша соңғы 6 таңба бойынша сақталуы керек |
| backLink | Төлем сәтті болған кезде дүкенге оралу сілтемесі |
| failureBackLink | Төлем сәтсіз болған кезде дүкенге оралу сілтемесі |
| postLink | Төлем туралы хабарлама |
| failurePostLink | Сәтсіз төлем туралы хабарлама, егер толтырылмаған болса, онда ақпарат postlink-те көрсетілген мекенжайға жіберіледі |
| language | Тілі rus/kaz/eng |
| description | Тапсырыс сипаттамасы, рұқсат етілген таңбалар саны 125 байт |
| accountId | Дүкен клиентінің сәйкестендіргішін көрсетуге арналған міндетті емес жол |
| terminal | Дүкен сәйкестендіргіші |
| amount | Тапсырыс сомасы |
| currency | Валюта |
| phone | Клиенттің телефон нөмірі (міндетті емес) |
| Клиенттің email-ы (міндетті емес) | |
| auth | Токен / толығымен объект ретінде беріледі, токеннің сұрау салуы бойынша epay-ден алынған барлық деректер |
| data | Қосымша жол толтырылған кезде есепте таратылады (міндетті емес) |
Postlink
*Post Link жолында көрсетілген URL-ға хабарлама жіберіледі. Егер сіз postlink алмаған болсаңыз Транзакция мәртебесі сервисін пайдалануды ұсынамыз. *
Сәтті болған жағдайдағы жауап:
{
"id": "3e215f23-8378-4a22-c33b-324sd2c3f5",
"amount": 100,
"accountID": "epayment.KZ",
"currency": "KZT",
"email": "email@gmail.com",
"description": "TEST p2p",
"reference": "306177717717",
"invoiceID": "000000001",
"intReference": "",
"terminalID": "c36b282f-6819-4d4f-85df-a4bdc8a8f703",
"senderCardID": "",
"senderCardPAN": "440563...11111",
"senderCardType": "VISA",
"senderTransferType": "TYPEPAN",
"senderCardIssuer": "HALYK BANK",
"receiverCardID": "",
"receiverCardPAN": "400303...0011",
"receiverCardType": "VISA",
"receiverTransferType": "TYPEPAN",
"receiverCardIssuer": "HALYK BANK",
"secure": false,
"reason": "Successfully completed",
"reasonCode": "00",
"name": " ",
"phone": "",
"datetime": "2023-03-02T10:33:26.11129789+06:00",
"status": "ok",
"data": "",
"post_link": "https://epay.homebank.kz/payform",
"failure_post_link": "https://testmerchant/order/000000001/fail",
"p2pType": "OCT"
}
Сәтсіздік болған жағдайдағы жауап:
{
"id": "3e215f23-8378-4a22-c33b-324sd2c3f5",
"amount": 10,
"accountID": "epayment.KZ",
"currency": "KZT",
"email": "email@gmail.com",
"description": "TEST p2p",
"reference": "306177717717",
"invoiceID": "000000001",
"intReference": "",
"terminalID": "c36b282f-6819-4d4f-85df-a4bdc8a8f703",
"senderCardID": "",
"senderCardPAN": "",
"senderCardType": "",
"senderTransferType": "",
"senderCardIssuer": "",
"receiverCardID": "",
"receiverCardPAN": "",
"receiverCardType": "",
"receiverTransferType": "",
"receiverCardIssuer": "",
"secure": false,
"reason": "Restricted card",
"reasonCode": "489",
"name": "",
"phone": "",
"datetime": "2023-03-02T14:50:36.397155787+06:00",
"status": "error",
"data": "",
"post_link": "https://epay.homebank.kz/payform",
"failure_post_link": "https://testmerchant/order/000000001/fail",
"p2pType": "OCT"
}