API :: 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
<?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>
Пример запроса на получение данных
Пример запроса на получение данных о типах оплаты:
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
<?xml version="1.0" encoding="UTF-8"?> <root> <success>1</success> <payment_types> <type> <id>1</id> <name>Оплата при получении</name> </type> </payment_types> </root>
Пример запроса на получение данных
Пример запроса на получение данных о типах доставки:
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
<?xml version="1.0" encoding="UTF-8"?> <root> <success>1</success> <delivery_types> <type> <id>1</id> <name>Самовывоз</name> </type> </delivery_types> </root>
Пример запроса на добавление данных
Пример запроса на добавление заказа:
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:
{
"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
<?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>
Пример запроса на обновление данных
Пример запроса на добавление заказа:
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/):
{
"paid": 1,
"shipped": 1,
"cancelled": 0,
}
Ответ сервера
В ответ получаем XML или JSON. В ответе обязательно присутствует поле success. Если success=1, то операция выполнена успешно. Если success=0, то произошла ошибка. Дополнительная информация об ошибке содержится в поле info
Пример ответа сервера
Ниже приведен пример ответа сервера в формате 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>
Пример запроса на добавление товаров в заказ
Параметры запроса
Параметры, которые не отмечены как 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
<?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>
Пример запроса на обновление товаров в заказе
Параметры запроса
Параметры, которые не отмечены как 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
<?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>
Пример запроса на удаление товаров из заказа
Параметры запроса
Параметры, которые не отмечены как 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
<?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>