Запрос операций по переводам списком
Получение токена
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: "password" username: "USERNAME" password: "USERPASSWORD" scope: "transfer" client_id: "CLIENTID" client_secret: "CLIENTSECRET"
Ответ
{
"access_token":"DCEB8O_ZM5U7SO_T_U5EJQ",
"expires_in": 7200,
"refresh_token":"",
"scope":"transfer",
"token_type":"Bearer"
}
Поле | Описание |
---|---|
access_token | Токен для проведения операции |
expires_in | Время истечения токена |
refresh_token | Не используется при данном типе авторизации |
scope | Ресурс, для проведения платежа используется ресурс transfer |
token_type | Тип авторизации |
URL https://testepay.homebank.kz/api/p2p/operations
Входные параметры передаются в виде JSON: Модель представлена в следующем виде:
{
"paging":{
"page": ,
"size":
},
"searchParameters":[
{
"name":"",
"method":"",
"searchParameter":["","",...]
}
],
"orderParameters":[
{
"field":"",
"typeOrder":"ASC/DESC"
}
]
}
В блок "paging" , необходимо передавать два параметра: "page" - количество записей которые необходимо пропустить; "size" - количество записей которые необходимо вывести на странице. В блок "searchParameters", необходимо передавать три параметра, так же можно производить поиск по множеству полей (в примере запроса показано как) "name" - наименование поля(фильтра) по которому будет происходить поиск в БД, список представлен ниже ; "method" - метод поиска (указывать в следующем виде : between, in, like , = , < , > , <= , >= ) ; "searchParameter" - параметры поиска.При использование метода поиска between необходимо передавать 2 параметра, при использование like, передавать один параметр который содержит знак %, при методе поиска in необходимо использовать минимум 1 параметр. В случае не корректно переданных параметров , будет возвращаться ошибка. В запросе необходимо указывать период транзакций. Данный параметр поиска является обязательным. В блок "orderParameters", можно передавать два параметра: "field" - наименование поля по которому будет происходить сортировка; "typeOrder" - тип сортировки ASC/DESC. Данный блок можно можно оставить пустым если нет необходимости в сортировке или производить сортировку по нескольким полям (представлено в примере ниже).
Внимание! Метод поиска по created_at обязательный
Фильтры:
Описание | Название |
---|---|
Дата транзакции | created_date |
№Терминала | terminal_id |
№Заказа | invoice_id |
ID клиента в магазине клиента | account_id |
Телефон | payer_phone |
payer_email | |
РРН | reference |
Сумма | amount |
Карта | card_mask |
Пример запроса, JSON:
{
"paging": {
"page": 0,
"size": 20
},
"searchParameters": [
{
"name": "created_at",
"method": "between",
"searchParameter": [
"2022-01-10T12:00:00.000Z",
"2022-02-10T13:59:59.999Z"
]
}
],
"orderParameters": [
{
"field": "created_at",
"typeOrder": "ASC"
},
{
"field": "id",
"typeOrder": "ASC"
}
]
}
Ответ возвращается в виде JSON:
{
"totalCount": 132,
"records": [
{
"id": "f0c79d0d-1b98-4b8c-8ea3-83a110be191e",
"dateTime": "2022-02-03T11:42:35.533398+06:00",
"invoiceId": "123456789377804",
"amount": 200,
"currency": "KZT",
"terminal": "98151552",
"accountId": "",
"description": "TEST p2p",
"language": "",
"senderCardMask": "4003********9821",
"receiverCardMask": "5578********0613",
"senderCardType": "VISA",
"receiverCardType": "MasterCard",
"senderIssuer": "",
"receiverIssuer": "",
"reference": "203480420271",
"secure": "",
"code": "00",
"reason": "",
"reasonCode": 0,
"name": "Sergey Frolov",
"email": "dosbols@halykbank.kz",
"phone": "",
"ip": "",
"ipCountry": "",
"ipCity": "",
"ipRegion": "",
"ipDistrict": "",
"ipLongitude": 0,
"ipLatitude": 0,
"status": "ok",
"senderCardId": "",
"receiverCardId": ""
}
]
}
Ответ об ошибке возвращается в виде JSON:
{
"code": 232,
"message": "Метод поиска отсутствует"
}