Различия
Здесь показаны различия между двумя версиями данной страницы.
Следующая версия | Предыдущая версия | ||
doc:dev:api:cashflow [09.09.2016 16:51] rlysov создано |
doc:dev:api:cashflow [02.06.2018 10:42] (текущий) |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | ====== API :: CashFlow. Получение данных движении денежных средств на кассе ====== | + | ====== API :: CashFlow. Движение денежных средств на кассе ====== |
- | В системе реализован программный интерфейс для получения и обновления данных о розничных ценах на товары. Данные выгружаются по http протоколу. Формат на выбор - xml или json. | + | В системе реализован программный интерфейс для получения данных движении денежных средств на кассовом рабочем месте. Данные выгружаются по http протоколу. Формат на выбор - xml или json. |
+ | Пользовательский интерфейс для просмотра движения денег на кассе доступен в административной панели, меню **Кассовые места** -> **Рабочее кассовое место** -> **Движение денежных средств** | ||
- | ===== Получение данных о ценах ===== | + | ===== Типы денежных операций ===== |
+ | Доступны данные о следующих типах операций: | ||
+ | * **sale** - поступление наличных денег от продажа товара | ||
+ | * **return** - выплата за возврат товара на кассе | ||
+ | * **collection** - инкассация | ||
+ | * **outcome** - выплата наличных денег из кассы | ||
+ | * **income** - внесение наличных денег в кассу | ||
+ | * **to_strongbox** - перемещение в главную кассу | ||
+ | * **from_strongbox** - перемещение из главной кассы | ||
- | Получение розничных цен из определенного прайслиста | ||
- | http://mycompany.virtpos.ru/api/pricelist?apikey=MySecret&format=xml&external_id=ex1 | + | ===== Параметры запроса на получение данных ===== |
+ | Параметры запроса данных (все параметры передаются как get-параметры): | ||
+ | * int **terminalid** - ID кассы. Если не указан, то будут отданы данные по всем кассам | ||
+ | * int **warehouseid** - ID точки продаж (магазина), данные о которой надо получить. Будут отданы данные обо всех кассах этого магазина. Параметр игнорируется, если указан terminalid | ||
+ | * string **warehouseextid** - ID точки продаж во внешней системе (например, в 1С). Параметр игнорируется, если указан terminalid или warehouseid | ||
+ | * string **type** - типы операций, которые надо вернуть. Полный перечень типов указан выше. Если необходимо вернуть данные о нескольких типах сразу, то можно указать их через запятую. Пример: //income,outcome,collection// | ||
+ | * int **lastid** - если указан, то возвращаются все денежные транзакции, которые были после указанного lastId. Используется для получения только новых данных с момента последнего обращения | ||
+ | * int **limit** - возвращает не более указанного количества записей. По умолчанию установлен лимит 100 записей | ||
+ | * int **days** - возвращает данные за последние количество дней. | ||
- | Параметры: | ||
- | * int **id** - внутренний ID прайслиста | ||
- | * string **external_id** - ID прайслиста во внешней системе (например, 1С) | ||
- | * int **item_id** -внутренний ID товара. Если не указан, то будут возвращены все товары | ||
- | * string **item_ext_id** - ID товара во внешней системе (например, 1С) | ||
+ | ===== Пример запроса на получение данных ===== | ||
- | ===== Создание/обновление прайслиста ===== | + | Пример запроса на получение данных о движении денежных средств на всех кассах за последние два дня: |
- | http://mycompany.virtpos.ru/api/pricelist/update?apikey=MySecret&format=xml | + | |
- | Создает или обновляет шапку прайслиста. | + | http://mycompany.virtpos.ru/api/cashFlow?apikey=MySecret&days=2&type=income,outcome |
- | Параметры: | ||
- | * id - ID прайслиста | ||
- | * external_id - ID прайслиста во внешней системе (например, 1С) | ||
- | * create_if_not_exist - если "1", то запись будет создана при неуспешном поиске | ||
- | * name - название прайслиста | ||
- | * description - описание прайслиста | ||
- | ===== Назначение прайслиста в магазин ===== | + | ===== Пример ответа ===== |
- | http://mycompany.virtpos.ru/api/pricelist/assign?apikey=MySecret&format=xml | + | <file xml> |
+ | <?xml version="1.0" encoding="UTF-8"?> | ||
+ | <root> | ||
+ | <success>1</success> | ||
+ | <type>cashflow</type> | ||
+ | <count>3</count> | ||
+ | <transactions> | ||
+ | <transaction> | ||
+ | <id>375</id> | ||
+ | <user_id>3</user_id> | ||
+ | <user_login>ivanov</user_login> | ||
+ | <user_corp_code>CBX-0000</user_corp_code> | ||
+ | <created_date>2016-09-07 19:42:42</created_date> | ||
+ | <last_update_date>2016-09-07 19:42:42</last_update_date> | ||
+ | <src_terminal_id>13</src_terminal_id> | ||
+ | <dst_terminal_id/> | ||
+ | <src_machine_number>0515309</src_machine_number> | ||
+ | <dst_machine_number/> | ||
+ | <src_warehouse_id>6</src_warehouse_id> | ||
+ | <dst_warehouse_id/> | ||
+ | <src_warehouse_ext_id/> | ||
+ | <dst_warehouse_ext_id/> | ||
+ | <type>sale</type> | ||
+ | <subtype/> | ||
+ | <cash_before>437.00</cash_before> | ||
+ | <cash_after>759.50</cash_after> | ||
+ | <cash_change>322.50</cash_change> | ||
+ | <comment/> | ||
+ | <receipt_id>363</receipt_id> | ||
+ | <guid>803ad8b6-688c-11e7-849d-74d435ee6043</guid> | ||
+ | <src_terminal_open_datetime/> | ||
+ | <dst_terminal_open_datetime>2017-07-19 13:56:52</dst_terminal_open_datetime> | ||
+ | <src_terminal_session/> | ||
+ | <dst_terminal_session>0</dst_terminal_session> | ||
+ | </transaction> | ||
+ | </root> | ||
+ | </file> | ||
- | * int **id** - внутренний ID прайслиста | + | ===== Формат ответа ===== |
- | * string **external_id** - ID прайслиста во внешней системе | + | |
- | * int **warehouse_id** - внутренний ID магазина | + | |
- | * string **warehouse_ext_id** - ID магазина во внешней системе | + | |
- | * boolean **main** - признак "Основной прайслист" (не используется) | + | |
- | ===== Обновление розничной цены на товар в прайслисте ===== | + | * **id** - уникальный номер операции |
- | http://mycompany.virtpos.ru/api/pricelist/updateItem?apikey=MySecret&format=xml | + | * **user_id** - ID пользователя, совершившего операцию |
- | + | * **user_login** - Логин пользователя, совершившего операцию | |
- | Обновляет цену товара в прайслисте | + | * **user_corp_code** - Корпоративный код пользователя, совершившего операцию |
- | + | * **created_date** - Дата создания операции | |
- | Параметры: | + | * **last_update_date** - Дата обновления этой записи. Должна совпадать с created_date |
- | * int **id** - ID прайслиста | + | * **src_terminal_id** - Уникальный идентификатор кассового рабочего места, откуда осуществлялось изъятие денег |
- | * string **external_id** - внешний ID прайслиста | + | * **dst_terminal_id** - Уникальный идентификатор кассового рабочего места, в которую осуществлено поступление денег |
- | * int **item_id** - ID товара | + | * **src_machine_number** - Регистрационный номер кассы, откуда осуществлялось изъятие денег |
- | * string **item_ext_id** - внешний ID товара | + | * **dst_machine_number** - Регистрационный номер кассы, в которую осуществлено поступление денег |
- | * float **price** - новая цена товара | + | * **src_warehouse_id** - Уникальный идентификатор точки продаж, откуда осуществлялось изъятие денег |
+ | * **dst_warehouse_id** - Уникальный идентификатор точки продаж, в которую осуществлено поступление денег | ||
+ | * **src_warehouse_ext_id** - аналог src_warehouse_id, но хранит код точки продаж во внешней системе | ||
+ | * **dst_warehouse_ext_id** - аналог dst_warehouse_id, но хранит код точки продаж во внешней системе | ||
+ | * **type** - тип операции | ||
+ | * **subtype** - подтип операции. Возможные значения зависят от настроек системы | ||
+ | * **cash_before** - сумма наличных денег в кассе до операции | ||
+ | * **cash_after** - сумма наличных денег в кассе после операции | ||
+ | * **cash_change** - сальдо операции | ||
+ | * **comment** - комментарий, который оставил продавец при осуществлении операции | ||
+ | * **receipt_id** - ID чека. Заполняется для типов операций "продажа" и "возврат" | ||
+ | * **guid** - GUID операции | ||
+ | * **src_terminal_open_datetime** - дата открытия смены на кассе, откуда осуществлялось изъятие денег | ||
+ | * **dst_terminal_open_datetime** - дата открытия смены на кассе, в которую осуществлено поступление денег | ||
+ | * **src_terminal_session** - номер смены на кассе, откуда осуществлялось изъятие денег | ||
+ | * **dst_terminal_session** - номер смены на кассе, в которую осуществлено поступление денег |