API предназначен для управления данными в АнтиСклад из внешних приложений.
Это позволяет синхронизировать работу интернет-магазинов с управленческим учётом в АнтиСклад.
API реализован основываясь на принципах REST.
Обмен осуществляется в формате XML по протоколу HTTPS посредством запросов GET, PUT, DELETE, POST.
Авторизация запросов:
Форма запросов:
POST https://<домен>.antisklad.ru/admin/clients.xml GET https://<домен>.antisklad.ru/admin/client/<id>.xml ...
Подписки на события представляет собой возможность получать уведомления об изменениях на складе путем отправки http-запроса. При возникновении события по указанному в подписке адресу будет выполнен POST-запрос, в теле которого будет передано описание события в формате XML.
Приложения в системе «Антисклад» могут быть двух видов: общие и частные. Общие приложения доступны для всех клиентов «Антисклад». Частные приложения доступны только их авторам или заказчикам.
Общие положения:
Фактически, приложение может находится где угодно, важно лишь правильно настроить URL установки, входа и удаления.
После того как пользователь нажал ссылку установки приложения в настройках приложений, генерируется уникальный token-ключ, который отправляется в качестве GET-параметра по указанному URL установки приложения (см. форму редактирования свойств приложения). Помимо параметра «token» отправляется также GET-параметр «domain» c названием текущего домена. В этот момент, полученный token-ключ необходимо сохранить и использовать для token-авторизации для API-запросов (передавать в заголовке «Karkas_token» с каждым запросом).
Чтобы настроить приложение, администратору необходимо заполнить соответствующие поля, нажав кнопку создания нового приложения в списке приложений (меню Настройки / Приложения):
В дальнейшем, при необходимости сделать разрабатываемое приложение общим для всех клиентов, необходимо получить согласие от администрации. Приложение может быть как бесплатным, так и платным - в зависимости от тарифа и договоренности с администрацией.
Запроc:
GET /admin/stores.xml
Ответ:
<?xml version="1.0" encoding="UTF-8"?> <stores type="array"> <store id="1"><name>Главный склад</name></store> <store id="2"><name>Дополнительный склад</name></store> </stores>
Запроc:
GET /admin/shops.xml
Ответ:
<?xml version="1.0" encoding="UTF-8"?> <shops type="array"> <shop id="1"><name>Мой интернет-магазин</name><store>1</store></shop> <shop id="2"><name>Моя розничная точка</name><store>1</store></shop> </shops>
Запроc:
POST /admin/shops.xml
Тело запроса:
<?xml version="1.0" encoding="UTF-8"?> <shop> <name>Новый магазин</name> </shop>
Ответ:
<?xml version="1.0" encoding="UTF-8"?> <shop id="3"> <name>Новый магазин</name> <created type="timestamp">2012-01-01 01:01:01 +0400</created> </category>
Запроc:
PUT /admin/shops/1.xml
Тело запроса:
<?xml version="1.0" encoding="UTF-8"?> <shop> <name>Другое название магазина</name> <store>2</store> </shop>
Ответ:
<?xml version="1.0" encoding="UTF-8"?> <shop id=5> <name>Другое название магазина</name> <store>2</store> </shop>
Помимо общего состояния склада имеется возможность получить вместо полного списка только те позиции, которые подверглись изменению на складе, начиная с указанной даты. К измененным остаткам относится товар, у которого изменились количественно-стоимостные показатели.
Запроc:
GET /admin/stores/1.xml?parameter=value
Параметры:
Например, чтобы отобрать все товары, у которых артикул начинается на «2», используйте в запросе параметр: …&article=2%25 , где %25 в url-кодировке (символ % ) означает любую последовательность символов
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<store type="array">
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product id="123" extId="3004">Товар 1</product>
<modification>
<parameter name="Размер">55</parameter>
</modification>
<quantity>100</quantity>
<price>10</price>
<cost>2</cost>
<currency>RUB</currency>
<rate>1</rate>
<discount>0</discount>
<barcodes>
<barcode>2047308355270</barcode>
</barcodes>
</item>
<item id="010ef0a8841bd2490a7e39a474cfed03">
<product id="123" extId="3004">Товар 1</product>
<modification>
<parameter name="Размер">57</parameter>
</modification>
<quantity>10</quantity>
<price>10</price>
<cost>2</cost>
<currency>RUB</currency>
<rate>1</rate>
</item>
</items>
</store>
Помимо общего состояния указанных складов имеется возможность получить вместо полного списка только те позиции, которые подверглись изменению на указанных складах, начиная с указанной даты. К измененным остаткам относится товар, у которого изменились количественно-стоимостные показатели.
Запроc:
GET|POST /admin/stores_items.xml?parameter=value
Параметры: … - теже параметры, что у предыдущего запроса
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product id="123" extId="3004">Товар 1</product>
<modification>
<parameter name="Размер">55</parameter>
</modification>
<quantity>100</quantity>
<price>10</price>
<cost>2</cost>
<currency>RUB</currency>
<rate>1</rate>
<barcodes>
<barcode>2047308355270</barcode>
</barcodes>
</item>
<item id="010ef0a8841bd2490a7e39a474cfed03">
<product id="123" extId="3004">Товар 1</product>
<modification>
<parameter name="Размер">57</parameter>
</modification>
<quantity>10</quantity>
<price>10</price>
<cost>2</cost>
<currency>RUB</currency>
<rate>1</rate>
</item>
</items>
Атрибут «quantity» тега <offer> в ответе содержит количество товарной позиции на всех складах.
Запроc:
GET /admin/icml.xml
Параметры:
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<yml_catalog date="2013-06-20 10:09:18">
<shop>
<name>Vorsh</name>
<company>Интернет-магазин Vorsh</company>
<categories>
<category id="12">Кроссовки</category>
<category id="13">Мокасины</category>
<category id="14">Туфли</category>
<category id="15">Ботинки</category>
<category id="16">Сабо</category>
<category id="17">Сандалеты</category>
<category id="18">Полусапоги</category>
</categories>
<offers>
<offer id="97709e3f36e134e02ca69192ba8414da" productId="5970" quantity="0">
<price>4700.00</price>
<xmlId>97709e3f36e134e02ca69192ba8414da</xmlId>
<purchasePrice>2150.00</purchasePrice>
<categoryId>12</categoryId>
<name>Vorsh Кроссовки V534 черн CITY "черная кожа шнурки" (Размер 39)</name>
<productName>Vorsh Кроссовки V534 черн CITY "черная кожа шнурки"</productName>
<picture>http://localhost/clients_as/vmens/images/3338.jpg</picture>
<picture>http://localhost/clients_as/vmens/images/3170.jpg</picture>
<param name="Артикул" code="article">V534 черн CITY</param>
<param name="Размер" is-modificator="1">39</param>
<param name="Цвет" is-modificator="0">Черный</param>
<param name="Подкладка" is-modificator="0">натур. кожа</param>
<param name="Материал верха" is-modificator="0">натур. кожа</param>
<param name="Производство" is-modificator="0">Bochetti</param>
<param name="Тип товара" is-modificator="0">обычный</param>
<barcode>2083782861821</barcode>
</offer>
<offer id="c5febc1bc1e95d99622e53069b51f3f6" productId="5970" quantity="2">
<price>4700.00</price>
<xmlId>c5febc1bc1e95d99622e53069b51f3f6</xmlId>
<purchasePrice>2150.00</purchasePrice>
<categoryId>12</categoryId>
<name>Vorsh Кроссовки V534 черн CITY "черная кожа шнурки" (Размер 40)</name>
<productName>Vorsh Кроссовки V534 черн CITY "черная кожа шнурки"</productName>
<picture>http://localhost/clients_as/vmens/images/3338.jpg</picture>
<picture>http://localhost/clients_as/vmens/images/3170.jpg</picture>
<param name="Артикул" code="article">V534 черн CITY</param>
<param name="Размер" is-modificator="1">40</param>
<param name="Цвет" is-modificator="0">Черный</param>
<param name="Подкладка" is-modificator="0">натур. кожа</param>
<param name="Материал верха" is-modificator="0">натур. кожа</param>
<param name="Производство" is-modificator="0">Bochetti</param>
<param name="Тип товара" is-modificator="0">обычный</param>
<barcode>2092300603737</barcode>
</offer>
<offer id="1430b747b8dfae0894c1b72443553aad" productId="5970" quantity="1">
<price>4700.00</price>
<xmlId>1430b747b8dfae0894c1b72443553aad</xmlId>
<purchasePrice>2150.00</purchasePrice>
<categoryId>12</categoryId>
<name>Vorsh Кроссовки V534 черн CITY "черная кожа шнурки" (Размер 41)</name>
<productName>Vorsh Кроссовки V534 черн CITY "черная кожа шнурки"</productName>
<picture>http://localhost/clients_as/vmens/images/3338.jpg</picture>
<picture>http://localhost/clients_as/vmens/images/3170.jpg</picture>
<param name="Артикул" code="article">V534 черн CITY</param>
<param name="Размер" is-modificator="1">41</param>
<param name="Цвет" is-modificator="0">Черный</param>
<param name="Подкладка" is-modificator="0">натур. кожа</param>
<param name="Материал верха" is-modificator="0">натур. кожа</param>
<param name="Производство" is-modificator="0">Bochetti</param>
<param name="Тип товара" is-modificator="0">обычный</param>
<barcode>2090315165004</barcode>
</offer>
</offers>
</shop>
</yml_catalog>
Запроc:
POST /admin/visitors.xml
Тело запроса:
<?xml version="1.0" encoding="UTF-8"?>
<item>
<shopId>10</shopId>
<date>2023-06-29</date>
<count>100</count>
</item>
Ответ: 200 Ok
Запроc:
GET /admin/categories.xml
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<categories type="array">
<category id=23>
<name>Брюки</name>
<created type="timestamp">2012-01-01 01:01:01 +0400</created>
</category>
<category id=25>
<name>Сапоги</name>
<created type="timestamp">2012-01-01 01:01:01 +0400</created>
</category>
</categories>
Запроc :
GET /admin/categories/25.xml
Ответ:
<?xml version="1.0" encoding="UTF-8"?> <category id=25> <name>Одежда/Костюмы</name> <created type="timestamp">2012-01-01 01:01:01 +0400</created> </category>
Запроc:
POST /admin/categories.xml
Тело запроса:
<?xml version="1.0" encoding="UTF-8"?> <category> <name>Одежда/Мужская/Сорочки</name> </category>
Ответ:
<?xml version="1.0" encoding="UTF-8"?> <category id="56"> <name>Одежда/Мужская/Сорочки</name> <created type="timestamp">2012-01-01 01:01:01 +0400</created> </category>
Запроc:
PUT /admin/categories/55.xml
Тело запроса:
<?xml version="1.0" encoding="UTF-8"?> <category> <name>Сапоги</name> </category>
Ответ:
<?xml version="1.0" encoding="UTF-8"?> <category id=55> <name>Сапоги</name> <created type="timestamp">2012-01-01 01:01:01 +0400</created> </category>
Запроc:
DELETE /admin/categories/77.xml
Ответ:
HTTP/1.1 200 OK
Запроc:
GET /admin/products.xml?parameter=value
По-умолчанию, список сортируется по времени создания товара. Чтобы поменять направление сортировки используйте параметр order-by-creation=desc
Параметры:
Например, чтобы отобрать все товары, у которых артикул начинается на «2», используйте в запросе параметр: …&article=2%25 , где %25 в url-кодировке (символ % ) означает любую последовательность символов
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<products type="array">
<product id="234234" hidden="false" extId="3004">
<category id="3333">Одежда/Мужская/Сорочки</category>
<name>Сорочка мужская B101</name>
<article>W-101/202</article>
<description>Полное описание товара</description>
<short-description>Краткое описание</short-description>
<created>2009-06-04 14:22:34 +0400</created>
<parameters>
<parameter name="Торговая марка">Velaner</parameter>
<parameter name="Производитель">Россия, ООО "Ромашка"</parameter>
<parameter name="Состав">100% хлопок</parameter>
<parameter name="Дата производства">2014-02-13</parameter>
</parameters>
<default-prices>
<cost>856</cost>
<price>1500</price>
<old-price>2000</old-price>
</default-prices>
<vendor id="10">Chili Technologies S.L.</vendor>
<modifications>
<modification>
<parameter name="Размер">XS</parameter>
<barcodes>
<barcode>2046497976600</barcode>
<barcode>4602347974121</barcode>
</barcodes>
</modification>
<modification>
<parameter name="Размер">S</parameter>
<barcodes>
<barcode>2046497345345</barcode>
</barcodes>
</modification>
<modification>
<parameter name="Размер">M</parameter>
<barcodes>
<barcode>2046497345764</barcode>
<barcode>2046497345466</barcode>
</barcodes>
</modification>
</modifications>
<images>
<image id="123123">
<original-url>image.png</original-url>
<url>https://image.antisklad.ru/12349.jpg</url>
<description/>
</image>
<image id="123321">
<original-url>image.png</original-url>
<url>https://image.antisklad.ru/12349.jpg</url>
<description/>
</image>
</images>
</product>
<product id="234234" extId="3005">
<category id="3333">Одежда/Мужская/Брюки</category>
<name>Брюки мужские B2101</name>
<article>W-1014/2002</article>
<description>Полное описание товара</description>
<created>2009-06-04 14:22:34 +0400</created>
<parameters>
<parameter name="Торговая марка">Velaner</parameter>
<parameter name="Производитель">Россия, ООО "Ромашка"</parameter>
<parameter name="Состав">70% хлопок</parameter>
<parameter name="Дата производства">2014-02-14</parameter>
</parameters>
<default-prices>
<cost>786</cost>
<price>2000</price>
<old-price>2400</old-price>
</default-prices>
<vendor id="10">Chili Technologies S.L.</vendor>
<modifications>
<modification>
<parameter name="Размер">44</parameter>
<parameter name="Рост">2</parameter>
<barcodes>
<barcode>2046495345355</barcode>
<barcode>2046345345554</barcode>
</barcodes>
</modification>
<modification>
<parameter name="Размер">44</parameter>
<parameter name="Рост">3</parameter>
<barcodes>
<barcode>2046497345345</barcode>
</barcodes>
</modification>
<modification>
<parameter name="Размер">46</parameter>
<parameter name="Рост">2</parameter>
<barcodes/>
</modification>
</modifications>
<images>
<image id="1234">
<original-url>image4.png</original-url>
<url>https://image.antisklad.ru/1259.jpg</url>
<description/>
</image>
<image id="1231">
<original-url>image5.png</original-url>
<url>https://image.antisklad.ru/123.jpg</url>
<description/>
</image>
</images>
</product>
</products>
Запроc:
GET /admin/products/234234.xml
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<product id="234234" hidden="false" extId="3004">
<category id="3333">Одежда/Мужская/Сорочки</category>
<name>Сорочка мужская B101</name>
<article>W-101/202</article>
<description><p><span style="font-family: 'Times New Roman'; font-size: 16px;"> </span></p></description>
<short-description>Тут краткое описание товара</short-description>
<created>2009-06-04 14:22:34 +0400</created>
<parameters>
<parameter name="Торговая марка">Velaner</parameter>
<parameter name="Производитель">Россия, ООО "Ромашка"</parameter>
<parameter name="Состав">100% хлопок</parameter>
<parameter name="Дата производства">2014-02-13</parameter>
</parameters>
<default-prices>
<cost>786</cost>
<price>2000</price>
<old-price>2400</old-price>
</default-prices>
<vendor id="10">Chili Technologies S.L.</vendor>
<modifications>
<modification itemId="60a70f9aeb399bec32500d331bbe4152">
<parameter name="Размер">XS</parameter>
<barcodes>
<barcode>2046497976600</barcode>
<barcode>4602347974121</barcode>
</barcodes>
</modification>
<modification itemId="b78f692708305e860c1068819a74457e">
<parameter name="Размер">S</parameter>
<barcodes>
<barcode>2046497972345</barcode>
</barcodes>
</modification>
<modification itemId="5bb39ec9322f1a831f6c1d3f7bd883ac">
<parameter name="Размер">M</parameter>
<barcodes>
<barcode>2046497976600</barcode>
</barcodes>
</modification>
</modifications>
<images>
<image id="123123">
<original-url>image.png</original-url>
<url>https://image.antisklad.ru/12349.jpg</url>
<description/>
</image>
<image id="123321">
<original-url>image.png</original-url>
<url>https://image.antisklad.ru/12349.jpg</url>
<description/>
</image>
</images>
</product>
Запрос:
POST /admin/products.xml
Тело запроса:
<?xml version="1.0" encoding="UTF-8"?>
<product extId="123123123">
<categoryId>202</categoryId> или <category>Одежда/Мужская/Сорочки</category>
<name>Сорочка мужская B101</name>
<article>W-101/202</article>
<description>Полное описание товара</description>
<short-description>Краткое описание</short-description>
<default-prices>
<cost>856</cost>
<price>1500</price>
<old-price>2000</old-price>
</default-prices>
<parameters>
<parameter name="Торговая марка">Velaner</parameter>
<parameter name="Производитель">Россия, ООО "Ромашка"</parameter>
<parameter name="Состав">100% хлопок</parameter>
<parameter name="Дата производства">2014-02-13</parameter>
</parameters>
<barcodes><barcode>2055566611122</barcode></barcodes> /* если без модификаций товаров */
<modifications>
<modification itemId="03f544613917945245041ea1581df0c2">
<parameter name="Размер">XS</parameter>
<barcodes>
<barcode>2046497345345</barcode>
</barcodes>
</modification>
<modification itemId="a20695d961021da9ca2faca910b5d7de">
<parameter name="Размер">S</parameter>
<barcodes>
<barcode>2046497375454</barcode>
</barcodes>
</modification>
<modification itemId="9f36407ead0629fc166f14dde7970f68">
<parameter name="Размер">M</parameter>
<barcodes>
<barcode>2046498767834</barcode>
</barcodes>
</modification>
</modifications>
<images>
<image>
<original-url>http://site.ru/image1.png</original-url>
<description>Вид сбоку</description>
</image>
<image>
<original-url>http://site.ru/image2.png</original-url>
<description/>
</image>
</images>
</product>
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<product id="234234">
<created>2009-06-04 14:22:34 +0400</created>
<category id="3333">Одежда/Мужская/Сорочки</category>
<name>Сорочка мужская B101</name>
<article>W-101/202</article>
<description>Полное описание товара</description>
<short-description>Краткое описание</short-description>
<parameters>
<parameter name="Торговая марка">Velaner</parameter>
<parameter name="Производитель">Россия, ООО "Ромашка"</parameter>
<parameter name="Состав">100% хлопок</parameter>
<parameter name="Дата производства">2014-02-13</parameter>
</parameters>
<modifications>
<modification>
<parameter name="Размер">XS</parameter>
<barcodes>
<barcode>2046497345345</barcode>
</barcodes>
</modification>
<modification>
<parameter name="Размер">S</parameter>
<barcodes>
<barcode>2046497375454</barcode>
</barcodes>
</modification>
<modification>
<parameter name="Размер">M</parameter>
<barcodes>
<barcode>2046498767834</barcode>
</barcodes>
</modification>
</modifications>
<images>
<image id="123123">
<original-url>http://site.ru/image1.png</original-url>
<url>https://image.antisklad.ru/12349.png</url>
<description>Вид сбоку</description>
</image>
<image id="123321">
<original-url>http://site.ru/image2.png</original-url>
<url>https://image.antisklad.ru/12349.png</url>
<description/>
</image>
</images>
</product>
В случае, если добавляемый товар с указанным extId уже имеется в списке действующих товаров или в списке удаленных (в корзине), то возвращается ошибка 409 с XML конфликтующего товара. Чтобы отличить удаленный товар от действующего, используйте атрибут deleted=0|1 тега <product/> конфликтующего товара.
При необходимости добавить в рамках одной транзакции множество товаров, необходимо их передавать в корневом тэге <products> Разрешается создавать в одном запросе не более 300 товаров.
Запрос:
POST /admin/products.xml
Тело запроса:
<?xml version="1.0" encoding="UTF-8"?> <products> <product>...</product> ... <product>...</product> </products>
Ответ:
HTTP/1.1 200 OK <products> <product>...</product> ... <product>...</product> </products>
Запроc:
PUT /admin/products/234234.xml
Тело запроса:
<?xml version="1.0" encoding="UTF-8"?>
<product>
<extId>3004</extId>
<categoryId>202</categoryId>
<name>Сорочка мужская B101</name>
<article>W-101/202</article>
<description>Полное описание товара</description>
<short-description>Краткое описание</short-description>
<parameters>
<parameter name="Торговая марка">Velaner</parameter>
<parameter name="Производитель">Россия, ООО "Ромашка"</parameter>
<parameter name="Состав">100% хлопок</parameter>
<parameter name="Дата производства">2014-02-13</parameter>
</parameters>
<modifications>
<modification>
<parameter name="Размер">XS</parameter>
<barcodes>
<barcode>2046497345345</barcode>
</barcodes>
</modification>
<modification>
<parameter name="Размер">S</parameter>
<barcodes/>
</modification>
<modification>
<parameter name="Размер">M</parameter>
<barcodes>
<barcode>2046498767834</barcode>
</barcodes>
</modification>
</modifications>
<images>
<image>
<original-url>http://site.ru/image1.png</original-url>
<description>Вид сбоку</description>
</image>
<image>
<original-url>http://site.ru/image2.png</original-url>
<description/>
</image>
</images>
</product>
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<product id="234234" extId="3004">
<created>2009-06-04 14:22:34 +0400</created>
<category id="3333">Одежда/Мужская/Сорочки</category>
<name>Сорочка мужская B101</name>
<article>W-101/202</article>
<description>Полное описание товара</description>
<short-description>Краткое описание</short-description>
<parameters>
<parameter name="Торговая марка">Velaner</parameter>
<parameter name="Производитель">Россия, ООО "Ромашка"</parameter>
<parameter name="Состав">100% хлопок</parameter>
<parameter name="Дата производства">2014-02-13</parameter>
</parameters>
<modifications>
<modification>
<parameter name="Размер">XS</parameter>
<barcodes>
<barcode>2046497345345</barcode>
</barcodes>
</modification>
<modification>
<parameter name="Размер">S</parameter>
<barcodes/>
</modification>
<modification>
<parameter name="Размер">M</parameter>
<barcodes>
<barcode>2046498767834</barcode>
</barcodes>
</modification>
</modifications>
<images>
<image id="123123">
<original-url>http://site.ru/image1.png</original-url>
<url>https://image.antisklad.ru/12349.png</url>
<description>Вид сбоку</description>
</image>
<image id="123321">
<original-url>http://site.ru/image2.png</original-url>
<url>https://image.antisklad.ru/12349.png</url>
<description/>
</image>
</images>
</product>
Запроc:
DELETE /admin/products/12343.xml
Ответ:
HTTP/1.1 200 OK
Запроc:
GET /admin/clients.xml?parameter=value
Параметры:
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<clients type="array">
<client id="167">
<name>Иванов Иван Иванович</name>
<created>2013-08-25 20:32:08+04</created>
<phone>+79115554126</phone>
<card>26323</card>
<discount>5</discount>
<address>ул.Ленина д.5</address>
<email>ivanov@mail.ru</email>
<comment/>
<birthday>1996-01-25</birthday>
</client>
<client id="185">
<name>Сидоров Сидр Сидорович</name>
<created>2013-09-24 12:05:20+04</created>
<phone>+79125550252</phone>
<card>27652</card>
<discount>5</discount>
<address/>
<email>sidr@yandex.ru</email>
<comment/>
<birthday/>
</client>
</clients>
Запрос:
GET /admin/clients/167.xml
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<client id="167">
<type>person</type>
<name>Иванов Иван Иванович</name>
<created>2013-08-25 20:32:08+04</created>
<phone>+79115554126</phone>
<card>26323</card>
<discount>5</discount>
<start-sales-sum>2000</start-sales-sum>
<address>ул.Ленина д.5</address>
<email>ivanov@mail.ru</email>
<comment/>
<sex>1</sex>
<birthday>1996-01-25</birthday>
</client>
Запрос:
POST /admin/clients.xml
Тело запроса:
<?xml version="1.0" encoding="UTF-8"?>
<client>
<name>Иванов Иван Иванович</name>
<phone>+79115554126</phone>
<card>26323</card>
<discount>5</discount>
<address>ул.Ленина д.5</address>
<email>ivanov@mail.ru</email>
<comment/>
<birthday>1996-01-25</birthday>
</client>
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<client id="167">
<name>Иванов Иван Иванович</name>
<created>2013-08-25 20:32:08+04</created>
<phone>+79115554126</phone>
<card>26323</card>
<discount>5</discount>
<address>ул.Ленина д.5</address>
<email>ivanov@mail.ru</email>
<comment/>
<birthday>1996-01-25</birthday>
</client>
Запрос:
PUT /admin/clients/167.xml
Тело запроса:
<?xml version="1.0" encoding="UTF-8"?>
<client>
<name>Иванов Иван Иванович</name>
<phone>+79115554126</phone>
<card>26323</card>
<discount>5</discount>
<address>ул.Ленина д.5</address>
<email>ivanov@mail.ru</email>
<comment/>
<birthday>1996-01-25</birthday>
</client>
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<client id="167">
<name>Иванов Иван Иванович</name>
<created>2013-08-25 20:32:08+04</created>
<phone>+79115554126</phone>
<card>26323</card>
<discount>5</discount>
<address>ул.Ленина д.5</address>
<email>ivanov@mail.ru</email>
<comment/>
<birthday>1996-01-25</birthday>
</client>
Запроc:
DELETE /admin/clients/234.xml
Ответ:
HTTP/1.1 200 OK
Запроc:
GET /admin/users.xml?parameter=value
Параметры:
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<users type="array">
<user id="1">
<name>Наталья Иванова</name>
<created>2013-08-25 20:32:08+04</created>
<phone>+79115554126</phone>
<email>ivanov@mail.ru</email>
</user>
<user id="2">
<name>Марина Петрова</name>
<created>2013-09-24 12:05:20+04</created>
<phone>+79125550252</phone>
<email>sidr@yandex.ru</email>
</user>
</users>
Запроc:
POST /admin/users.xml
Тело запроса:
<?xml version="1.0" encoding="UTF-8"?> <user> <first_name>Мария</first_name> <login>Мария</login> <password>md5(явный_пароль)</password> </user>
Ответ:
<?xml version="1.0" encoding="UTF-8"?> <shop id="3"> <name>Новый магазин</name> <created type="timestamp">2012-01-01 01:01:01 +0400</created> </category>
Запрос:
GET /admin/users/1.xml
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<user id="1">
<name>Наталья Иванова</name>
<created>2013-08-25 20:32:08+04</created>
<phone>+79115554126</phone>
<email>ivanov@mail.ru</email>
</user>
Запрос:
GET /admin/orders.xml?parameter=value
Параметры:
В ответе присутствует информация о резерве, если заказ еще не отправлен:
<reserved-percent type="integer">73</reserved-percent> - показывает процент реального наполнения товаром по заказу <reserved-all>0</reserved-all> - означает признак полного резервированная (заказ можно отправлять клиенту) <reserve id="21153">Резерв по заказу №16</reserve> - краткую информацию о резерве. Для получения полной информации по резерву необходимо выполнить соответствующий запрос admin/reserves/16.xml
Ответ:
<orders type="array">
<order id="16">
<shop id="1">Магазин "Ромашка"</shop>
<number>10003</number>
<client id="148">
<name>Сидоров Сидр Сергеевич</name>
<created>2013-08-15 20:05:41+04</created>
<phone>+79215454545</phone>
<card>26725</card>
<discount>5</discount>
<address>ул. Сидорова 55 кв.44</address>
<email>sidr@mail.ru</email>
<comment/>
<birthday>1984-12-23</birthday>
</client>
<created>2014-06-26 21:44:27+04</created>
<status>new</status>
<summa>3360.15</summa>
<delivery-type id="4">Курьером</delivery-type>
<delivery-cost>300.15</delivery-cost>
<delivery-address>на деревню дедушке</delivery-address>
<delivery-begin-time/>
<delivery-end-time>2012-12-12 00:00:00+04</delivery-end-time>
<pay-time/>
<pay-type>Наличными</pay-type>
<comment>оплачено 1000р осталось 2360,15р.</comment>
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product id="1056" ext="4334">
<name>Рубашка Апельсин 33549 в полоску</name>
<article>33549</article>
<category id="3">Рубашка</category>
<parameters>
<parameter name="Торговая марка">Апельсин</parameter>
<parameter name="Производитель">Китай</parameter>
</parameters>
<images>
<image id="1037">
<original-url>u2ccsAso5FM.jpg</original-url>
<url>https://demo.antisklad.ru/?image=1037</url>
<description>Вид сверху</description>
</image>
</images>
<created>2013-02-26 20:15:00+04</created>
</product>
<modification>
<parameter name="Размер">40</parameter>
</modification>
<price>2400</price>
<discount>0</discount>
<quantity>1</quantity>
<barcodes>
<barcode>2032914541315</barcode>
</barcodes>
</item>
<item id="010ef0a8841bd2490a7e39a474cfed03">
<product id="2557">
<name>Чулки а-355</name>
<article>а-355</article>
<category id="76">Чулки</category>
<parameters>
<parameter name="Торговая марка">Колобок</parameter>
<parameter name="Производитель">Россия</parameter>
</parameters>
<images>
<image id="1037">
<original-url>chulki-355.jpg</original-url>
<url>https://demo.antisklad.ru/?image=3455</url>
<description/>
</image>
</images>
<created>2013-06-16 22:16:00+04</created>
</product>
<modification>
<parameter name="Рост">30</parameter>
<parameter name="Цвет">Красный</parameter>
</modification>
<price>400</price>
<discount>70</discount>
<quantity>2</quantity>
</item>
</items>
<reserved-percent type="integer">73</reserved-percent>
<reserved-all>0</reserved-all>
<reserve id="21153">Резерв по заказу №16</reserve>
</order>
</orders>
Запрос:
GET /admin/orders/16.xml?parameter=value
Параметры:
В ответе присутствует информация о резерве, если заказ еще не отправлен:
<reserved-percent type="integer">73</reserved-percent> - показывает процент реального наполнения товаром по заказу <reserved-all>0</reserved-all> - означает признак полного резервированная (заказ можно отправлять клиенту) <reserve id="21153">Резерв по заказу №16</reserve> - краткую информацию о резерве.
Для получения полной информации по резерву необходимо выполнить соответствующий запрос admin/reserves/16.xml
Ответ:
<order id="16">
<shop id="1">Магазин "Ромашка"</shop>
<number>10003</number>
<client id="148">
<name>Сидоров Сидр Сергеевич</name>
<created>2013-08-15 20:05:41+04</created>
<phone>+79215454545</phone>
<card>26725</card>
<discount>5</discount>
<address>ул. Сидорова 55 кв.44</address>
<email>sidr@mail.ru</email>
<comment/>
<birthday>1984-12-23</birthday>
</client>
<created>2014-06-26 21:44:27+04</created>
<status>new</status>
<dispatch-required-time/>
<summa>3360.15</summa>
<delivery-type id="4">Курьером</delivery-type>
<delivery-cost>300.15</delivery-cost>
<delivery-address>на деревню дедушке</delivery-address>
<delivery-begin-time/>
<delivery-end-time>2012-12-12 00:00:00+04</delivery-end-time>
<pay-time/>
<pay-type>Наличными</pay-type>
<comment>оплачено 1000р осталось 2360,15р.</comment>
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product id="1056" ext="4333">
<name>Рубашка Апельсин 33549 в полоску</name>
<article>33549</article>
<category id="3">Рубашка</category>
<parameters>
<parameter name="Торговая марка">Апельсин</parameter>
<parameter name="Производитель">Китай</parameter>
</parameters>
<images>
<image id="1037">
<original-url>u2ccsAso5FM.jpg</original-url>
<url>https://demo.antisklad.ru/?image=1037</url>
<description>Вид сверху</description>
</image>
</images>
<created>2013-02-26 20:15:00+04</created>
</product>
<modification>
<parameter name="Размер">40</parameter>
</modification>
<price>2400</price>
<discount>0</discount>
<quantity>1</quantity>
<barcodes>
<barcode>2032914541315</barcode>
</barcodes>
</item>
<item id="010ef0a8841bd2490a7e39a474cfed03">
<product id="2557">
<name>Чулки а-355</name>
<article>а-355</article>
<category id="76">Чулки</category>
<parameters>
<parameter name="Торговая марка">Колобок</parameter>
<parameter name="Производитель">Россия</parameter>
</parameters>
<images>
<image id="1037">
<original-url>chulki-355.jpg</original-url>
<url>https://demo.antisklad.ru/?image=3455</url>
<description/>
</image>
</images>
<created>2013-06-16 22:16:00+04</created>
</product>
<modification>
<parameter name="Рост">30</parameter>
<parameter name="Цвет">Красный</parameter>
</modification>
<price>400</price>
<discount>70</discount>
<quantity>2</quantity>
</item>
</items>
<reserved-percent type="integer">73</reserved-percent>
<reserved-all>0</reserved-all>
<reserve id="21153">Резерв по заказу №16</reserve>
</order>
Запрос:
PUT /admin/orders/16.xml
При указании тега <reserved-all>1</reserved-all> система попытается зарезервировать полностью товар для заказа. Если это не удается, то возвращается ошибка.
Тело запроса:
<order>
<number>10003</number>
<client>148</client>
<dispatch-required-time/>
<status>accepted</status>
<delivery-type>Курьером</delivery-type>
<delivery-cost>300.15</delivery-cost>
<delivery-address>на деревню дедушке</delivery-address>
<delivery-begin-time/>
<delivery-end-time>2012-12-12 00:00:00+04</delivery-end-time>
<pay-time/>
<pay-type>Наличными</pay-type>
<comment>заказ изменен</comment>
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product>2557</product>
<modification>
<parameter name="Рост">30</parameter>
<parameter name="Цвет">Зеленый</parameter>
</modification>
<price>400</price>
<discount>70</discount>
<quantity>5</quantity>
</item>
</items>
<reserved-all>1</reserved-all>
</order>
Ответ:
<order id="16">
<shop>1</shop>
<number>10003</number>
<client id="148">
<name>Сидоров Сидр Сергеевич</name>
<created>2013-08-15 20:05:41+04</created>
<phone>+79215454545</phone>
<card>26725</card>
<discount>5</discount>
<address>ул. Сидорова 55 кв.44</address>
<email>sidr@mail.ru</email>
<comment/>
<birthday>1984-12-23</birthday>
</client>
<created>2014-06-26 21:44:27+04</created>
<status>new</status>
<dispatch-required-time/>
<summa>1960.15</summa>
<delivery-type id="4">Курьером</delivery-type>
<delivery-cost>300.15</delivery-cost>
<delivery-address>на деревню дедушке</delivery-address>
<delivery-begin-time/>
<delivery-end-time>2012-12-12 00:00:00+04</delivery-end-time>
<pay-time/>
<pay-type>Наличными</pay-type>
<comment>заказ изменен</comment>
<items type="array">
<item id="010ef0a8841bd2490a7e39a474cfed03">
<product id="2557" ext="4334">
<name>Чулки а-355</name>
<article>а-355</article>
<category id="76">Чулки</category>
<parameters>
<parameter name="Торговая марка">Колобок</parameter>
<parameter name="Производитель">Россия</parameter>
</parameters>
<images>
<image id="1037">
<original-url>chulki-355.jpg</original-url>
<url>https://demo.antisklad.ru/?image=3455</url>
<description/>
</image>
</images>
<created>2013-06-16 22:16:00+04</created>
</product>
<modification>
<parameter name="Рост">30</parameter>
<parameter name="Цвет">Красный</parameter>
</modification>
<price>400</price>
<discount>70</discount>
<quantity>5</quantity>
</item>
</items>
<reserved-percent type="integer">100</reserved-percent>
<reserved-all>1</reserved-all>
<reserve id="21153">Резерв по заказу №16</reserve>
</order>
Запрос:
POST /admin/orders.xml
Товарную позицию можно идентифицировать 3-мя способами перечисленными в разделе добавления поступления.
Тело запроса:
<order ns="ozon">
<shop>1</shop>
<number>10150</number>
<client>238</client>
<dispatch-required-time/>
<delivery-type id="8">Самовывоз</delivery-type>
<delivery-cost>500</delivery-cost>
<delivery-address>на деревню бабушке</delivery-address>
<delivery-begin-time/>
<delivery-end-time>2013-12-12 00:00:00+04</delivery-end-time>
<pay-time/>
<pay-type>Наличными</pay-type>
<comment>новый супер заказ</comment>
<items type="array">
<item> /* запись по id товара и модификации без кода позиции */
<product>6557</product>
<modification>
<parameter name="Цвет">Синий</parameter>
</modification>
<price>300</price>
<discount>60</discount>
<quantity>1</quantity>
</item>
<item id="010ef0a8841bd2490a7e39a474cfed03"> /* запись по коду позиции */
<price>1300</price>
<discount>0</discount>
<quantity>2</quantity>
</item>
</items>
<reserved-all>1</reserved-all>
</order>
Ответ:
<order id="26" ns="ozon">
<shop>1</shop>
<number>10150</number>
<client id="238">
<name>Иванов Иван Сергеевич</name>
<created>2013-03-25 10:05:31+04</created>
<phone>+79291212121</phone>
<card>3425</card>
<discount>3</discount>
<address>ул. Иванова 55 кв.44</address>
<email>ivan@mail.ru</email>
<comment/>
<birthday>1904-10-23</birthday>
</client>
<created>2012-06-26 21:44:27+04</created>
<dispatch-required-time/>
<status>new</status>
<summa>3140</summa>
<delivery-type id="8">Самовывоз</delivery-type>
<delivery-cost>500</delivery-cost>
<delivery-address>на деревню бабушке</delivery-address>
<delivery-begin-time/>
<delivery-end-time>2013-12-12 00:00:00+04</delivery-end-time>
<pay-time/>
<pay-type>Наличными</pay-type>
<comment>новый супер заказ</comment>
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product id="6557">
<name>Носки б-355</name>
<article>б-355</article>
<category id="54">Носки</category>
<parameters>
<parameter name="Торговая марка">Колобок</parameter>
<parameter name="Производитель">Россия</parameter>
</parameters>
<images/>
<created>2013-01-16 02:06:10+04</created>
</product>
<modification>
<parameter name="Цвет">Синий</parameter>
</modification>
<price>300</price>
<discount>60</discount>
<quantity>1</quantity>
</item>
<item id="010ef0a8841bd2490a7e39a474cfed03">
<product id="67">
<name>Табурет</name>
<article>2125м</article>
<category id="58">Мебель</category>
<parameters>
<parameter name="Цвет">Красный</parameter>
</parameters>
<images/>
<created>2013-06-24 22:06:10+04</created>
</product>
<modification/>
<price>1300</price>
<discount>0</discount>
<quantity>2</quantity>
</item>
</items>
<reserved-percent type="integer">100</reserved-percent>
<reserved-all>1</reserved-all>
<reserve id="21153">Резерв по заказу №16</reserve>
</order>
Запрос:
DELETE /admin/orders/16.xml
Ответ:
HTTP/1.1 200 OK
Запрос:
GET /admin/orders-statuses.xml
Ответ:
<orders-statuses type="array"> <status id="new">Новый</status> <status id="accepted">В обработке</status> <status id="approved">Согласован</status> <status id="packing">На комплектации</status> <status id="packed">Готов к отправке</status> <status id="dispatched">Отправлен</status> <status id="delivered">Выполнен</status> <status id="declined">Отменен</status> </orders-statuses>
Запрос:
GET /admin/pay-types.xml
Ответ:
<pay-types type="array">
<pay-type id="bn">Безналичный расчет</pay-type>
<pay-type id="cash">Наличными</pay-type>
</pay-types>
Запрос:
GET /admin/delivery-types.xml
Ответ:
<delivery-types type="array">
<delivery-type id="1">Доставка курьером в черте города</delivery-type>
<delivery-type id="2">Самовывоз</delivery-type>
</delivery-types>
Запрос:
GET /admin/sales.xml?parameter=value
Параметры:
Ответ:
<sales type="array">
<sale id="16">
<shop id="1">Ромашка</shop>
<store id="1">Склад "Ромашка"</store>
<client id="148">Сидоров Сидр Сергеевич</client>
<created>2014-06-26 21:44:27+04</created>
<action-time>2014-06-26 21:44:27+04</action-time>
<summa>3360.15</summa>
<cash>3360.15</cash>
<comment>оплачено наличными</comment>
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product id="1056">
<name>Рубашка Апельсин 33549 в полоску</name>
<article>33549</article>
<category id="3">Рубашка</category>
<parameters>
<parameter name="Торговая марка">Апельсин</parameter>
<parameter name="Производитель">Китай</parameter>
</parameters>
<images>
<image id="1037">
<original-url>u2ccsAso5FM.jpg</original-url>
<url>https://demo.antisklad.ru/?image=1037</url>
<description>Вид сверху</description>
</image>
</images>
<created>2013-02-26 20:15:00+04</created>
</product>
<modification>
<parameter name="Размер">40</parameter>
</modification>
<price>2400</price>
<discount>0</discount>
<quantity>1</quantity>
<barcodes>
<barcode>2032914541315</barcode>
</barcodes>
</item>
<item id="010ef0a8841bd2490a7e39a474cfed03">
<product id="2557">
<name>Чулки а-355</name>
<article>а-355</article>
<category id="76">Чулки</category>
<parameters>
<parameter name="Торговая марка">Колобок</parameter>
<parameter name="Производитель">Россия</parameter>
</parameters>
<images>
<image id="1037">
<original-url>chulki-355.jpg</original-url>
<url>https://demo.antisklad.ru/?image=3455</url>
<description/>
</image>
</images>
<created>2013-06-16 22:16:00+04</created>
</product>
<modification>
<parameter name="Рост">30</parameter>
<parameter name="Цвет">Красный</parameter>
</modification>
<price>400</price>
<discount>70</discount>
<quantity>2</quantity>
</item>
</items>
</sale>
</sales>
Запрос:
GET /admin/sales/16.xml
Параметры:
Ответ:
<sale id="16">
<shop id="1">Ромашка</shop>
<store id="1">Склад "Ромашка"</store>
<client id="148">Сидоров Сидр Сергеевич</client>
<created>2014-06-26 21:44:27+04</created>
<action-time>2014-06-26 21:44:27+04</action-time>
<summa>3360.15</summa>
<cash>3360.15</cash>
<comment>оплачено наличными</comment>
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product id="1056">
<name>Рубашка Апельсин 33549 в полоску</name>
<article>33549</article>
<category id="3">Рубашка</category>
<parameters>
<parameter name="Торговая марка">Апельсин</parameter>
<parameter name="Производитель">Китай</parameter>
</parameters>
<images>
<image id="1037">
<original-url>u2ccsAso5FM.jpg</original-url>
<url>https://demo.antisklad.ru/?image=1037</url>
<description>Вид сверху</description>
</image>
</images>
<created>2013-02-26 20:15:00+04</created>
</product>
<modification>
<parameter name="Размер">40</parameter>
</modification>
<price>2400</price>
<discount>0</discount>
<quantity>1</quantity>
<barcodes>
<barcode>2032914541315</barcode>
</barcodes>
</item>
<item id="010ef0a8841bd2490a7e39a474cfed03">
<product id="2557">
<name>Чулки а-355</name>
<article>а-355</article>
<category id="76">Чулки</category>
<parameters>
<parameter name="Торговая марка">Колобок</parameter>
<parameter name="Производитель">Россия</parameter>
</parameters>
<images>
<image id="1037">
<original-url>chulki-355.jpg</original-url>
<url>https://demo.antisklad.ru/?image=3455</url>
<description/>
</image>
</images>
<created>2013-06-16 22:16:00+04</created>
</product>
<modification>
<parameter name="Рост">30</parameter>
<parameter name="Цвет">Красный</parameter>
</modification>
<price>400</price>
<discount>70</discount>
<quantity>2</quantity>
</item>
</items>
</sale>
Запрос:
POST /admin/sales.xml
Каждая товарная позиция может быть идентифицирована как уникальным атрибутом <item id='…'>, полученным ранее, так и тегом <product> с тегом модификации, при необходимости. Атрибут <item id='…'> считается более приоритетным над тегами <product> + <modification>
Тело запроса:
<sale uuid="8d2a202e-4d6b-4d3c-9813-6728dc29baa6">
<shop>1</shop>
<client>238</client>
<user>23</user>
<seller>24</seller>
<action-time>2018-10-20 10:36:00</action-time>
<cash>500</cash>
<comment>новая супер продажа</comment>
<items type="array">
<item>
<product>6557</product>
<modification>
<parameter name="Цвет">Синий</parameter>
</modification>
<price>300</price>
<discount>60</discount>
<quantity>1</quantity>
</item>
<item>
<product>67</product>
<modification/>
<price>1300</price>
<discount>0</discount>
<quantity>2</quantity>
</item>
</items>
</sale>
Ответ:
<sale id="26768">
<shop>1</shop>
<user id="23">
<name>Иванова Лариса</name>
</user>
<client id="238">
<name>Иванов Иван Сергеевич</name>
<created>2013-03-25 10:05:31+04</created>
<phone>+79291212121</phone>
<card>3425</card>
<discount>3</discount>
<address>ул. Иванова 55 кв.44</address>
<email>ivan@mail.ru</email>
<comment/>
<birthday>1904-10-23</birthday>
</client>
<created>2012-06-26 21:44:27+04</created>
<summa>2840</summa>
<cash>500</cash>
<comment>новая супер продажа</comment>
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product id="6557">
<name>Носки б-355</name>
<article>б-355</article>
<category id="54">Носки</category>
<parameters>
<parameter name="Торговая марка">Колобок</parameter>
<parameter name="Производитель">Россия</parameter>
</parameters>
<images/>
<created>2013-01-16 02:06:10+04</created>
</product>
<modification>
<parameter name="Цвет">Синий</parameter>
</modification>
<price>300</price>
<discount>60</discount>
<quantity>1</quantity>
</item>
<item id="010ef0a8841bd2490a7e39a474cfed03">
<product id="67">
<name>Табурет</name>
<article>2125м</article>
<category id="58">Мебель</category>
<parameters>
<parameter name="Цвет">Красный</parameter>
</parameters>
<images/>
<created>2013-06-24 22:06:10+04</created>
</product>
<modification/>
<price>1300</price>
<discount>0</discount>
<quantity>2</quantity>
</item>
</items>
</sale>
Запрос:
DELETE /admin/sales/16.xml
Ответ:
HTTP/1.1 200 OK
Запрос:
GET /admin/refunds.xml?parameter=value
Параметры:
Ответ:
<refunds type="array">
<refund id="16">
<saleId>35623</saleId>
<shop id="1">Ромашка</shop>
<store id="1">Склад "Ромашка"</store>
<client id="148">Сидоров Сидр Сергеевич</client>
<created>2014-06-26 21:44:27+04</created>
<action-time>2014-06-26 21:44:27+04</action-time>
<summa>2300</summa>
<cash>0</cash>
<comment>возвращено по безналу</comment>
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product id="1056">
<name>Рубашка Апельсин 33549 в полоску</name>
<article>33549</article>
<category id="3">Рубашка</category>
</product>
<modification>
<parameter name="Размер">40</parameter>
</modification>
<price>2400</price>
<discount>100</discount>
<quantity>1</quantity>
<barcodes>
<barcode>2032914541315</barcode>
</barcodes>
</item>
</items>
</refund>
</refunds>
Запрос:
GET /admin/refunds/16.xml
Параметры:
Ответ:
<refund id="16">
<saleId>35623</saleId>
<shop id="1">Ромашка</shop>
<store id="1">Склад "Ромашка"</store>
<client id="148">Сидоров Сидр Сергеевич</client>
<created>2014-06-26 21:44:27+04</created>
<action-time>2014-06-26 21:44:27+04</action-time>
<summa>2300</summa>
<cash>0</cash>
<comment>возвращено по безналу</comment>
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product id="1056">
<name>Рубашка Апельсин 33549 в полоску</name>
<article>33549</article>
<category id="3">Рубашка</category>
</product>
<modification>
<parameter name="Размер">40</parameter>
</modification>
<price>2400</price>
<discount>100</discount>
<quantity>1</quantity>
<barcodes>
<barcode>2032914541315</barcode>
</barcodes>
</item>
</items>
</refund>
Запрос:
POST /admin/refunds.xml
Тело запроса:
<refund>
<sale>35623</sale>
<user>23</user>
<cash>500</cash>
<comment>возврат брака</comment>
<items type="array">
<item>
<product>6557</product>
<modification>
<parameter name="Цвет">Синий</parameter>
</modification>
<price>300</price>
<discount>60</discount>
<quantity>1</quantity>
</item>
<item>
<product>67</product>
<modification/>
<price>1300</price>
<discount>0</discount>
<quantity>2</quantity>
</item>
</items>
</refund>
Ответ:
<refund id="16">
<saleId>35623</saleId>
<user id="23"></user>
<shop id="1">Ромашка</shop>
<store id="1">Склад "Ромашка"</store>
<client id="148">Сидоров Сидр Сергеевич</client>
<created>2014-06-26 21:44:27+04</created>
<action-time>2014-06-26 21:44:27+04</action-time>
<summa>2300</summa>
<cash>500</cash>
<comment>возвращено по безналу</comment>
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product id="1056">Рубашка Апельсин 33549 в полоску</product>
<modification>
<parameter name="Размер">40</parameter>
</modification>
<price>2400</price>
<discount>100</discount>
<quantity>1</quantity>
</item>
</items>
</refund>
Запрос:
DELETE /admin/refunds/16.xml
Ответ:
HTTP/1.1 200 OK
Закупка от поставщика отличается от обычного поступления только наличием тега <vendor>. Тег <cost> определяет суммарную закупочную стоимость всех позиций поступления.
Запрос:
GET /admin/purchases.xml
Параметры:
Ответ:
<purchases type="array">
<purchase id="16">
<store id="1">Склад "Ромашка"</store>
<vendor id="22">ИП "Иванов И.И."</vendor>
<user id="23">Иванов Андрей</user>
<created>2014-06-26 21:44:27+04</created>
<action-time>2014-06-26 21:44:27+04</action-time>
<cost>3200</cost>
<currency>RUB</currency>
<rate>1</rate>
<quantity>3</quantity>
<comment>возврат брака</comment>
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product id="1056">
<name>Рубашка Апельсин 33549 в полоску</name>
<article>33549</article>
<category id="3">Рубашка</category>
<parameters>
<parameter name="Торговая марка">Апельсин</parameter>
<parameter name="Производитель">Китай</parameter>
</parameters>
<images>
<image id="1037">
<original-url>u2ccsAso5FM.jpg</original-url>
<url>https://demo.antisklad.ru/?image=1037</url>
<description>Вид сверху</description>
</image>
</images>
<created>2013-02-26 20:15:00+04</created>
</product>
<modification>
<parameter name="Размер">40</parameter>
</modification>
<cost>2400</cost>
<currency>RUB</currency>
<rate>1</rate>
<quantity>1</quantity>
<barcodes>
<barcode>2032914541315</barcode>
</barcodes>
</item>
<item id="010ef0a8841bd2490a7e39a474cfed03">
<product id="2557">
<name>Чулки а-355</name>
<article>а-355</article>
<category id="76">Чулки</category>
<parameters>
<parameter name="Торговая марка">Колобок</parameter>
<parameter name="Производитель">Россия</parameter>
</parameters>
<images>
<image id="1037">
<original-url>chulki-355.jpg</original-url>
<url>https://demo.antisklad.ru/?image=3455</url>
<description/>
</image>
</images>
<created>2013-06-16 22:16:00+04</created>
</product>
<modification>
<parameter name="Рост">30</parameter>
<parameter name="Цвет">Красный</parameter>
</modification>
<cost>400</cost>
<currency>RUB</currency>
<rate>1</rate>
<quantity>2</quantity>
</item>
</items>
</purchase>
</purchases>
Запрос:
GET /admin/purchases/16.xml
Параметры:
Ответ:
<purchase id="16">
<store id="1">Склад "Ромашка"</store>
<vendor id="22">ИП "Иванов И.И."</vendor>
<created>2014-06-26 21:44:27+04</created>
<action-time>2014-06-26 21:44:27+04</action-time>
<cost>3200</cost>
<currency>RUB</currency>
<rate>1</rate>
<quantity>3</quantity>
<comment>возврат брака</comment>
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product id="1056">
<name>Рубашка Апельсин 33549 в полоску</name>
<article>33549</article>
<category id="3">Рубашка</category>
<parameters>
<parameter name="Торговая марка">Апельсин</parameter>
<parameter name="Производитель">Китай</parameter>
</parameters>
<images>
<image id="1037">
<original-url>u2ccsAso5FM.jpg</original-url>
<url>https://demo.antisklad.ru/?image=1037</url>
<description>Вид сверху</description>
</image>
</images>
<created>2013-02-26 20:15:00+04</created>
</product>
<modification>
<parameter name="Размер">40</parameter>
</modification>
<cost>2400</cost>
<currency>RUB</currency>
<rate>1</rate>
<quantity>1</quantity>
<barcodes>
<barcode>2032914541315</barcode>
</barcodes>
</item>
<item id="010ef0a8841bd2490a7e39a474cfed03">
<product id="2557">
<name>Чулки а-355</name>
<article>а-355</article>
<category id="76">Чулки</category>
<parameters>
<parameter name="Торговая марка">Колобок</parameter>
<parameter name="Производитель">Россия</parameter>
</parameters>
<images>
<image id="1037">
<original-url>chulki-355.jpg</original-url>
<url>https://demo.antisklad.ru/?image=3455</url>
<description/>
</image>
</images>
<created>2013-06-16 22:16:00+04</created>
</product>
<modification>
<parameter name="Рост">30</parameter>
<parameter name="Цвет">Красный</parameter>
</modification>
<cost>400</cost>
<currency>RUB</currency>
<rate>1</rate>
<quantity>2</quantity>
</item>
</items>
</purchase>
Запрос:
POST /admin/purchases.xml
Закупка от поставщика отличается от обычного поступления только наличием тега <vendor>. Тег <cost> определяет закупочную стоимость позиций поступления/возврата.
Тег <currency> определяет валюту текущего поступления. Одно из значений (RUB, USD, EUR, BYN, KZT, UAH).
Тег <rate> определяет курс указанной валюты для текущего поступления.
Товарную позицию можно идентифицировать 3-мя способами (в порядке приоритета):
Тело запроса:
<purchase>
<store>1</store>
<vendor>22</vendor>
<user>23</user>
<action-time>2020-06-26 21:53</action-time>
<comment>новое супер-поступление</comment>
<currency>RUB</currency>
<rate>1</rate>
<items>
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product>1056</product>
<modification>
<parameter name="Размер">40</parameter>
</modification>
<cost>2400</cost>
<quantity>1</quantity>
</item>
<item id="010ef0a8841bd2490a7e39a474cfed03">
<product>2557</product>
<modification>
<parameter name="Рост">30</parameter>
<parameter name="Цвет">Красный</parameter>
</modification>
<cost>400</cost>
<quantity>2</quantity>
</item>
</items>
</purchase>
Ответ:
<purchase id="116">
<store id="1">Склад "Ромашка"</store>
<vendor id="22">ИП "Иванов И.И."</vendor>
<user id="23">Иванов Андрей</user>
<created>2014-06-26 21:44:27+04</created>
<action-time>2014-06-26 21:44:27+04</action-time>
<cost>3200</cost>
<currency>RUB</currency>
<rate>1</rate>
<quantity>3</quantity>
<comment>возврат брака</comment>
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product id="1056">
<name>Рубашка Апельсин 33549 в полоску</name>
<article>33549</article>
<category id="3">Рубашка</category>
<parameters>
<parameter name="Торговая марка">Апельсин</parameter>
<parameter name="Производитель">Китай</parameter>
</parameters>
<images>
<image id="1037">
<original-url>u2ccsAso5FM.jpg</original-url>
<url>https://demo.antisklad.ru/?image=1037</url>
<description>Вид сверху</description>
</image>
</images>
<created>2013-02-26 20:15:00+04</created>
</product>
<modification>
<parameter name="Размер">40</parameter>
</modification>
<cost>2400</cost>
<currency>RUB</currency>
<rate>1</rate>
<quantity>1</quantity>
</item>
<item id="010ef0a8841bd2490a7e39a474cfed03">
<product id="2557">
<name>Чулки а-355</name>
<article>а-355</article>
<category id="76">Чулки</category>
<parameters>
<parameter name="Торговая марка">Колобок</parameter>
<parameter name="Производитель">Россия</parameter>
</parameters>
<images>
<image id="1037">
<original-url>chulki-355.jpg</original-url>
<url>https://demo.antisklad.ru/?image=3455</url>
<description/>
</image>
</images>
<created>2013-06-16 22:16:00+04</created>
</product>
<modification>
<parameter name="Рост">30</parameter>
<parameter name="Цвет">Красный</parameter>
</modification>
<cost>400</cost>
<currency>RUB</currency>
<rate>1</rate>
<quantity>2</quantity>
</item>
</items>
</purchase>
Если поступление еще не проведено (планируемое поступление), то в нем можно менять все.
Если поступление проведено (находится в архиве), то изменить в нем можно все, кроме склада и количества.
Запрос:
PUT /admin/purchases/116.xml
Тело запроса:
<purchase>
<store>1</store>
<vendor>22</vendor>
<user>23</user>
<action-time>2020-06-26 21:53</action-time>
<comment>новое супер-поступление</comment>
<currency>RUB</currency>
<rate>1</rate>
<items>
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product>1056</product>
<modification>
<parameter name="Размер">40</parameter>
</modification>
<cost>2400</cost>
<quantity>1</quantity>
</item>
<item id="010ef0a8841bd2490a7e39a474cfed03">
<product>2557</product>
<modification>
<parameter name="Рост">30</parameter>
<parameter name="Цвет">Красный</parameter>
</modification>
<cost>400</cost>
<quantity>2</quantity>
</item>
</items>
</purchase>
Ответ: Аналогичен, ответу на добавление поступления.
Запрос:
DELETE /admin/purchases/116.xml
Ответ:
HTTP/1.1 200
<?xml version="1.0"?>
<purchase id="8284">
<store id="1">2-oй Муринский пр. 38</store>
<vendor id="3">жанна произвдство</vendor>
<created>2022-01-29 17:29:07+03</created>
<action-time/>
<cost>0</cost>
<currency>RUB</currency>
<rate>1.00</rate>
<quantity>20</quantity>
<comment>новое супер-поступление</comment>
<items type="array" count="1">
<item id="93a47e2f8219b9304ae61eb25496c7fe">
<product id="48">Халат жен. 215(сатори)</product>
<modification>
<parameter name="size">40</parameter>
<parameter name="colour-sleeve">белый-2</parameter>
</modification>
<cost>111</cost>
<rate>77</rate>
<cost_nat>8547</cost_nat>
<price>3990</price>
<discount>1000</discount>
<quantity>20</quantity>
</item>
</items>
</purchase>
Запрос:
GET /admin/migrations.xml?parameter=value
Параметры:
Ответ:
<migrations type="array">
<migration id="16">
<store_from id="1">Склад "Ромашка"</store>
<store_to id="2">Главный склад</store>
<created>2014-06-26 21:44:27+04</created>
<action-time>2014-06-26 21:44:27+04</action-time>
<cost>3360.15</cost>
<quantity>3</quantity>
<comment>оплачено наличными</comment>
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product id="1056">
<name>Рубашка Апельсин 33549 в полоску</name>
<article>33549</article>
<category id="3">Рубашка</category>
<parameters>
<parameter name="Торговая марка">Апельсин</parameter>
<parameter name="Производитель">Китай</parameter>
</parameters>
<images>
<image id="1037">
<original-url>u2ccsAso5FM.jpg</original-url>
<url>https://demo.antisklad.ru/?image=1037</url>
<description>Вид сверху</description>
</image>
</images>
<created>2013-02-26 20:15:00+04</created>
</product>
<modification>
<parameter name="Размер">40</parameter>
</modification>
<price>2400</price>
<discount>0</discount>
<quantity>1</quantity>
<barcodes>
<barcode>2032914541315</barcode>
</barcodes>
</item>
<item id="010ef0a8841bd2490a7e39a474cfed03">
<product id="2557">
<name>Чулки а-355</name>
<article>а-355</article>
<category id="76">Чулки</category>
<parameters>
<parameter name="Торговая марка">Колобок</parameter>
<parameter name="Производитель">Россия</parameter>
</parameters>
<images>
<image id="1037">
<original-url>chulki-355.jpg</original-url>
<url>https://demo.antisklad.ru/?image=3455</url>
<description/>
</image>
</images>
<created>2013-06-16 22:16:00+04</created>
</product>
<modification>
<parameter name="Рост">30</parameter>
<parameter name="Цвет">Красный</parameter>
</modification>
<price>400</price>
<discount>70</discount>
<quantity>2</quantity>
</item>
</items>
</migration>
</migrations>
Запрос:
GET /admin/migrations/16.xml
Параметры:
Ответ:
<migration id="16">
<store_from id="1">Склад "Ромашка"</store>
<store_to id="2">Главный склад</store>
<created>2014-06-26 21:44:27+04</created>
<action-time>2014-06-26 21:44:27+04</action-time>
<cost>3360.15</cost>
<comment>оплачено наличными</comment>
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product id="1056">
<name>Рубашка Апельсин 33549 в полоску</name>
<article>33549</article>
<category id="3">Рубашка</category>
<parameters>
<parameter name="Торговая марка">Апельсин</parameter>
<parameter name="Производитель">Китай</parameter>
</parameters>
<images>
<image id="1037">
<original-url>u2ccsAso5FM.jpg</original-url>
<url>https://demo.antisklad.ru/?image=1037</url>
<description>Вид сверху</description>
</image>
</images>
<created>2013-02-26 20:15:00+04</created>
</product>
<modification>
<parameter name="Размер">40</parameter>
</modification>
<price>2400</price>
<discount>0</discount>
<quantity>1</quantity>
<barcodes>
<barcode>2032914541315</barcode>
</barcodes>
</item>
<item id="010ef0a8841bd2490a7e39a474cfed03">
<product id="2557">
<name>Чулки а-355</name>
<article>а-355</article>
<category id="76">Чулки</category>
<parameters>
<parameter name="Торговая марка">Колобок</parameter>
<parameter name="Производитель">Россия</parameter>
</parameters>
<images>
<image id="1037">
<original-url>chulki-355.jpg</original-url>
<url>https://demo.antisklad.ru/?image=3455</url>
<description/>
</image>
</images>
<created>2013-06-16 22:16:00+04</created>
</product>
<modification>
<parameter name="Рост">30</parameter>
<parameter name="Цвет">Красный</parameter>
</modification>
<price>400</price>
<discount>70</discount>
<quantity>2</quantity>
</item>
</items>
</migration>
Запрос:
POST /admin/migrations.xml
Тело запроса:
<migration>
<store_from>1</store_from>
<store_to>2</store_to>
<user>23</user>
<comment>новое супер-перемещение</comment>
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product>6557</product>
<modification>
<parameter name="Цвет">Синий</parameter>
</modification>
<quantity>1</quantity>
</item>
<item id="010ef0a8841bd2490a7e39a474cfed03">
<product>67</product>
<modification/>
<quantity>2</quantity>
</item>
</items>
</migration>
Ответ:
<migration id="116">
<store_from>1</store_from>
<store_to>2</store_to>
<user id="23">Иванова Лариса</user>
<created>2012-06-26 21:44:27+04</created>
<cost>2840</cost>
<comment>новое супер-перемещение</comment>
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product id="6557">
<name>Носки б-355</name>
<article>б-355</article>
<category id="54">Носки</category>
<parameters>
<parameter name="Торговая марка">Колобок</parameter>
<parameter name="Производитель">Россия</parameter>
</parameters>
<images/>
<created>2013-01-16 02:06:10+04</created>
</product>
<modification>
<parameter name="Цвет">Синий</parameter>
</modification>
<price>300</price>
<discount>60</discount>
<quantity>1</quantity>
</item>
<item id="010ef0a8841bd2490a7e39a474cfed03">
<product id="67">
<name>Табурет</name>
<article>2125м</article>
<category id="58">Мебель</category>
<parameters>
<parameter name="Цвет">Красный</parameter>
</parameters>
<images/>
<created>2013-06-24 22:06:10+04</created>
</product>
<modification/>
<price>1300</price>
<discount>0</discount>
<quantity>2</quantity>
</item>
</items>
</migration>
Запрос:
DELETE /admin/migrations/116.xml
Ответ:
HTTP/1.1 200 OK
Возврат поставщику отличается от обычного списания только наличием тега <vendor>. Тег <cost> определяет закупочную стоимость списания и его позиций.
Запрос:
GET /admin/restores.xml
Параметры:
Ответ:
<restores type="array">
<restore id="16">
<store id="1">Склад "Ромашка"</store>
<vendor id="22">ИП "Иванов И.И."</vendor>
<user id="23">Иванов Андрей</user>
<created>2014-06-26 21:44:27+04</created>
<action-time>2014-06-26 21:44:27+04</action-time>
<cost>3200</cost>
<quantity>3</quantity>
<comment>возврат брака</comment>
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product id="1056">
<name>Рубашка Апельсин 33549 в полоску</name>
<article>33549</article>
<category id="3">Рубашка</category>
<parameters>
<parameter name="Торговая марка">Апельсин</parameter>
<parameter name="Производитель">Китай</parameter>
</parameters>
<images>
<image id="1037">
<original-url>u2ccsAso5FM.jpg</original-url>
<url>https://demo.antisklad.ru/?image=1037</url>
<description>Вид сверху</description>
</image>
</images>
<created>2013-02-26 20:15:00+04</created>
</product>
<modification>
<parameter name="Размер">40</parameter>
</modification>
<cost>2400</cost>
<currency>RUB</currency>
<rate>1</rate>
<quantity>1</quantity>
<barcodes>
<barcode>2032914541315</barcode>
</barcodes>
</item>
<item id="010ef0a8841bd2490a7e39a474cfed03">
<product id="2557">
<name>Чулки а-355</name>
<article>а-355</article>
<category id="76">Чулки</category>
<parameters>
<parameter name="Торговая марка">Колобок</parameter>
<parameter name="Производитель">Россия</parameter>
</parameters>
<images>
<image id="1037">
<original-url>chulki-355.jpg</original-url>
<url>https://demo.antisklad.ru/?image=3455</url>
<description/>
</image>
</images>
<created>2013-06-16 22:16:00+04</created>
</product>
<modification>
<parameter name="Рост">30</parameter>
<parameter name="Цвет">Красный</parameter>
</modification>
<cost>400</cost>
<currency>RUB</currency>
<rate>1</rate>
<quantity>2</quantity>
</item>
</items>
</restore>
</restores>
Запрос:
GET /admin/restores/16.xml
Параметры:
Ответ:
<restore id="16">
<store id="1">Склад "Ромашка"</store>
<vendor id="22">ИП "Иванов И.И."</vendor>
<created>2014-06-26 21:44:27+04</created>
<action-time>2014-06-26 21:44:27+04</action-time>
<cost>3200</cost>
<quantity>3</quantity>
<comment>возврат брака</comment>
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product id="1056">
<name>Рубашка Апельсин 33549 в полоску</name>
<article>33549</article>
<category id="3">Рубашка</category>
<parameters>
<parameter name="Торговая марка">Апельсин</parameter>
<parameter name="Производитель">Китай</parameter>
</parameters>
<images>
<image id="1037">
<original-url>u2ccsAso5FM.jpg</original-url>
<url>https://demo.antisklad.ru/?image=1037</url>
<description>Вид сверху</description>
</image>
</images>
<created>2013-02-26 20:15:00+04</created>
</product>
<modification>
<parameter name="Размер">40</parameter>
</modification>
<cost>2400</cost>
<currency>RUB</currency>
<rate>1</rate>
<quantity>1</quantity>
<barcodes>
<barcode>2032914541315</barcode>
</barcodes>
</item>
<item id="010ef0a8841bd2490a7e39a474cfed03">
<product id="2557">
<name>Чулки а-355</name>
<article>а-355</article>
<category id="76">Чулки</category>
<parameters>
<parameter name="Торговая марка">Колобок</parameter>
<parameter name="Производитель">Россия</parameter>
</parameters>
<images>
<image id="1037">
<original-url>chulki-355.jpg</original-url>
<url>https://demo.antisklad.ru/?image=3455</url>
<description/>
</image>
</images>
<created>2013-06-16 22:16:00+04</created>
</product>
<modification>
<parameter name="Рост">30</parameter>
<parameter name="Цвет">Красный</parameter>
</modification>
<cost>400</cost>
<currency>RUB</currency>
<rate>1</rate>
<quantity>2</quantity>
</item>
</items>
</restore>
Запрос:
POST /admin/restores.xml
Возврат поставщику отличается от обычного списания только наличием тега <vendor>. Тег <cost> определяет закупочную стоимость позиций списания/возврата.
Товарную позицию можно идентифицировать 3-мя способами перечисленными в разделе добавления поступления.
Тело запроса:
<restore>
<store>1</store>
<vendor>22</vendor>
<user>23</user>
<comment>новое супер-списание</comment>
<items>
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product>1056</product>
<modification>
<parameter name="Размер">40</parameter>
</modification>
<cost>2400</cost>
<currency>RUB</currency>
<rate>1</rate>
<quantity>1</quantity>
</item>
<item id="010ef0a8841bd2490a7e39a474cfed03">
<product>2557</product>
<modification>
<parameter name="Рост">30</parameter>
<parameter name="Цвет">Красный</parameter>
</modification>
<cost>400</cost>
<currency>RUB</currency>
<rate>1</rate>
<quantity>2</quantity>
</item>
</items>
</restore>
Ответ:
<restore id="116">
<store id="1">Склад "Ромашка"</store>
<vendor id="22">ИП "Иванов И.И."</vendor>
<user id="23">Иванов Андрей</user>
<created>2014-06-26 21:44:27+04</created>
<action-time>2014-06-26 21:44:27+04</action-time>
<cost>3200</cost>
<quantity>3</quantity>
<comment>возврат брака</comment>
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product id="1056">
<name>Рубашка Апельсин 33549 в полоску</name>
<article>33549</article>
<category id="3">Рубашка</category>
<parameters>
<parameter name="Торговая марка">Апельсин</parameter>
<parameter name="Производитель">Китай</parameter>
</parameters>
<images>
<image id="1037">
<original-url>u2ccsAso5FM.jpg</original-url>
<url>https://demo.antisklad.ru/?image=1037</url>
<description>Вид сверху</description>
</image>
</images>
<created>2013-02-26 20:15:00+04</created>
</product>
<modification>
<parameter name="Размер">40</parameter>
</modification>
<cost>2400</cost>
<currency>RUB</currency>
<rate>1</rate>
<quantity>1</quantity>
</item>
<item id="010ef0a8841bd2490a7e39a474cfed03">
<product id="2557">
<name>Чулки а-355</name>
<article>а-355</article>
<category id="76">Чулки</category>
<parameters>
<parameter name="Торговая марка">Колобок</parameter>
<parameter name="Производитель">Россия</parameter>
</parameters>
<images>
<image id="1037">
<original-url>chulki-355.jpg</original-url>
<url>https://demo.antisklad.ru/?image=3455</url>
<description/>
</image>
</images>
<created>2013-06-16 22:16:00+04</created>
</product>
<modification>
<parameter name="Рост">30</parameter>
<parameter name="Цвет">Красный</parameter>
</modification>
<cost>400</cost>
<currency>RUB</currency>
<rate>1</rate>
<quantity>2</quantity>
</item>
</items>
</restore>
Запрос:
DELETE /admin/restores/116.xml
Ответ:
HTTP/1.1 200 OK
Запрос:
GET /admin/reserves.xml?parameter=value
Параметры:
Ответ:
<reserves type="array">
<reserve id="16">
<type>migration</type>
<status>new</status>
<name>Мой резерв</name>
<store id="1">Склад "Ромашка"</store>
<store_to id="2">Склад "Второй"</store_to>
<vendor id="2">ООО "Поставщик 1"</vendor>
<order id="1001">100023</order>
<client id="148">Сидоров Сидр Сергеевич</client>
<created>2014-06-26 21:44:27+04</created>
<comment>возвращено по безналу</comment>
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product id="1056">Рубашка Апельсин 33549 в полоску</product>
<modification>
<parameter name="Размер">40</parameter>
</modification>
<price>2400</price>
<discount>100</discount>
<quantity>1</quantity>
</item>
<barcodes>
<barcode>2032914541315</barcode>
</barcodes>
</items>
</reserve>
</reserves>
Запрос:
GET /admin/reserves/16.xml
Параметры:
Ответ:
<reserve id="16">
<type>migration</type>
<status>new</status>
<name>Мой резерв</name>
<store id="1">Склад "Ромашка"</store>
<store_to id="2">Склад "Второй"</store_to>
<vendor id="2">ООО "Поставщик 1"</vendor>
<order id="1001">100023</order>
<client id="148">Сидоров Сидр Сергеевич</client>
<created>2014-06-26 21:44:27+04</created>
<comment>возвращено по безналу</comment>
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product id="1056">Рубашка Апельсин 33549 в полоску</product>
<modification>
<parameter name="Размер">40</parameter>
</modification>
<price>2400</price>
<discount>100</discount>
<quantity>1</quantity>
<barcodes>
<barcode>2032914541315</barcode>
</barcodes>
</item>
</items>
</reserve>
Запрос:
POST /admin/reserves.xml
Тело запроса:
<reserve>
<store>1</store>
<type>migration</type> /* 'migration', 'restore', 'reject' */
<store_to>2</store_to> /* идентификатор склада-приемника */
<name>Мой резерв</name>
<comment>произвольный коментарий…</comment>
<items>
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product>1056</product>
<modification>
<parameter name="Цвет">Синий</parameter>
</modification>
<price>2400</price>
<discount>100</discount>
<quantity>1</quantity>
</item>
</items>
</reserve>
Ответ:
<reserve id="16">
<type>other</type>
<status>new</status>
<name>Мой резерв</name>
<store id="1">Склад "Ромашка"</store>
<created>2014-06-26 21:44:27+04</created>
<comment>возвращено по безналу</comment>
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product id="1056">Рубашка Апельсин 33549 в полоску</product>
<modification>
<parameter name="Размер">40</parameter>
</modification>
<price>2400</price>
<discount>100</discount>
<quantity>1</quantity>
</item>
</items>
</reserve>
Запрос:
PUT /admin/reserves/16.xml
Тело запроса:
<?xml version="1.0" encoding="UTF-8"?>
<reserve>
<items>
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product>1056</product>
<modification>
<parameter name="Цвет">Синий</parameter>
</modification>
<quantity>2</quantity>
</item>
</items>
</reserve>
Ответ:
<reserve id="16">
<type>other</type>
<status>new</status>
<name>Мой резерв</name>
<store id="1">Склад "Ромашка"</store>
<created>2014-06-26 21:44:27+04</created>
<comment>возвращено по безналу</comment>
<items type="array">
<item id="86e03fab6db4c6d9cf33e616622b6c45">
<product id="1056">Рубашка Апельсин 33549 в полоску</product>
<modification>
<parameter name="Размер">40</parameter>
</modification>
<price>2400</price>
<discount>100</discount>
<quantity>2</quantity>
</item>
</items>
</reserve>
Запрос:
DELETE /admin/reserves/16.xml
Ответ:
HTTP/1.1 200 OK
Запроc:
GET /admin/expenditures?parameter=value
Параметры:
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<expenditures type="array">
<expenditure id="1">
<budget id="3" class="retail">Из кассы</budget>
<expense>1</expense>
<employee id="22">Иванов Иван Иванович</employee>
<shop id="2">Магазин "Ромашка"</shop>
<value>200</value>
<comment>такси</comment>
<cash>1</cash>
<action>2013-09-24 12:05:20+04</action>
</expenditure>
<expenditure id="1">
<budget id="4" class="retail">В кассу</budget>
<income>1</income>
<employee id="22">Иванов Иван Иванович</employee>
<shop id="2">Магазин "Ромашка"</shop>
<value>500</value>
<comment>за опоздание</comment>
<cash>1</cash>
<action>2013-09-24 13:05:20+04</action>
</expenditure>
</expenditures>
Теги: - cash - признак наличных денег - employee - необязательный тег, привязка расхода к конкретному сотруднику (записать за сотрудником) - shop - необязательный тег, привязка расхода к конкретному магазину (записать за магазином) - expense - признак расхода - income - признак дохода
Запрос:
GET /admin/expenditures/2.xml
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<expenditure id="2">
<budget id="3" class="retail">Из кассы</budget>
<expense>1</expense>
<employee id="22">Иванов Иван Иванович</employee>
<shop id="2">Магазин "Ромашка"</shop>
<value>200</value>
<comment>такси</comment>
<cash>1</cash>
<action>2013-09-24 12:05:20+04</action>
</expenditure>
Запрос:
POST /admin/expenditures.xml
Тело запроса:
<?xml version="1.0" encoding="UTF-8"?>
<expenditure>
<budget>3</budget>
<employee>22</employee>
<shop>2</shop>
<value>200</value>
<comment>такси</comment>
<cash>1</cash>
<action>2013-09-24 12:05:20+04</action>
</expenditure>
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<expenditure id="2">
<budget id="3" class="retail">Из кассы</budget>
<expense>1</expense>
<employee id="22">Иванов Иван Иванович</employee>
<shop id="2">Магазин "Ромашка"</shop>
<value>200</value>
<comment>такси</comment>
<cash>1</cash>
<action>2013-09-24 12:05:20+04</action>
</expenditure>
Запрос:
PUT /admin/expenditures/2.xml
Тело запроса:
<?xml version="1.0" encoding="UTF-8"?>
<expenditure>
<value>250</value>
</expenditure>
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<expenditure id="2">
<budget id="3" class="retail">Из кассы</budget>
<expense>1</expense>
<employee id="22">Иванов Иван Иванович</employee>
<shop id="2">Магазин "Ромашка"</shop>
<value>250</value>
<comment>такси</comment>
<cash>1</cash>
<action>2013-09-24 12:05:20+04</action>
</expenditure>
Запроc:
DELETE /admin/expenditures/2.xml
Ответ:
HTTP/1.1 200 OK
Запроc:
GET /admin/budgets?parameter=value
Параметры:
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<budgets type="array">
<budget id="1">
<name>Зарплата</name>
<parent/>
<comment>основная часть</comment>
<default_summa>30000</default_summa>
<permanent>1</permanent>
<analysis>1</analysis>
<expense>1</expense>
<income>0</income>
<class/>
<user id="23">Иванов Иван Иванович</user>
<created>2013-09-24 12:05:20+04</created>
</budget>
<budget id="2">
<name>Процент от продаж</name>
<parent id="1">Зарплата</parent>
<comment/>
<default_summa/>
<permanent>0</permanent>
<analysis>1</analysis>
<expense>1</expense>
<income>0</income>
<class/>
<created>2013-09-24 12:05:20+04</created>
</budget>
<budget id="3">
<name>Из кассы</name>
<parent/>
<comment/>
<default_summa/>
<permanent>0</permanent>
<analysis>1</analysis>
<expense>1</expense>
<income>0</income>
<class>retail</class>
<created>2013-09-24 12:05:20+04</created>
</budget>
</budgets>
Теги: - default_summa - сумма, которая будет подставляться по-умолчанию при вводе, если не указана другая - parent - родительская статья - permanent 0|1 - признак постоянной статьи - analysis 0|1 - признак участия в анализе работы предприятия - expense 0|1 - признак того, что статья является статьей расхода - income 0|1 - признак того, что статья является статьей дохода - class - произвольная классификация статьи для внутреннего использования
Запрос:
GET /admin/budgets/2.xml
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<budget id="2">
<name>Процент от продаж</name>
<parent id="1">Зарплата</parent>
<comment/>
<default_summa/>
<permanent>0</permanent>
<analysis>1</analysis>
<expense>1</expense>
<income>0</income>
<class/>
<created>2013-09-24 12:05:20+04</created>
</budget>
Запрос:
POST /admin/budgets.xml
Тело запроса:
<?xml version="1.0" encoding="UTF-8"?>
<budget>
<name>Процент от продаж</name>
<parent>1</parent>
</budget>
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<budget id="2">
<name>Процент от продаж</name>
<parent id="1">Зарплата</parent>
<comment/>
<default_summa/>
<permanent>0</permanent>
<analysis>1</analysis>
<expense>1</expense>
<income>0</income>
<class/>
<created>2013-09-24 12:05:20+04</created>
</budget>
Запрос:
PUT /admin/budgets/2.xml
Тело запроса:
<?xml version="1.0" encoding="UTF-8"?>
<budget>
<name>% от продаж</name>
</budget>
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<budget id="2">
<name>% от продаж</name>
<parent id="1">Зарплата</parent>
<comment/>
<default_summa/>
<permanent>0</permanent>
<analysis>1</analysis>
<expense>1</expense>
<income>0</income>
<class/>
<created>2013-09-24 12:05:20+04</created>
</budget>
Запроc:
DELETE /admin/budgets/2.xml
Ответ:
HTTP/1.1 200 OK
Программа «АнтиСклад» генерирует события определенных типов, перечисленных ниже. У Вас имеется возможность подписаться на любое из них. Под подпиской понимается привязка любого Вашего URL к конкретному типу события, при наступлении которого, по соответствующему URL будет отправлен POST-запрос с XML-данными события, в том числе данные объекта события <info/> (товара, клиента, склада). На одно событие можно оформить любое количество подписок.
Типы событий в программе:
Фактически подписчик информируется о происшедшем событии не сразу после его наступления, а через небольшой промежуток времени (несколько секунд). В теге <time/> передается реальное время возникновения события - именно когда событие было инициировано программой, а не доставлено подписчику.
Пример данных передаваемых подписчику при генерации события:
<?xml version="1.0" encoding="UTF-8"?>
<event>
<time>2015-10-20 16:43:33</time>
<name>product.create</name>
<objectId>5362</objectId>
<info><product id="10323"> ... </product></info>
</event>
Запроc:
POST /admin/subs.xml
Тело запроса:
<?xml version="1.0" encoding="UTF-8"?> <sub> <event>order.create</event> <url>https://my-inet-magaz.ru/from-antisklad/action.php</url> </sub>
Ответ:
<?xml version="1.0" encoding="UTF-8"?> <sub id="101"> <event>order.create</event> <url>https://my-inet-magaz.ru/from-antisklad/action.php</url> </sub>
POST-данные передаваемые подписчику:
<?xml version="1.0" encoding="UTF-8"?>
<event>
<time>2020-10-22 19:45:43</time>
<name>order.create</name>
<objectId>1001</objectId>
</event>
Запроc:
POST /admin/subs.xml
Тело запроса:
<?xml version="1.0" encoding="UTF-8"?> <sub> <event>order.update</event> <url>https://my-inet-magaz.ru/from-antisklad/action.php</url> </sub>
Ответ:
<?xml version="1.0" encoding="UTF-8"?> <sub id="102"> <event>order.update</event> <url>https://my-inet-magaz.ru/from-antisklad/action.php</url> </sub>
POST-данные передаваемые подписчику:
<?xml version="1.0" encoding="UTF-8"?>
<event>
<time>2020-10-22 19:45:43</time>
<name>order.update</name>
<objectId>1001</objectId>
</event>
Запроc:
POST /admin/subs.xml
Тело запроса:
<?xml version="1.0" encoding="UTF-8"?> <sub> <event>client.create</event> <url>https://my-inet-magaz.ru/from-antisklad/action.php</url> </sub>
Ответ:
<?xml version="1.0" encoding="UTF-8"?> <sub id="103"> <event>client.create</event> <url>https://my-inet-magaz.ru/from-antisklad/action.php</url> </sub>
POST-данные передаваемые подписчику:
<?xml version="1.0" encoding="UTF-8"?>
<event>
<time>2015-10-22 19:45:43</time>
<name>client.create</name>
<info><client id="443"> ... </client></info>
</event>
Запроc:
POST /admin/subs.xml
Тело запроса:
<?xml version="1.0" encoding="UTF-8"?> <sub> <event>client.update</event> <url>https://my-inet-magaz.ru/from-antisklad/action.php</url> </sub>
Ответ:
<?xml version="1.0" encoding="UTF-8"?> <sub id="104"> <event>client.update</event> <url>https://my-inet-magaz.ru/from-antisklad/action.php</url> </sub>
POST-данные передаваемые подписчику:
<?xml version="1.0" encoding="UTF-8"?>
<event>
<time>2015-10-22 19:45:43</time>
<name>client.update</name>
<info><client id="443"> ... </client></info>
</event>
Запроc:
POST /admin/subs.xml
Тело запроса:
<?xml version="1.0" encoding="UTF-8"?> <sub> <event>client.delete</event> <url>https://my-inet-magaz.ru/from-antisklad/action.php</url> </sub>
Ответ:
<?xml version="1.0" encoding="UTF-8"?> <sub id="105"> <event>client.delete</event> <url>https://my-inet-magaz.ru/from-antisklad/action.php</url> </sub>
POST-данные передаваемые подписчику:
<?xml version="1.0" encoding="UTF-8"?>
<event>
<time>2015-10-22 19:45:43</time>
<name>client.delete</name>
<info><client id="443"> ... </client></info>
</event>
Запроc:
POST /admin/subs.xml
Тело запроса:
<?xml version="1.0" encoding="UTF-8"?> <sub> <event>product.create</event> <url>https://my-inet-magaz.ru/from-antisklad/action.php</url> </sub>
Ответ:
<?xml version="1.0" encoding="UTF-8"?> <sub id="106"> <event>product.create</event> <url>https://my-inet-magaz.ru/from-antisklad/action.php</url> </sub>
POST-данные передаваемые подписчику:
<?xml version="1.0" encoding="UTF-8"?>
<event>
<time>2015-10-22 19:45:43</time>
<name>product.create</name>
<info><product id="5432"> ... </product></info>
</event>
Запроc:
POST /admin/subs.xml
Тело запроса:
<?xml version="1.0" encoding="UTF-8"?> <sub> <event>product.update</event> <url>https://my-inet-magaz.ru/from-antisklad/action.php</url> </sub>
Ответ:
<?xml version="1.0" encoding="UTF-8"?> <sub id="107"> <event>product.update</event> <url>https://my-inet-magaz.ru/from-antisklad/action.php</url> </sub>
POST-данные передаваемые подписчику:
<?xml version="1.0" encoding="UTF-8"?>
<event>
<time>2015-10-22 19:45:43</time>
<name>product.update</name>
<info><product id="5432"> ... </product></info>
</event>
Запроc:
POST /admin/subs.xml
Тело запроса:
<?xml version="1.0" encoding="UTF-8"?> <sub> <event>product.delete</event> <url>https://my-inet-magaz.ru/from-antisklad/action.php</url> </sub>
Ответ:
<?xml version="1.0" encoding="UTF-8"?> <sub id="108"> <event>product.delete</event> <url>https://my-inet-magaz.ru/from-antisklad/action.php</url> </sub>
POST-данные передаваемые подписчику:
<?xml version="1.0" encoding="UTF-8"?>
<event>
<time>2015-10-22 19:45:43</time>
<name>product.delete</name>
<info><product id="5432"> ... </product></info>
</event>
</sub></code>
Ответ:
<?xml version="1.0" encoding="UTF-8"?> <sub id="109"> <event>store.update</event> <url>https://my-inet-magaz.ru/from-antisklad/action.php</url> <store>1</store> </sub>
POST-данные передаваемые подписчику:
<?xml version="1.0" encoding="UTF-8"?>
<event>
<time>2015-10-22 19:45:43</time>
<name>store.update</name>
<info><store id="1" modified-time="2015-10-22 19:44:01"></store></info>
</event>
Пример PHP-кода подписчика обработки события на изменения остатков на складе:
<code>
<?php
// Получить и разобрать XML объекта события
$data = file_get_contents('php://input');
$xevent = new SimpleXMLElement($data);
$eventName = (string)$xevent->name;
$storeID = (int)$xevent->info->store->attributes()[['id']];
$time = (string)$xevent->info->store->attributes()[['modified-time']];
// получить измененные позиции склада для store.update
$time = urlencode($time);
$request = new HTTP_Request2("https://mylogin:mypassword@mydomain.antisklad.ru/admin/stores/{$storeID}.xml?changed-from={$time}", HTTP_Request2::METHOD_GET);
$request->setConfig(array(
'ssl_verify_peer' => FALSE,
'ssl_verify_host' => FALSE
));
$response = $request->send();
$response_Body = $response->getBody();
$xstoreItems = new SimpleXMLElement($response_Body);
// сохранить измененные позиции остатков товаров в файл
file_put_contents("/tmp/{$eventName}.{$storeID}.xml", $xstoreItems->asXML());
?>
*/
Запроc:
GET /admin/subs.xml
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<subs type="array">
<sub id="100">
<event>order.create</event>
<url>https://my-inet-magaz.ru/admin/create-order.php</url>
<shop>1</shop>
</sub>
<sub id="102">
<event>client.create</event>
<url>https://my-inet-magaz.ru/admin/create-client.php</url>
</sub>
</subs>
Запроc:
GET /admin/subs/56.xml
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<sub id="56">
<event>order.create</event>
<url>https://my-inet-magaz.ru/admin/create-order.php</url>
<shop>1</shop>
</sub>
Запроc:
DELETE /admin/subs/77.xml
Ответ:
HTTP/1.1 200 OK
В ответе сервера, в случае ошибки 500, может придти xml с логической ошибкой работы приложения.
Например, при попытке создать карточку товара с названием, аналогичным в списке, система вернет xml:
<?xml version="1.0" encoding="UTF-8"?> <error type="logic" index="ALREADY EXISTS" class="product" id="3497" name="1000">Аналогичная карточка товара "1000" уже существует</error>
, где, в качестве атрибутов ошибки, выступает вся необходимая для анализа информация. В значении тега будет представлен «читаемый» текст ошибки.
400 => 'Bad request', 401 => 'Unauthorized', 402 => 'Payment Required', 403 => 'Forbidden', 404 => 'Not found', 500 => 'Internal Server Error', 501 => 'Not Implemented', 503 => 'Service Temporarily Unavailable',
Запроc:
GET /admin/errors.xml
Ответ:
<?xml version="1.0" encoding="UTF-8"?> <errors> <error>IS NOT FOUND</error> <error>ALREADY EXISTS</error> <error>EMPTY VALUE</error> <error>INVALID VALUE</error> <error>IMPOSSIBLE TO DO</error> </errors>