====== 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