====== API :: Orders. Получение/изменение данных о Заказах ====== В системе реализован программный интерфейс для получения и добавления данных о Заказах. Данные выгружаются по http протоколу. Формат на выбор - xml или json. ===== Пример запроса на получение данных ===== Пример запроса на получение данных о заказах: http://mycompany.virtpos.ru/api/orders?apikey=MySecret&format=xml ==== Параметры запроса ==== параметры, которые не отмечены как **get only**, могут быть переданы как get- или как post-параметры. * **apikey** - Секретный ключ для доступа к данным. Обязательный параметр. * **format** (get only) - формат, в котором сервер отдаст данные. Может принимать значения "xml" или "json". Необязательный параметр. * **id** (get only) - код клиента, для которого требуется вернуть данные. Если не указан, то возвращаются данные заказов обо всех клиентах. * **datefrom** - получение Поступлений начиная с определенной даты. Формат: ГГГГММДД. Необязательный параметр. * **dateto** - получение Поступлений начиная до определенной даты. Формат: ГГГГММДД. Необязательный параметр. * **days** - задает глубину поиска. Определяет, за какое количество дней от текущей даты надо вернуть документы Поступления. Необязательный параметр. * **external_id** (get only) - (опционально) код клиента во внешней системе, работает аналогично параметру **id** ==== Ответ сервера ==== В ответ получаем XML или JSON. В ответе обязательно присутствует поле success. Если success=1, то операция выполнена успешно. Если success=0, то произошла ошибка. Дополнительная информация об ошибке содержится в поле info ==== Пример ответа сервера ==== Ниже приведен пример ответа сервера в формате XML 1 1 0 1928 0 0 0.00 2017-08-24 14:07:06 512.00 0.00 2 Просвещения проспект 1 Самовывоз 1 Оплата при получении 787 Коньяк "Father's Old Barrel' 3-летний 40% 0.5 л. 1.000 512.00 0.00 512.00 ===== Пример запроса на получение данных ===== Пример запроса на получение данных о типах оплаты: http://mycompany.virtpos.ru/api/orders/get_payment_types?apikey=MySecret&format=xml ==== Параметры запроса ==== Параметры, которые не отмечены как **get only**, могут быть переданы как get- или как post-параметры. * **apikey** - Секретный ключ для доступа к данным. Обязательный параметр. * **format** (get only) - формат, в котором сервер отдаст данные. Может принимать значения "xml" или "json". Необязательный параметр. ==== Ответ сервера ==== В ответ получаем XML или JSON. В ответе обязательно присутствует поле success. Если success=1, то операция выполнена успешно. Если success=0, то произошла ошибка. Дополнительная информация об ошибке содержится в поле info ==== Пример ответа сервера ==== Ниже приведен пример ответа сервера в формате XML 1 1 Оплата при получении ===== Пример запроса на получение данных ===== Пример запроса на получение данных о типах доставки: http://mycompany.virtpos.ru/api/orders/get_delivery_types?apikey=MySecret&format=xml ==== Параметры запроса ==== Параметры, которые не отмечены как **get only**, могут быть переданы как get- или как post-параметры. * **apikey** - Секретный ключ для доступа к данным. Обязательный параметр. * **format** (get only) - формат, в котором сервер отдаст данные. Может принимать значения "xml" или "json". Необязательный параметр. ==== Ответ сервера ==== В ответ получаем XML или JSON. В ответе обязательно присутствует поле success. Если success=1, то операция выполнена успешно. Если success=0, то произошла ошибка. Дополнительная информация об ошибке содержится в поле info ==== Пример ответа сервера ==== Ниже приведен пример ответа сервера в формате XML 1 1 Самовывоз ===== Пример запроса на добавление данных ===== Пример запроса на добавление заказа: http://mycompany.virtpos.ru/api/orders/add_order?apikey=MySecret&format=xml&id=1 ==== Параметры запроса ==== Параметры, которые не отмечены как **get only**, могут быть переданы как get- или как post-параметры. * **apikey** - Секретный ключ для доступа к данным. Обязательный параметр. * **format** (get only) - формат, в котором сервер отдаст данные. Может принимать значения "xml" или "json". Необязательный параметр. * **id** (get only) - код клиента, для которого требуется добавить заказ. Обязательный параметр. * **external_id** (get only) - (опционально) код клиента во внешней системе, работает аналогично параметру **id** * **order** - непосредственно заказ, в формате JSON. Пример параметра order: { "shipping_address": "Дом 3, корпус 5", "shipping_cost": "130.00", "comment": "После шести", "pickup_from_warehouse_id": "2", "delivery_type_id": "1", "payment_type_id": "1", "items": [ { "item_id": "787", "quantity": "2.000", "unit_base_price": "320.72", "discount": "0" }, { "item_id": "789", "quantity": "3.450", "unit_base_price": "100.10", "discount": "10.2" } ] } ==== Ответ сервера ==== В ответ получаем XML или JSON. В ответе обязательно присутствует поле success. Если success=1, то операция выполнена успешно. Если success=0, то произошла ошибка. Дополнительная информация об ошибке содержится в поле info ==== Пример ответа сервера ==== Ниже приведен пример ответа сервера в формате XML 1 1 1 3 Дом 3, корпус 5 130.00 2 После шести 787 2.000 320.72 0 641.44 789 3.450 100.10 10.2 335.15 ===== Пример запроса на обновление данных ===== Пример запроса на добавление заказа: http://mycompany.virtpos.ru/api/orders/update_order?apikey=MySecret&format=xml&id=1 ==== Параметры запроса ==== Параметры, которые не отмечены как **get only**, могут быть переданы как get- или как post-параметры. * **apikey** - Секретный ключ для доступа к данным. Обязательный параметр. * **format** (get only) - формат, в котором сервер отдаст данные. Может принимать значения "xml" или "json". Необязательный параметр. * **id** (get only) - id заказа, который требуется обновить. Обязательный параметр. * **external_id** (get only) - (опционально) код заказа во внешней системе, работает аналогично параметру **id** * **order** - непосредственно данные заказа, которые требуется обновить, в формате JSON. Пример параметра order (можно обновить любые параметры заказа доступные через /api/orders/): { "paid": 1, "shipped": 1, "cancelled": 0, } ==== Ответ сервера ==== В ответ получаем XML или JSON. В ответе обязательно присутствует поле success. Если success=1, то операция выполнена успешно. Если success=0, то произошла ошибка. Дополнительная информация об ошибке содержится в поле info ==== Пример ответа сервера ==== Ниже приведен пример ответа сервера в формате XML 1 1 0 1928 0 0 0.00 2017-08-24 14:07:06 512.00 0.00 2 Просвещения проспект 1 Самовывоз 1 Оплата при получении ===== Пример запроса на добавление товаров в заказ ===== http://mycompany.virtpos.ru/api/orders/add_orders_item?apikey=MySecret&format=xml&id=1 ==== Параметры запроса ==== Параметры, которые не отмечены как **get only**, могут быть переданы как get- или как post-параметры. * **apikey** - Секретный ключ для доступа к данным. Обязательный параметр. * **format** (get only) - формат, в котором сервер отдаст данные. Может принимать значения "xml" или "json". Необязательный параметр. * **id** (get only) - id заказа, в котрый необходимо добавить товар. Обязательный параметр. * **external_id** (get only) - (опционально) код заказа во внешней системе, работает аналогично параметру **id** * **items** - непосредственно данные товаров, которые требуется добавить в заказ, в формате JSON. Пример параметра items: [ { "item_id": "787", "item_external_id": "787634", //используется для поиска order_item по external_id товара "quantity": "2.000", "unit_base_price": "320.72", "discount": "0" }, { "item_id": "789", "item_external_id": "787635", //используется для поиска order_item по external_id товара "quantity": "3.450", "unit_base_price": "100.10", "discount": "10.2" } ] ==== Ответ сервера ==== В ответ получаем XML или JSON. В ответе обязательно присутствует поле success. Если success=1, то операция выполнена успешно. Если success=0, то произошла ошибка. Дополнительная информация об ошибке содержится в поле info ==== Пример ответа сервера ==== Ниже приведен пример ответа сервера в формате XML 1 1 0 1928 0 0 0.00 2017-08-24 14:07:06 512.00 0.00 2 Просвещения проспект 1 Самовывоз 1 Оплата при получении 787 Коньяк "Father's Old Barrel' 3-летний 40% 0.5 л. 1.000 512.00 0.00 512.00 789 Коньяк "Father's Old' 5-летний 40% 0.5 л. 1.000 862.00 0.00 862.00 ===== Пример запроса на обновление товаров в заказе ===== http://mycompany.virtpos.ru/api/orders/update_orders_item?apikey=MySecret&format=xml&id=1 ==== Параметры запроса ==== Параметры, которые не отмечены как **get only**, могут быть переданы как get- или как post-параметры. * **apikey** - Секретный ключ для доступа к данным. Обязательный параметр. * **format** (get only) - формат, в котором сервер отдаст данные. Может принимать значения "xml" или "json". Необязательный параметр. * **id** (get only) - id заказа, в котором необходимо обновить товар. Обязательный параметр. * **external_id** (get only) - (опционально) код заказа во внешней системе, работает аналогично параметру **id** * **items** - непосредственно данные товаров, которые требуется обновить, в формате JSON. Пример параметра items: [ { "item_id": "787", "item_external_id": "787634", //используется для поиска order_item по external_id товара "quantity": "2.000", "unit_base_price": "320.72", "discount": "0" }, { "item_id": "789", "item_external_id": "787635", //используется для поиска order_item по external_id товара "quantity": "3.450", "unit_base_price": "100.10", "discount": "10.2" } ] ==== Ответ сервера ==== В ответ получаем XML или JSON. В ответе обязательно присутствует поле success. Если success=1, то операция выполнена успешно. Если success=0, то произошла ошибка. Дополнительная информация об ошибке содержится в поле info ==== Пример ответа сервера ==== Ниже приведен пример ответа сервера в формате XML 1 1 0 1928 0 0 0.00 2017-08-24 14:07:06 512.00 0.00 2 Просвещения проспект 1 Самовывоз 1 Оплата при получении 787 Коньяк "Father's Old Barrel' 3-летний 40% 0.5 л. 1.000 512.00 0.00 512.00 ===== Пример запроса на удаление товаров из заказа ===== http://mycompany.virtpos.ru/api/orders/delete_orders_item?apikey=MySecret&format=xml&id=1 ==== Параметры запроса ==== Параметры, которые не отмечены как **get only**, могут быть переданы как get- или как post-параметры. * **apikey** - Секретный ключ для доступа к данным. Обязательный параметр. * **format** (get only) - формат, в котором сервер отдаст данные. Может принимать значения "xml" или "json". Необязательный параметр. * **id** (get only) - id заказа, из которого требуется удалить товар. Обязательный параметр. * **external_id** (get only) - (опционально) код заказа во внешней системе, работает аналогично параметру **id** * **items** - непосредственно данные товаров, которые требуется удалить, в формате JSON. Пример параметра items: [ { "item_id": "789", "item_external_id": "787635", //используется для поиска order_item по external_id товара } ] ==== Ответ сервера ==== В ответ получаем XML или JSON. В ответе обязательно присутствует поле success. Если success=1, то операция выполнена успешно. Если success=0, то произошла ошибка. Дополнительная информация об ошибке содержится в поле info ==== Пример ответа сервера ==== Ниже приведен пример ответа сервера в формате XML 1 1 0 1928 0 0 0.00 2017-08-24 14:07:06 512.00 0.00 2 Просвещения проспект 1 Самовывоз 1 Оплата при получении 787 Коньяк "Father's Old Barrel' 3-летний 40% 0.5 л. 1.000 512.00 0.00 512.00