====== API :: CashFlow. Движение денежных средств на кассе ====== В системе реализован программный интерфейс для получения данных движении денежных средств на кассовом рабочем месте. Данные выгружаются по http протоколу. Формат на выбор - xml или json. Пользовательский интерфейс для просмотра движения денег на кассе доступен в административной панели, меню **Кассовые места** -> **Рабочее кассовое место** -> **Движение денежных средств** ===== Типы денежных операций ===== Доступны данные о следующих типах операций: * **sale** - поступление наличных денег от продажа товара * **return** - выплата за возврат товара на кассе * **collection** - инкассация * **outcome** - выплата наличных денег из кассы * **income** - внесение наличных денег в кассу * **to_strongbox** - перемещение в главную кассу * **from_strongbox** - перемещение из главной кассы ===== Параметры запроса на получение данных ===== Параметры запроса данных (все параметры передаются как 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** - возвращает данные за последние количество дней. ===== Пример запроса на получение данных ===== Пример запроса на получение данных о движении денежных средств на всех кассах за последние два дня: http://mycompany.virtpos.ru/api/cashFlow?apikey=MySecret&days=2&type=income,outcome ===== Пример ответа ===== 1 cashflow 3 375 3 ivanov CBX-0000 2016-09-07 19:42:42 2016-09-07 19:42:42 13 0515309 6 sale 437.00 759.50 322.50 363 803ad8b6-688c-11e7-849d-74d435ee6043 2017-07-19 13:56:52 0 ===== Формат ответа ===== * **id** - уникальный номер операции * **user_id** - ID пользователя, совершившего операцию * **user_login** - Логин пользователя, совершившего операцию * **user_corp_code** - Корпоративный код пользователя, совершившего операцию * **created_date** - Дата создания операции * **last_update_date** - Дата обновления этой записи. Должна совпадать с created_date * **src_terminal_id** - Уникальный идентификатор кассового рабочего места, откуда осуществлялось изъятие денег * **dst_terminal_id** - Уникальный идентификатор кассового рабочего места, в которую осуществлено поступление денег * **src_machine_number** - Регистрационный номер кассы, откуда осуществлялось изъятие денег * **dst_machine_number** - Регистрационный номер кассы, в которую осуществлено поступление денег * **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** - номер смены на кассе, в которую осуществлено поступление денег