Это старая версия документа.
API :: ZReport. Получение электронных Z-отчетов
В системе реализован программный интерфейс для Z-отчетов фискальных регистраторов в электронном виде. Данные выгружаются по http протоколу. Формат на выбор - xml или json.
Максимальная глубина запроса - последние 30 дней.
Пример запроса на получение данных
Пример запроса на получение данных о Z-отчетах:
http://mycompany.virtpos.ru/api/zreport?apikey=MySecret&format=xml&warehouseid=1
Параметры запроса на получение данных
- apikey - Секретный ключ для доступа к данным. Обязательный параметр.
- format - формат, в котором сервер отдаст данные. Может принимать значения «xml» или «json». Необязательный параметр.
- date - Дата, за которую надо вернуть данные. Формат: ГГГГММДД. Необязательный параметр.
- warehouse_id - код магазина, для которого надо вернуть отчеты. Если не указан, то возвращаются данные обо всех магазинах. Необязательный параметр.
- ext_warehouse_id - код магазина во внешней системе (например, в 1С). Параметр игнорируется, если передан warehouse_id. Необязательный параметр.
- terminal_id - код кассового места. Необязательный параметр.
- fiscal_number - серийный номер фискального регистратора. Игнорируется, если передан terminal_id. Необязательный параметр.
- session - номер смены. Необязательный параметр.
Ответ сервера
В ответ получаем XML или JSON. В ответе обязательно присутствует поле success. Если success=1, то операция выполнена успешно. Если success=0, то произошла ошибка. Дополнительная информация об ошибке содержится в поле info
Пример ответа сервера
Ниже приведен пример ответа сервера в формате XML
<?xml version="1.0" encoding="UTF-8"?> <root> <success>1</success> <type>zreport</type> <count>24</count> <zreports> <zreport> <id>1138</id> <terminal_id>27</terminal_id> <fiscal_number>00517929</fiscal_number> <guid>CE007AB6-EE10-A771-81CC-14996C8083E4</guid> <salesamount>4300.00</salesamount> <saleschecks>96</saleschecks> <session>40</session> <open_user_id>32</open_user_id> <close_user_id>32</close_user_id> <open_datetime>2016-10-26 21:58:48</open_datetime> <close_datetime>2016-10-26 21:58:48</close_datetime> <fp_reg_oper_sale_counts>2</fp_reg_oper_sale_counts> <fp_reg_cash_sale_sum>4300.00</fp_reg_cash_sale_sum> <fp_reg_cash_sale_sum_cash>4300.00</fp_reg_cash_sale_sum_cash> <fp_reg_cash_sale_sum_credit>0.00</fp_reg_cash_sale_sum_credit> <fp_reg_cash_sale_sum_tare>0.00</fp_reg_cash_sale_sum_tare> <fp_reg_cash_sale_sum_card>0.00</fp_reg_cash_sale_sum_card> <fp_reg_oper_buy_counts>0</fp_reg_oper_buy_counts> <fp_reg_cash_buy_sum>0.00</fp_reg_cash_buy_sum> <fp_reg_cash_buy_sum_cash>0.00</fp_reg_cash_buy_sum_cash> <fp_reg_cash_buy_sum_credit>0.00</fp_reg_cash_buy_sum_credit> <fp_reg_cash_buy_sum_tare>0.00</fp_reg_cash_buy_sum_tare> <fp_reg_cash_buy_sum_card>0.00</fp_reg_cash_buy_sum_card> <fp_reg_oper_saleret_counts>0</fp_reg_oper_saleret_counts> <fp_reg_cash_saleret_sum>0.00</fp_reg_cash_saleret_sum> <fp_reg_cash_saleret_sum_cash>0.00</fp_reg_cash_saleret_sum_cash> <fp_reg_cash_saleret_sum_credit>0.00</fp_reg_cash_saleret_sum_credit> <fp_reg_cash_saleret_sum_tare>0.00</fp_reg_cash_saleret_sum_tare> <fp_reg_cash_saleret_sum_card>0.00</fp_reg_cash_saleret_sum_card> <fp_reg_oper_buyret_counts>0</fp_reg_oper_buyret_counts> <fp_reg_cash_buyret_sum>0.00</fp_reg_cash_buyret_sum> <fp_reg_cash_buyret_sum_cash>0.00</fp_reg_cash_buyret_sum_cash> <fp_reg_cash_buyret_sum_credit>0.00</fp_reg_cash_buyret_sum_credit> <fp_reg_cash_buyret_sum_tare>0.00</fp_reg_cash_buyret_sum_tare> <fp_reg_cash_buyret_sum_card>0.00</fp_reg_cash_buyret_sum_card> <fp_reg_oper_moneyinput_count_global>-1</fp_reg_oper_moneyinput_count_global> <fp_reg_oper_moneyinput_count>1</fp_reg_oper_moneyinput_count> <fp_reg_cash_moneyinput_sum>2831.00</fp_reg_cash_moneyinput_sum> <fp_reg_oper_moneyoutput_count_global>-1</fp_reg_oper_moneyoutput_count_global> <fp_reg_oper_moneyoutput_count>0</fp_reg_oper_moneyoutput_count> <fp_reg_cash_moneyoutput_sum>0.00</fp_reg_cash_moneyoutput_sum> <fp_reg_oper_annulate_count_global>-1</fp_reg_oper_annulate_count_global> <fp_reg_oper_annulate_sale_count>-1</fp_reg_oper_annulate_sale_count> <fp_reg_cash_annulate_sale_sum>-1.00</fp_reg_cash_annulate_sale_sum> <fp_reg_oper_annulate_buy_count>-1</fp_reg_oper_annulate_buy_count> <fp_reg_cash_annulate_buy_sum>-1.00</fp_reg_cash_annulate_buy_sum> <fp_reg_oper_annulate_saleret_count>-1</fp_reg_oper_annulate_saleret_count> <fp_reg_cash_annulate_saleret_sum>-1.00</fp_reg_cash_annulate_saleret_sum> <fp_reg_oper_annulate_buyret_count>-1</fp_reg_oper_annulate_buyret_count> <fp_reg_cash_annulate_buyret_sum>-1.00</fp_reg_cash_annulate_buyret_sum> <fp_reg_cash_allcash_sum>7131.00</fp_reg_cash_allcash_sum> <fp_reg_cash_sale_sum_discount>0.00</fp_reg_cash_sale_sum_discount> <fp_reg_oper_sale_counts_discount>0</fp_reg_oper_sale_counts_discount> </zreport> </zreports> </root>
Структура ответа сервера на примере ККМ Атол
id – сквозной номер z-отчёта в системе
terminal_id – номер принтера чеков в системе
fiscal_number - заводской номер принтера чеков
guid – уникальный идентификатор отчёта
salesamount – Сумма продаж
saleschecks – количество чеков продаж в смену
session – номер смены
open_user_id – ID пользователя, открывшего смену
close_user_id - ID пользователя, закрывшего смену
open_datetime – дата и время открытия смены
close_datetime – дата и время закрытия смены
fp_reg_oper_sale_counts – количество всех регистраций по всем типам чеков
fp_reg_cash_sale_sum – сумма всех регистраций по всем типам чеков
fp_reg_cash_sale_sum_cash – сумма платежей тип чека 1, тип закрытия чека 0
fp_reg_cash_sale_sum_credit – сумма платежей тип чека 1, тип закрытия чека 2
fp_reg_cash_sale_sum_tare – сумма платежей тип чека 1, тип закрытия чека 2
fp_reg_cash_sale_sum_card – сумма платежей тип чека 1, тип закрытия чека 3
fp_reg_oper_buy_counts – количество всех регистраций по типу чека 4
fp_reg_cash_buy_sum – сумма всех регистраций по типу чека 4
fp_reg_cash_buy_sum_cash – сумма платежей тип чека 4, тип закрытия чека 0
fp_reg_cash_buy_sum_credit – сумма платежей тип чека 4, тип закрытия чека 1
fp_reg_cash_buy_sum_tare – сумма платежей тип чека 4, тип закрытия чека 2
fp_reg_cash_buy_sum_card – сумма платежей тип чека 4, тип закрытия чека 3
fp_reg_oper_saleret_counts – количество всех регистраций по типу чека 2
fp_reg_cash_saleret_sum – сумма всех регистраций по типу чека 2
fp_reg_cash_saleret_sum_cash – сумма платежей тип чека 2, тип закрытия чека 0
fp_reg_cash_saleret_sum_credit – сумма платежей тип чека 2, тип закрытия чека 1
fp_reg_cash_buyret_sum_tare – сумма платежей тип чека 2, тип закрытия чека 2
fp_reg_cash_saleret_sum_card – сумма платежей тип чека 2, тип закрытия чека 3
fp_reg_oper_buyret_counts – количество всех регистраций по типу чека 5
fp_reg_cash_buyret_sum – сумма всех регистраций по типу чека 5
fp_reg_cash_buyret_sum_cash – сумма платежей тип чека 5, тип закрытия чека 0
fp_reg_cash_buyret_sum_credit – сумма платежей тип чека 5, тип закрытия чека 1
fp_reg_cash_buyret_sum_tare – сумма платежей тип чека 5, тип закрытия чека 2
fp_reg_cash_buyret_sum_card – сумма платежей тип чека 5, тип закрытия чека 3
fp_reg_oper_moneyinput_count_global – не используется
fp_reg_oper_moneyinput_count – Количество всех внесений наличных денег в ККМ
fp_reg_cash_moneyinput_sum – Сумма внесений наличных денег в ККМ
fp_reg_oper_moneyoutput_count_global – не используется
fp_reg_oper_moneyoutput_count – количество всех выплат наличных денег из ККМ
fp_reg_cash_moneyoutput_sum – сумма выплат наличных денег из ККМ
fp_reg_oper_annulate_count_global – не используется
fp_reg_oper_annulate_sale_count – не используется
fp_reg_cash_annulate_sale_sum – не используется
fp_reg_cash_annulate_buy_sum – не используется
fp_reg_oper_annulate_saleret_count – не используется
fp_reg_cash_annulate_saleret_sum – не используется
fp_reg_oper_annulate_buyret_count – не используется
fp_reg_cash_annulate_buyret_sum – не используется
fp_reg_cash_allcash_sum – сумма наличности в ККМ
fp_reg_cash_sale_sum_discount – не используется
fp_reg_oper_sale_counts_discount – не используется
Тип чека
0 – чек закрыт;
1 – чек прихода;
2 – чек возврата прихода;
4 – чек расхода;
5 – чек возврата расхода;
7 – чек коррекции прихода;
8 – чек коррекции возврата прихода;
9 – чек коррекции расхода;
10 – чек коррекции возврата расхода.
Тип закрытия чека
0 - наличными;
1 - тип оплаты 1;
2 - тип оплаты 2;
3 - тип оплаты 3 – по банковской карте ;
4 - тип оплаты 4;
5 - тип оплаты 5.