Шифрланған деректермен Google Pay арқылы төлем сұрауын жіберуге арналған құжаттама (PAYMENT_GATEWAY):
Төлем жүргізу үшін токен алу (әрбір операция үшін түпнұсқа токен алу және пайдалану қажет)
TEST URL POST https://testoauth.homebank.kz/epay2/oauth2/token
PROD URL POST https://epay-oauth.homebank.kz/oauth2/token
Сұрау салу:
grant_type: "client_credentials" scope: "webapi usermanagement email_send verification statement statistics payment" client_id: "ClientID" client_secret: "clientSecret" InvoiceID: "Order number" amount: 100 currency: "KZT" terminal: "67e34d63-102f-4bd1-898e-370781d0074d"
Жауап:
{
"access_token": "DCEB8O_ZM5U7SO_T_U5EJQ",
"expires_in": 7200,
"scope": "webapi usermanagement email_send verification statement statistics payment",
"token_type": "Bearer"
}
Кіріс параметрлері:
Жол атауы | Cипаттама | Міндетті/міндетті емес |
---|
amount | Tөлем сомасы | Mіндетті |
currency | Bалюта | Mіндетті |
name | Kарта ұстаушының аты | Mіндетті |
cryptogram | Төлем картасының криптограммаланған параметрлері | Mіндетті |
invoiceID | Тапсырыс нөмірін коммерсант береді, ол әрбір жаңа тапсырыс үшін бірегей болуы тиіс, 6 саннан 15 санға дейін. Егер сіздің тапсырыс нөміріңіздің саны 6 таңбадан асатын болса, онда бірегейлік соңғы 6 таңба бойынша қосымша сақталуы тиіс | Mіндетті |
invoiceIdAlt | Тапсырыс нөмірін коммерсант береді, ол әрбір жаңа тапсырыс үшін бірегей болуы тиіс, 6 саннан 15 санға дейін | Mіндетті емес |
description | Бұл жолда төлем жасалатын тауарлар немесе қызметтер туралы ақпарат беріледі | Mіндетті |
accountId | Коммерсант жүйесіндегі клиенттің идентификаторы немесе коммерсанттың қарауы бойынша басқа қосымша параметр | Mіндетті емес |
email | Kлиенттің email | Mіндетті емес |
phone | Kлиенттің телефоны | Mіндетті емес |
postLink | Авторизация нәтижесін дүкенге жіберуге арналған линк | Mіндетті |
failurePostLink | Сәтсіз авторизация нәтижесін немесе қате туралы ақпаратты дүкенге жіберуге арналған линк. | Mіндетті емес |
cardSave | Kартаны сақтау параметрі, true – картаны сақтау, false - сақтамау, boolean type | Mіндетті |
data | Қосымша жол толтырылған кезде есепте таратылады | Mіндетті емес |
Төлем жүргізу
Әдіс: POST
Сұрау салу денесі:
{
"amount": 10,
"currency": "KZT",
"name": "Test test",
"terminalId": "b861ab50-8387-46c3-be6e-f439d4492c3c",
"invoiceId": "80000148",
"description": "Оплата",
"accountId": "",
"email": "nemesis_311@gmail.com",
"phone": "+77078071180",
"backLink": "http://example/backLink",
"failureBackLink": "http://example/failureBackLink",
"postLink": "http://example/postLink",
"failurePostLink": "http://example/failurePostLink",
"cardSave": false,
"useBonus": false,
"paymentType": "googlePay",
"googlePay": {
"apiVersionMinor": 0,
"apiVersion": 2,
"paymentMethodData": {
"description": "Visa •••• 1111",
"tokenizationData": {
"type": "PAYMENT_GATEWAY",
"token": "{\"signature\":\"MEQCIG0Pt0VSb8/W00fzbPLtO5z3DYNrG1IrU94YI0U3VZw3AiAekJRW2Bcq1+hPbcbBniw9vRNSH2w3+qFX5EcQwkJo1w\\u003d\\u003d\",\"intermediateSigningKey\":{\"signedKey\":\"{\\\"keyValue\\\":\\\"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEwIIrniC3/DfJjejVaHVsBGZLO9LW9ggLXWaoEVnpZuFgLSH4qEanNlHvZkr6A04aVq/7HgYaxLkotk6ZKSr3qQ\\\\u003d\\\\u003d\\\",\\\"keyExpiration\\\":\\\"1695271732552\\\"}\",\"signatures\":[\"MEQCIFurLZqmGGY9jZ+ZL+8iHtdxFRY3VMdKwcxrO0tunvuoAiBywEKS7Q2qwh4SmjY99tNaVYrfr8/Cygd8c/0XoP2K4Q\\u003d\\u003d\"]},\"protocolVersion\":\"ECv2\",\"signedMessage\":\"{\\\"encryptedMessage\\\":\\\"5XrIV3etzcSBdH8fgO+eCIxH3jWrGSUPPVXci3s22nD5Ab+9EtihPz/Zc3ODVwINNWOtkqfJxiu3UUaz1LbICfM1I2rhqyANCc35fK+Fd/JZNQv7eFNVVNxVdt2eBiQxPod+2K5v4jCJJkGevdbqQUW1OncL1QXpt8e/dNj1o7CTGCxxV6iN+8DjAo4xyvZJqKsjA3PzzKDhfNdM6zohKcgNqtPP30uI8EGK1PdGQDFCuPYFRYpKCVOx3qibRuI5x46pHV86GLUmMDbETSNOIYnwpOu0RVcMLdb74xQ9awoiXILSSM/IGhQUJnxeUbckzYsqwbZ88Ks6kmbHmCs3oHcgL4Lblt7hE07vW1Y1VJQ05/oTcT98R9WWzKeOTSvA8ru7o3oUxdwww1QIb9VytOz2IbGiI+ZepGehImTxsOUJkG3QwoFevDVDV67cf6KfTxUd97OarcE6Nk3crwO+GIASJw/U5lycj74HRd/h25Fme8TFf6BMmcOHUezy6Tx+iHO5j3P0QMDT0a4bVb8wuUPa0CE1DQH75E+EVSUb2tmRURkqDrDKCN6GP2VCvxqsSzV26zZbl8Xv\\\",\\\"ephemeralPublicKey\\\":\\\"BOmDg7vgShCeyoYT5EgzyV8NGdh3AbDe1yHmf2WRv+tKYlfjd8bhGJnc1hkLVjY80VKFBxUw2eDhqd1bGzXoxQ0\\\\u003d\\\",\\\"tag\\\":\\\"I9P/hCUvJTg+cVO7H+snaOAtACB9J0gySh/LEih0yH8\\\\u003d\\\"}\"}"
},
"type": "CARD",
"info": {
"cardNetwork": "VISA",
"cardDetails": "1111"
}
}
}
}
Сұрау салу жолы:
amount | Currency жолында көрсетілген валютамен төлем сомасы |
---|
currency | ISO 4217 форматындағы төлем валютасы (мысалы, қазақстандық теңге үшін «KZT») |
name | Төлеушінің аты |
terminalId | Төлемді өңдеуге арналған терминал немесе дүкен идентификаторы |
invoiceId | Төлемге байланысты шот немесе тапсырыс идентификаторы |
description | Төлемнің сипаттамасы |
accountId | Төлеуші аккаунтының идентификаторы (егер қолданылса) |
email | Төлеушінің электрондық поштасының мекенжайы. |
phone | Төлеушінің телефон нөмірі |
backLink | Төлем сәтті аяқталғаннан кейін пайдаланушыны қайта бағыттауға арналған URL |
FailureBacklink | Төлем сәтсіз аяқталған жағдайда пайдаланушыны қайта бағыттауға арналған URL |
postlink | Төлем провайдері сәтті аяқталғаннан кейін төлем мәртебесі туралы кері байланыс жіберетін URL |
failurePostlink | Төлем провайдері сәтсіз аяқталған жағдайда төлем мәртебесі туралы кері байланыс жіберетін URL |
cardSave | Болашақ төлемдер үшін төлеуші картасының деректерін сақтау қажет пе, жоқ па, соны көрсететін жалауша (бұл жағдайда false мәні орнатылған) |
useBonus | Төлем жасау үшін төлеушінің бонустық қаражатын пайдалану керек пе, жоқ па, соны көрсететін жалауша (бұл жағдайда false мәні орнатылған). |
paymentType | Төлем түрі, бұл жағдайда googlePay мәні орнатылған |
googlePay | Google Pay пайдалану арқылы төлем туралы ақпаратты қамтитын объект |
apiVersionMinor | API Google Pay нұсқасы (бұл жағдайда 0 мәні орнатылған) |
apiVersion | API Google Pay нұсқасы (бұл жағдайда 2 мәні орнатылған) |
paymentMethodData | Пайдаланылатын төлем тәсілі туралы ақпаратты қамтитын объект |
descrption | Төлем тәсілінің сипаттамасы (мысалы, «Visa •••• 1111») |
tokenizationData | Төлем деректерінің токенделуі туралы ақпаратты қамтитын объект |
type | Токендеу түрі (бұл жағдайда PAYMENT_GATEWAY мәні орнатылған) |
token | Google жүйесінен алынған токен мәні |
type | Төлем тәсілінің түрі (бұл жағдайда CARD мәні белгіленген) |
info | Төлем картасы туралы ақпаратты қамтитын объект |
cardNetwork | Төлем картасының желісі (мысалы, «VISA») |
cardDetails | Төлем картасы нөмірінің соңғы төрт саны (мысалы, «1111») |
API төлемге сұрауды жібергеннен кейін, сіз төлем мәртебесі туралы ақпаратпен жауаптың алынуын күтесіз. Төлем мәрбтебесін тексеру сервисін пайдаланып жүйеде жауапты сәйкесінше өңдеңіз.
TEST URL: GET https://testepay.homebank.kz/api/check-status/payment/transaction/:invoiceid
PROD URL: GET https://epay-api.homebank.kz/check-status/payment/transaction/:invoiceid
Авторизация қажет:
Сұрау салу
Токен алу
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"
terminal: "67e34d63-102f-4bd1-898e-370781d0074d"
Жол | Сипаттама |
---|
grant type | Aвторизация түрі, төлем жүргізу үшін client_credentials түрі пайдаланылады |
scope | Pесурс |
client id | Коммерсанттың идентификаторы, кабинетте алуға болады, тіркеу кезінде беріледі |
client secret | Коммерсанттың кіру кілті, кабинетте алуға болады, тіркеу кезінде беріледі |
terminal id | Сату нүктесінің идентификаторы, кабинетте алуға болады, тіркеу кезінде беріледі |
Жауап:
{
"access_token": "DCEB8O_ZM5U7SO_T_U5EJQ",
"expires_in": 7200,
"scope": "webapi usermanagement email_send verification statement statistics payment",
"token_type": "Bearer"
}
Жол | Сипаттама |
---|
access token | Операция жүргізуге арналған токен |
expires in | Токеннің аяқталу уақыты |
refresh token | Авторизацияның бұл түрінде пайдаланылмайды |
scope | Ресурс, төлем жүргізу үшін ресурс пайдаланылады |
token type | Авторизация түрі |
Headers
Authorization: Bearer dGVzdGNsaWVudDpzZWNyZXQ=
HTTP CODE 200
Responce Body JSON:
{
"resultCode": "100",
"resultMessage": "SUCCESS",
"transaction": {
"id": "af2089fe-43b1-47eb-a61f-c78dd196e18d",
"createdDate": "2022-11-15T03:52:17.289853+06:00",
"invoiceID": "205218074",
"amount": 12.22,
"amountBonus": 0,
"payoutAmount": 10,
"orgAmount": 22.22,
"approvalCode": "170243",
"data": "{\"custom_id\":\"2023.03.10-15:03:58\",\"email\":\"epay@halykbank.kz\",\"deal_number\":\"1111111\",\"offer_code\":\"1111111\",\"sum\":33900}",
"currency": "KZT",
"terminal": "98120001",
"terminalID":"67e34d63-102f-4bd1-898e-370781d0074d",
"accountID": "",
"description": "order 205218074",
"language": "RU",
"cardMask": "400303...9821",
"cardType": "VISA",
"issuer": "Казкоммерцбанк",
"reference": "231951411351",
"reason": "Successfully",
"reasonCode": "00",
"intReference": "67140D7DE97139A7",
"secure": false,
"statusID": "5bbb7dd5-4691-41ee-a6a5-755a3d23a218",
"statusName": "REFUND",
"name": "ARMAN ALI",
"email": "epay@halykbank.kz",
"phone": "",
"cardID": "e8a09f98-04b4-71a6-e053-1d1a000aa0d2",
"xlsRRN": "",
"ip": "46.148.239.182",
"ipCountry": "Kazakhstan",
"ipCity": "",
"ipRegion": "",
"ipDistrict": "",
"ipLatitude": 55.7386,
"ipLongitude": 37.6068
}
}
Error:
{
"resultCode": "101",
"resultMessage": "reject",
"transaction": null
}
resultcode
| Жол | Сипаттама |
| -------- | -------- | -------- |
| 100 | Success | Cұраудың сәтті орындалуы, төлемнің қандай күйде екенін statusName бойынша көру қажет |
| 101 | Reject | Cәтсіз транзакция |
| 102 | Invoice not found, try again later or check transaction type (payment/p2p) | InvoiceId нөмірі жүйеде табылмады, сіздің транзакцияңыз p2p сервисі бойынша өтуі мүмкін |
| 103 | Try again or contact support | Cұрауды қайталау немесе қолдау қызметіне жүгіну қажет |
| 104 | Field terminal absent in token | Токенді сұраған кезде TerminalID параметрі жоқ |
| 106 | Error, incorrect terminalID | Токенді сұраған кездегі қате TerminalID |
| 107 | In progress | Oперация орындалу процесінде, мәртебені кейінірек сұратыңыз |
status name
Жол | Сипаттама |
---|
REFUND | Eсептен шығарылған соманы қайтару жүзеге асырылды |
AUTH | Бұғатталған сома |
CANCEL | Сома блоктан алынды |
CHARGE | Сома есептен шығарылды |
CANCEL_OLD | Эмитент жағында авторизацияның күшін жою CHARGE/CANCEL операциясының қолданыс мерзімі аяқталған жағдайда орын алады |
FAILED | Сәтсіз транзакция |
3D | 3D тексеру кезеңіндегі қателік |
NEW | Операция құрылды, бірақ әзірге ол аралық күйде (егер сіз осы мәртебені транзакция мәртебесін сұрауды қолмен жүзеге асырған кезде алсаңыз, онда оны өзгертуге болатындығын ескеріңіз) |
REJECT | Сәтсіз төлем әрекеті |