Перейти к содержаниюСправка

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

public:api:orders [25.09.2026 18:17] – создано - внешнее изменениеpublic:api:orders [27.09.2026 02:09] (текущий) – удалено - внешнее изменение (Дата неизвестна)
Строка 1: Строка 1:
-====== Orders. Заказы ====== 
  
-В системе реализован программный интерфейс для получения и добавления данных о Заказах. Данные выгружаются по http протоколу. Формат на выбор - xml или json. 
- 
- 
-===== Пример запроса на получение данных ===== 
- 
-Пример запроса на получение данных о заказах: 
- 
- https://[company].myvirtualpos.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 
- 
-<file xml> 
-<?xml version="1.0" encoding="UTF-8"?> 
-<root> 
-   <success>1</success> 
-   <orders> 
-      <order> 
-         <id>1</id> 
-         <paid>0</paid> 
-         <customer_id>1928</customer_id> 
-         <shipped>0</shipped> 
-         <cancelled>0</cancelled> 
-         <shipping_address /> 
-         <shipping_cost>0.00</shipping_cost> 
-         <pickup_receipt_id /> 
-         <comment /> 
-         <guid /> 
-         <created_date>2017-08-24 14:07:06</created_date> 
-         <amount>512.00</amount> 
-         <discount>0.00</discount> 
-         <pickup_from_warehouse_id>2</pickup_from_warehouse_id> 
-         <pickup_from_warehouse_name>Просвещения проспект</pickup_from_warehouse_name> 
-         <delivery_type_id>1</delivery_type_id> 
-         <delivery_type_name>Самовывоз</delivery_type_name> 
-         <payment_type_id>1</payment_type_id> 
-         <payment_type_name>Оплата при получении</payment_type_name> 
-         <items> 
-            <item> 
-               <item_id>787</item_id> 
-               <item_name>Коньяк "Father's Old Barrel' 3-летний 40% 0.5 л.</item_name> 
-               <image /> 
-               <quantity>1.000</quantity> 
-               <unit_base_price>512.00</unit_base_price> 
-               <discount>0.00</discount> 
-               <amount>512.00</amount> 
-            </item> 
-         </items> 
-      </order> 
-   </orders> 
-</root> 
-</file> 
- 
-===== Пример запроса на получение данных ===== 
- 
-Пример запроса на получение данных о типах оплаты: 
- 
- https://[company].myvirtualpos.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 
- 
-<file xml> 
-<?xml version="1.0" encoding="UTF-8"?> 
-<root> 
-   <success>1</success> 
-   <payment_types> 
-      <type> 
-         <id>1</id> 
-         <name>Оплата при получении</name> 
-      </type> 
-   </payment_types> 
-</root> 
-</file> 
-===== Пример запроса на получение данных ===== 
- 
-Пример запроса на получение данных о типах доставки: 
- 
- https://[company].myvirtualpos.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 
- 
-<file xml> 
-<?xml version="1.0" encoding="UTF-8"?> 
-<root> 
-   <success>1</success> 
-   <delivery_types> 
-      <type> 
-         <id>1</id> 
-         <name>Самовывоз</name> 
-      </type> 
-   </delivery_types> 
-</root> 
-</file> 
- 
-===== Пример запроса на добавление данных ===== 
- 
-Пример запроса на добавление заказа: 
- 
- https://[company].myvirtualpos.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: 
- 
-<file JSON> 
-{ 
-   "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" 
-      } 
-   ] 
-} 
-</file> 
-==== Ответ сервера ==== 
- 
-В ответ получаем XML или JSON. В ответе обязательно присутствует поле success. Если success=1, то операция выполнена успешно. Если success=0, то произошла ошибка. Дополнительная информация об ошибке содержится в поле info 
- 
-==== Пример ответа сервера ==== 
- 
-Ниже приведен пример ответа сервера в формате XML 
- 
-<file xml> 
-<?xml version="1.0" encoding="UTF-8"?> 
-<root> 
-   <success>1</success> 
-   <order> 
-      <delivery_type_id>1</delivery_type_id> 
-      <payment_type_id>1</payment_type_id> 
-      <customer_id>3</customer_id> 
-      <shipping_address>Дом 3, корпус 5</shipping_address> 
-      <shipping_cost>130.00</shipping_cost> 
-      <pickup_from_warehouse_id>2</pickup_from_warehouse_id> 
-      <pickup_receipt_id /> 
-      <comment>После шести</comment> 
-      <items> 
-         <item> 
-            <item_id>787</item_id> 
-            <quantity>2.000</quantity> 
-            <unit_base_price>320.72</unit_base_price> 
-            <discount>0</discount> 
-            <amount>641.44</amount> 
-         </item> 
-         <item> 
-            <item_id>789</item_id> 
-            <quantity>3.450</quantity> 
-            <unit_base_price>100.10</unit_base_price> 
-            <discount>10.2</discount> 
-            <amount>335.15</amount> 
-         </item> 
-      </items> 
-   </order> 
-</root> 
-</file> 
- 
-===== Пример запроса на обновление данных ===== 
- 
-Пример запроса на добавление заказа: 
- 
- https://[company].myvirtualpos.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/): 
- 
-<file JSON> 
-{ 
-   "paid": 1, 
-   "shipped": 1, 
-   "cancelled": 0, 
-} 
-</file> 
-==== Ответ сервера ==== 
- 
-В ответ получаем XML или JSON. В ответе обязательно присутствует поле success. Если success=1, то операция выполнена успешно. Если success=0, то произошла ошибка. Дополнительная информация об ошибке содержится в поле info 
- 
-==== Пример ответа сервера ==== 
- 
-Ниже приведен пример ответа сервера в формате XML 
- 
-<file xml> 
-<?xml version="1.0" encoding="UTF-8"?> 
-<root> 
-   <success>1</success> 
-   <order> 
-      <id>1</id> 
-      <paid>0</paid> 
-      <customer_id>1928</customer_id> 
-      <shipped>0</shipped> 
-      <cancelled>0</cancelled> 
-      <shipping_address /> 
-      <shipping_cost>0.00</shipping_cost> 
-      <pickup_receipt_id /> 
-      <comment /> 
-      <guid /> 
-      <created_date>2017-08-24 14:07:06</created_date> 
-      <amount>512.00</amount> 
-      <discount>0.00</discount> 
-      <pickup_from_warehouse_id>2</pickup_from_warehouse_id> 
-      <pickup_from_warehouse_name>Просвещения проспект</pickup_from_warehouse_name> 
-      <delivery_type_id>1</delivery_type_id> 
-      <delivery_type_name>Самовывоз</delivery_type_name> 
-      <payment_type_id>1</payment_type_id> 
-      <payment_type_name>Оплата при получении</payment_type_name> 
-   </order> 
-</root> 
-</file> 
- 
-===== Пример запроса на добавление товаров в заказ ===== 
- 
- https://[company].myvirtualpos.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: 
- 
-<file JSON> 
-[ 
-   { 
-      "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" 
-   } 
-] 
-</file> 
-==== Ответ сервера ==== 
- 
-В ответ получаем XML или JSON. В ответе обязательно присутствует поле success. Если success=1, то операция выполнена успешно. Если success=0, то произошла ошибка. Дополнительная информация об ошибке содержится в поле info 
- 
-==== Пример ответа сервера ==== 
- 
-Ниже приведен пример ответа сервера в формате XML 
- 
-<file xml> 
-<?xml version="1.0" encoding="UTF-8"?> 
-<root> 
-   <success>1</success> 
-   <orders> 
-      <order> 
-         <id>1</id> 
-         <paid>0</paid> 
-         <customer_id>1928</customer_id> 
-         <shipped>0</shipped> 
-         <cancelled>0</cancelled> 
-         <shipping_address /> 
-         <shipping_cost>0.00</shipping_cost> 
-         <pickup_receipt_id /> 
-         <comment /> 
-         <guid /> 
-         <created_date>2017-08-24 14:07:06</created_date> 
-         <amount>512.00</amount> 
-         <discount>0.00</discount> 
-         <pickup_from_warehouse_id>2</pickup_from_warehouse_id> 
-         <pickup_from_warehouse_name>Просвещения проспект</pickup_from_warehouse_name> 
-         <delivery_type_id>1</delivery_type_id> 
-         <delivery_type_name>Самовывоз</delivery_type_name> 
-         <payment_type_id>1</payment_type_id> 
-         <payment_type_name>Оплата при получении</payment_type_name> 
-         <items> 
-            <item> 
-               <item_id>787</item_id> 
-               <item_name>Коньяк "Father's Old Barrel' 3-летний 40% 0.5 л.</item_name> 
-               <image /> 
-               <quantity>1.000</quantity> 
-               <unit_base_price>512.00</unit_base_price> 
-               <discount>0.00</discount> 
-               <amount>512.00</amount> 
-            </item> 
-            <item> 
-               <item_id>789</item_id> 
-               <item_name>Коньяк "Father's Old' 5-летний 40% 0.5 л.</item_name> 
-               <image /> 
-               <quantity>1.000</quantity> 
-               <unit_base_price>862.00</unit_base_price> 
-               <discount>0.00</discount> 
-               <amount>862.00</amount> 
-            </item> 
-         </items> 
-      </order> 
-   </orders> 
-</root> 
-</file> 
- 
-===== Пример запроса на обновление товаров в заказе ===== 
- 
- https://[company].myvirtualpos.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: 
- 
-<file JSON> 
-[ 
-   { 
-      "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" 
-   } 
-] 
-</file> 
-==== Ответ сервера ==== 
- 
-В ответ получаем XML или JSON. В ответе обязательно присутствует поле success. Если success=1, то операция выполнена успешно. Если success=0, то произошла ошибка. Дополнительная информация об ошибке содержится в поле info 
- 
-==== Пример ответа сервера ==== 
- 
-Ниже приведен пример ответа сервера в формате XML 
- 
-<file xml> 
-<?xml version="1.0" encoding="UTF-8"?> 
-<root> 
-   <success>1</success> 
-   <orders> 
-      <order> 
-         <id>1</id> 
-         <paid>0</paid> 
-         <customer_id>1928</customer_id> 
-         <shipped>0</shipped> 
-         <cancelled>0</cancelled> 
-         <shipping_address /> 
-         <shipping_cost>0.00</shipping_cost> 
-         <pickup_receipt_id /> 
-         <comment /> 
-         <guid /> 
-         <created_date>2017-08-24 14:07:06</created_date> 
-         <amount>512.00</amount> 
-         <discount>0.00</discount> 
-         <pickup_from_warehouse_id>2</pickup_from_warehouse_id> 
-         <pickup_from_warehouse_name>Просвещения проспект</pickup_from_warehouse_name> 
-         <delivery_type_id>1</delivery_type_id> 
-         <delivery_type_name>Самовывоз</delivery_type_name> 
-         <payment_type_id>1</payment_type_id> 
-         <payment_type_name>Оплата при получении</payment_type_name> 
-         <items> 
-            <item> 
-               <item_id>787</item_id> 
-               <item_name>Коньяк "Father's Old Barrel' 3-летний 40% 0.5 л.</item_name> 
-               <image /> 
-               <quantity>1.000</quantity> 
-               <unit_base_price>512.00</unit_base_price> 
-               <discount>0.00</discount> 
-               <amount>512.00</amount> 
-            </item> 
-         </items> 
-      </order> 
-   </orders> 
-</root> 
-</file> 
- 
-===== Пример запроса на удаление товаров из заказа ===== 
- 
- https://[company].myvirtualpos.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: 
- 
-<file JSON> 
-[ 
-   { 
-      "item_id": "789", 
-      "item_external_id": "787635", //используется для поиска order_item по external_id товара 
-   } 
-] 
-</file> 
-==== Ответ сервера ==== 
- 
-В ответ получаем XML или JSON. В ответе обязательно присутствует поле success. Если success=1, то операция выполнена успешно. Если success=0, то произошла ошибка. Дополнительная информация об ошибке содержится в поле info 
- 
-==== Пример ответа сервера ==== 
- 
-Ниже приведен пример ответа сервера в формате XML 
- 
-<file xml> 
-<?xml version="1.0" encoding="UTF-8"?> 
-<root> 
-   <success>1</success> 
-   <orders> 
-      <order> 
-         <id>1</id> 
-         <paid>0</paid> 
-         <customer_id>1928</customer_id> 
-         <shipped>0</shipped> 
-         <cancelled>0</cancelled> 
-         <shipping_address /> 
-         <shipping_cost>0.00</shipping_cost> 
-         <pickup_receipt_id /> 
-         <comment /> 
-         <guid /> 
-         <created_date>2017-08-24 14:07:06</created_date> 
-         <amount>512.00</amount> 
-         <discount>0.00</discount> 
-         <pickup_from_warehouse_id>2</pickup_from_warehouse_id> 
-         <pickup_from_warehouse_name>Просвещения проспект</pickup_from_warehouse_name> 
-         <delivery_type_id>1</delivery_type_id> 
-         <delivery_type_name>Самовывоз</delivery_type_name> 
-         <payment_type_id>1</payment_type_id> 
-         <payment_type_name>Оплата при получении</payment_type_name> 
-         <items> 
-            <item> 
-               <item_id>787</item_id> 
-               <item_name>Коньяк "Father's Old Barrel' 3-летний 40% 0.5 л.</item_name> 
-               <image /> 
-               <quantity>1.000</quantity> 
-               <unit_base_price>512.00</unit_base_price> 
-               <discount>0.00</discount> 
-               <amount>512.00</amount> 
-            </item> 
-         </items> 
-      </order> 
-   </orders> 
-</root> 
-</file>