Төлем беті
Тіркеу кезінде сізге төлем жасау кезінде пайдалану қажет деректер беріледі:
| TerminalID | Дүкен сәйкестендіргіші |
| ClientID | Клиент сәйкестендіргіші |
| ClientSecret | Құпия кілт |
Төлем жасау үшін токенді алу (әр операция үшін түпнұсқа токенді алу және пайдалану қажет)
TEST URL POST https://test-epay-oauth.epayment.kz/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: "67e34d63-102f-4bd1-898e-370781d0074d" 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.pay() әдісін шақыруыңыз керек.
URL TEST: https://test-epay.epayment.kz/payform/payment-api.js URL PROD: https://epay.homebank.kz/payform/payment-api.js
halyk.pay () әдісіне келесі параметрлерді беру керек.
var createPaymentObject = function(auth, invoiceId, amount) { var paymentObject = { invoiceId: "000000001", invoiceIdAlt:"8564546", 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: "67e34d63-102f-4bd1-898e-370781d0074d", amount: 100, data: "{\"statement\":{\"name\":\"Tester Petrov\",\"invoiceID\":\"80000016\"}}", currency: "KZT", phone: "77777777777", name:"Tester Petrov", email: "example@example.com" }; paymentObject.auth = auth; return paymentObject; }; halyk.pay(createPaymentObject(auth, invoiceId, amount));
| Жолы | Сипаттамасы | Міндетті |
|---|---|---|
| invoiceId | Тапсырыс нөмірін коммерсант жасайды, әрбір жаңа тапсырыс үшін тапсырыс нөмірі бірегей, 6-дан 15 цифрға дейін болуы керек. Егер сіздің тапсырыс нөміріңізде 6-дан астам таңба болса, онда бірегейлік қосымша соңғы 6 таңба бойынша сақталуы керек | Міндетті |
| invoiceIdAlt | Қосымша тапсырыс нөмірін коммерсант жасайды, әрбір жаңа тапсырыс үшін тапсырыс нөмірі бірегей, 6-дан 15 цифрға дейін болуы керек. | Міндетті емес |
| backLink | Төлем сәтті болған кезде дүкенге оралу сілтемесі | Міндетті |
| failureBackLink | Төлем сәтсіз болған кезде дүкенге оралу сілтемесі | Міндетті емес |
| postLink | Төлем туралы хабарлама | Міндетті |
| failurePostLink | Сәтсіз төлем туралы хабарлама, егер толтырылмаған болса, онда ақпарат postlink-те көрсетілген мекенжайға жіберіледі | Міндетті емес |
| language | Тілі rus/kaz/eng | Міндетті емес |
| description | Тапсырыс сипаттамасы, рұқсат етілген таңбалар саны 125 байт | Міндетті |
| accountId | дүкен клиентінің сәйкестендіргішін көрсетуге арналған жол, сақталған карталар тізімін алу сервисі үшін картаны сақтаған кезде (cardSave:true) міндетті болып табылады | Міндетті емес |
| terminal | Дүкен сәйкестендіргіші | Міндетті |
| amount | Тапсырыс сомасы | Міндетті |
| currency | Валюта | Міндетті |
| phone | Клиенттің телефон нөмірі | Міндетті емес |
| name | Клиенттің Аты жөні | Міндетті емес |
| Клиенттің email-ы | Міндетті емес | |
| auth | Токен / толығымен объект ретінде беріледі, токеннің сұрау салуы бойынша epay-ден алынған барлық деректер | Міндетті |
| data | қосымша өріс толтырылған кезде есепте таратылады | Міндетті емес |
Postlink
Post Link жолында көрсетілген URL-ға хабарлама жіберіледі. Егер сіз postlink алмаған болсаңыз немесе ePay жүйесінен сұрау салуды тексеру үшін Транзакция мәртебесі сервисін пайдалануды ұсынамыз
Сәтті болған жағдайдағы жауап:
{
"acountId":"9398101000014416472",
"amount":800,
"approvalCode":"178644",
"cardId":"4cd44b44-4445-14a6-e063-1b01040a44c4",
"cardMask":"440043...0128",
"cardType":"VISA",
"code":"ok",
"currency":"KZT",
"dateTime":"2025-02-12T09:42:51.960781107+05:00",
"description":"ONAY!",
"email":"",
"id":"a1bd0589-3ac9-4a2e-a31d-67a33f453a2b",
"invoiceId":"33456850",
"ip":"91.215.96.94",
"ipCity":"",
"ipCountry":"",
"ipDistrict":"",
"ipLatitude":0,
"ipLongitude":0,
"ipRegion":"",
"issuer":"JSC KASPI BANK",
"language":"RUS",
"name":"",
"phone":"77775903128",
"reason":"success",
"reasonCode":0,
"reference":"504355533594",
"secret_hash":"ZitLN1VLd21hUnFOSTJKbmg0UVdYVm8z",
"secure":"yes",
"secureDetails":"F",
"terminal":"67e34d63-102f-4bd1-898e-370781d0074d"
}
Сәтсіздік болған жағдайдағы жауап:
{
"accountId":"9398101000006384023",
"amount":200,
"approvalCode":"",
"cardId":"",
"cardMask":"",
"cardType":"",
"code":"error",
"currency":"KZT",
"dateTime":"2025-02-12T09:42:53.036675+05:00",
"description":"ONAY!",
"email":"",
"id":"03c6de6e-0028-42fa-9199-561d78e59789",
"invoiceId":"33456910",
"ip":"95.82.119.153",
"ipCity":"Almaty",
"ipCountry":"Kazakhstan",
"ipDistrict":"",
"ipLatitude":43.2638,
"ipLongitude":76.9293,
"ipRegion":"",
"issuer":"JSC KASPI BANK",
"language":"RUS",
"name":"",
"phone":"77777777777",
"reason":"Authentication failed",
"reasonCode":473,
"reference":"",
"secret_hash":"T1hDaWhlay9NUysxRTA2djFFZnpTVDNU",
"secure":"no",
"secureDetails":"",
"terminal":"67e34d63-102f-4bd1-898e-370781d0074d"
}