Операции

Получение данных по операциям массивом

TEST URL https://testepay.homebank.kz/api/operations
PROD URL https://epay-api.homebank.kz/operations

Требуется авторизация

Тип авторизации: Password credentials

scope: webapi usermanagement email_send verification statement statistics payment

Входные параметры передаются в виде 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_date обязательный

Фильтры:

NameDescription
created_dateДата транзакции
shop_idМагазин
invoice_idНомер заказа
account_idИдентификатор клиента в магазине
payer_phoneТелефон
payer_emailEmail
referenceСсылка
post_link(bool)PostLink
amountСумма
card_maskКарта
clientПлательщик
installment_idРассрочка
transaction_type_idТранзакция
payout_dateДата возврата
payout_amountСумма возврата

Пример запроса, JSON:

{
    "paging":{
            "page": 0,
            "size": 2
            },
    "searchParameters":[
    {
            "name": "created_date",
            "method": "between",
            "searchParameter": ["2017-11-19T00:00:00Z", "2018-11-20T00:00:00Z"]
    },
    {
            "name": "description",
            "method": "in",
            "searchParameter": ["description"]
    },
    {
            "name": "payer_email",
            "method": "like",
            "searchParameter": ["danatugumbayeva%"]
    }
    ],
    "orderParameters":[
    {
        "field": "payer_email",
        "typeOrder": "ASC"
    },
    {
        "field": "description",
        "typeOrder": "DESC"
    }
    ]
}

Ответ возвращается в виде JSON:

{
    "totalCount": 2,
    "records": [
        {
            "id": "b9d46313-264e-41ec-814c-728dd51eb97f",
            "amount": 1000,
            "orgAmount: 1000,
            "currency": "KZT",
            "amountBonus": 80,
            "invoiceId": "",
            "accountId": "",
            "payerIp": "10.6.50.57",
            "payerName": "Dana Tugumbayeva",
            "payerPhone": "77029085001",
            "payerEmail": "dana@gmail.com",
            "description": "description",
            "data": "",
            "createdDate": "2018-10-27T15:08:14+06:00",
            "authDate": "2018-10-27T15:08:14+06:00",
            "confirmDate": "2018-10-27T15:08:14+06:00",
            "payoutDate": "2018-12-29T00:01:01.374084+06:00",
            "payoutAmount": 1000,
            "ipCountry": "",
            "ipCity": "",
            "ipRegion": "",
            "ipDistrict": "",
            "ipLatitude": 0,
            "ipLongitude": 0,
            "cardType": "MasterCard",
            "issuer": "Казкоммерцбанк",
            "issuerBankCountry":"",
       		"status": "AUTH",
       		"reference": "034580951245",
       		"client": "polisonline",
       		"language":"RU",
       		"failureLink": "https://page.site.kz/failureLink",
       		"postLink": "https://page.site.kz/postLink",
       		"postLinkStatus":true,
       		"merchant":"merchantName",
       		"shop":"merchantShop",
       		"secure3D":false,
       		"cardMask":"5483...0413",
       		"installment":null,
       		"resultCode":"00",
       		"resultMessage":""
        },
        {
            "id": "b9d46313-264e-41ec-814c-728dd525877f",
            "amount": 500,
            "orgAmount: 1000,
            "currency": "KZT",
            "amountBonus": 80,
            "invoiceId": "",
            "accountId": "",
            "payerIp": "10.6.50.57",
            "payerName": "Dana Tugumbayeva",
            "payerPhone": "77029085001",
            "payerEmail": "eldar@gmail.com",
            "description": "description",
            "data": "",
            "createdDate": "2018-10-27T15:08:14+06:00",
            "authDate": "2018-10-27T15:08:14+06:00",
            "confirmDate": "2018-10-27T15:08:14+06:00",
            "payoutDate": "2018-12-29T00:01:01.374084+06:00",
            "payoutAmount": 0,
            "ipCountry": "",
            "ipCity": "",
            "ipRegion": "",
            "ipDistrict": "",
            "ipLatitude": 0,
            "ipLongitude": 0,
            "cardType": "MasterCard",
            "issuer": "Казкоммерцбанк",
            "issuerBankCountry": "",
       		"status": "CHARGE",
       		"reference": "034580958547",
       		"client": "polisonline",
       		"language": "RU",
       		"failureLink": "https://page.site.kz/failureLink",
       		"postLink": "https://page.site.kz/postLink",
       		"postLinkStatus": true,
       		"merchant": "merchantName",
       		"shop": "merchantShop",
       		"secure3D": false,
       		"cardMask": "5483...0413",
       		"installment": null,
       		"resultCode": "00",
       		"resultMessage": ""
        }
    ]
}

Ответ об ошибке возвращается в виде JSON:

{
    "code": 232,
    "message": "Метод поиска отсутствует"
}