1. Статистика
Раздел протокола «Статистка» предназначен для получения сводной (агрегированной) информации о принятых платежах. Протокол содержит следующие запросы на получение данных:
URI | Назначение | |
---|---|---|
1.1. | /info/systems/list/ | Получение списка всех платёжных систем, через которые когда-либо проводились платежи |
1.2. | /info/systems/sums/ | Получение баланса платёжных систем за определённый период |
1.3. | /info/systems/sums/details/ | Получение баланса платёжных систем за определённый период, разбитого по временным интервалам |
1.4. | /info/systems/allsum/ | Получения суммарного баланса всех платёжных систем за период |
1.5. | /info/errors/total/ | Получить количество ошибок по группам |
1.6. | /info/errors/bydate/ | Получить количество ошибок по группам за период |
1.1. Запрос получения списка платёжных систем /info/systems/list/
Для получения списка всех платёжных систем необходимо выполнить GET-запрос по URL без параметров.
Тип | Формат запроса |
GET | /info/systems/list/ |
Таблица 1.1.1 Параметры запроса списка платёжных систем |
В ответ возвращается объект следующего вида:
Тип | Формат ответа | |
Параметр | Назначение | |
1. | id | Идентификатор платёжной системы |
2. | system_description | Системное название платёжной системы |
3. | site_description | Название платёжной системы |
Таблица 1.1.2 Параметры ответа на запрос списка платёжных систем |
Ответ на запрос состоит из массива объектов. Пример ответа на запрос:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
[ { "id": "2", "system_description": "AlfaBank", "site_description": "Альфа-Банк" }, { "id": "6", "system_description": "AlfaBankSbp", "site_description": "Альфа-Банк СБП" }, { "id": "127", "system_description": "TestPayments", "site_description": "Тестовый Платёж" }, { "id": "1", "system_description": "AlfaBankMPOS", "site_description": "Альфа-Банк mPOS" } ] |
1.2. Запрос получения баланса платёжных систем /info/systems/sums/
Запрос возвращает сумму принятых платежей по всем платёжным системам за указанный период. Для этого необходимо выполнить GET-запрос по URL со указанием даты начала и конца периода.
Тип | Формат запроса | |
GET | /info/systems/sums/?start=2014-04-12&end=2014-05-12 | |
Параметр | Назначение | |
1. | start | Дата начала периода в формате YYYY-MM-DD |
2. | end | Дата конца периода в формате YYYY-MM-DD |
Таблица 1.2.1. Параметры запроса |
В ответ возвращается объект следующего вида:
Тип | Формат ответа | |
Параметр | Назначение | |
1. | id | Идентификатор платёжной системы |
2. | system_description | Системное название платёжной системы |
3. | site_description | Название платёжной системы |
4. | success | Сумма платежей со статусом «Совершён» |
5. | account | Сумма успешных платежей, принятых к перечислению на расчётный счёт |
6. | stuck | Сумма платежей со статусом «Совершён без оповещения» |
7. | currency | Валюта принятых платежей |
Таблица 1.2.2. Параметры ответа на запрос |
Ответ на запрос состоит из массива объектов. Пример ответа на запрос:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
[ { "id": "6", "system_description": "AlfaBank", "site_description": "Альфа-Банк", "success": "304 755.00", "account": "304 755.00", "stuck": "0.00", "currency": "RUR" }, { "id": "2", "system_description": "AlfaBankSbp", "site_description": "Альфа-Банк СБП", "success": "19 902.00", "account": "19 902.00", "stuck": "0.00", "currency": "RUR" } ] |
Обратите внимание, что если за указанный период по некоторым платёжным системам не было платежей, то в возвращённом ответе данных платёжных систем не будет.
1.3. Запрос получения баланса платёжных систем, разбитого по временным интервалам /info/systems/sums/details/
Запрос служит для получения данных, необходимых для построения графика приёма платежей по времени. В случае, если задан интервал меньше 30 дней, возвращается сумма платежей, принятых за каждый день. Если указанный интервал больше 30 дней, то производится усреднение и выводится результат в виде 30 точек с указанным временем и объёмом принятых платежей за этот интервал. Для получения данных необходимо передать GET-запрос по URL со следующими GET-параметрами.
Тип | Формат запроса | |
GET | /info/systems/sums/?start=2014-04-12&end=2014-05-12 | |
Параметр | Назначение | |
1. | start | Дата начала периода в формате YYYY-MM-DD |
2. | end | Дата конца периода в формате YYYY-MM-DD |
Таблица 1.3.1. Параметры запроса |
В ответ возвращается массив объектов следующего вида:
Тип | Формат ответа | |
Параметр | Назначение | |
1. | payment_system_id | Идентификатор платёжной системы |
2. | label | Название платёжной системы |
3. | data | Содержит массив составных объектов следующего формата: [TIMESTAMP,AMOUNT], где TIMESTAMP – время в секундах в формате Unix Timestamp, AMOUNT – объём принятых платежей за интервал времени. |
Таблица 1.3.2. Параметры ответа на запрос |
Пример ответа на запрос:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
[ { "payment_system_id": "6", "label":"Alfa-Bank", "data": [ [1394380800000,120], [1394467200000,101], [1394553600000,331], [1394640000000,290], [1394726400000,305], [1394812800000,201] ] }, ... ] |
1.4. Запрос получения суммарного баланса всех платёжных систем /info/systems/allsum/
Запрос возвращает суммарный баланс всех платёжных систем за период. В отличие от запроса 1.2, данный запрос не производит детализацию по каждой платёжной системе, в ответ на запрос возвращается только суммарное значение по всем платёжным системам.
Для получения ответа на запрос необходимо выполнить GET-запрос по URL со следующими GET-параметрами.
Тип | Формат запроса | |
GET | /info/systems/allsum/?start=2016-04-12&end=2016-05-12 | |
Параметр | Назначение | |
1. | start | Дата начала периода в формате YYYY-MM-DD |
2. | end | Дата конца периода в формате YYYY-MM-DD |
Таблица 1.4.1. Параметры запроса |
В ответ возвращается объект следующего вида:
Тип | Формат ответа | |
Параметр | Назначение | |
1. | success | Сумма платежей со статусом «Совершён» |
2. | account | Сумма успешных платежей, принятых к перечислению на расчётный счёт |
3. | stuck | Сумма платежей со статусом «Совершён без оповещения» |
Таблица 1.4.2. Параметры ответа на запрос |
Пример ответа на запрос:
1 2 3 4 5 6 7 |
[ { "success":"10932.00", "account":"10932.00", "stuck":"0.00" } ] |
Запросы 1.* и личный кабинет PayKeeper
Многие протокольные запросы используются в личном кабинете PayKeeper. Чтобы назначение запросов было более наглядным, на приведённом ниже скриншоте отмечено, какие запросы используются в личном кабинете для получения данных.
1.5. Получить количество ошибок по группам /info/errors/total/
Запрос возвращает суммарное количество ошибок и количество ошибок по группам
Тип | Формат запроса | |
GET | /info/errors/total/ | |
Параметр | Назначение | |
Таблица 1.5.1. Параметры запроса |
Пример ответа на запрос:
1 2 3 4 5 6 7 8 9 10 11 |
{ "total": "759", "totalWithGroup": [ { "error_code": "70", "total": "240", "user_description": "Сетевая ошибка при отправке запроса." }, ... ] ] |
1.6. Получить количество ошибок по группам /info/errors/bydate/
Запрос возвращает сумму принятых платежей по всем платёжным системам за указанный период. Для этого необходимо выполнить GET-запрос по URL со указанием даты начала и конца периода.
Тип | Формат запроса | |
GET | /info/errors/bydate/?start=2014-04-12&end=2014-05-12 | |
Параметр | Назначение | |
1. | start | Дата начала периода в формате YYYY-MM-DD |
2. | end | Дата конца периода в формате YYYY-MM-DD |
Таблица 1.2.1. Параметры запроса |
Ответ аналогичен пункту 1.5.