Test JSON Web Services

Тестовая страница для работы с веб-службами.


Пример кода на PHP:
    
    /*******************************************************************************
     * Тестовый пример файла для работы с API корпоративного портала
     * язык запроса JSON
     * распространяется свободно, по приципу - "AS IS"
     **/

    $url = 'api.partner.vm.ua/json.php';

    $json = json_encode(
        (object) array(
            'token'=>'a40403cd7b62a116b0cbf632b7320760',
            'SetOrderQty'=> array(
               (object) array(
                   'RowId'=>'1',
                   'Company'=>'ШИЛЮР',
                   'PayType'=>'Нал',
                   'Item'=>'IP-BAR-FA-ZA225-A01',
                   'OrderQty'=>'8',
                   'Order'=>''
               ),
               (object) array(
                   'RowId'=>'2',
                   'Company'=>'ШИЛЮР',
                   'PayType'=>'Б.Нал',
                   'Item'=>'IP-BAR-T210-082',
                   'OrderQty'=>'5',
                   'Order'=>''
               )
            ),
            'OrderStatus'=> array(
               (object) array(
                  'Company'=>'ШИЛЮР',
                  'Order'=>'ЗК00195084'
               )
            )
        )
    );

    // или так...
    $json = trim('
    {
       "token":"a40403cd7b62a116b0cbf632b7320760",
       "SetOrderQty":[
          {
             "RowId":"1",
             "Company":"\u0428\u0418\u041b\u042e\u0420",
             "PayType":"\u041d\u0430\u043b",
             "Item":"IP-BAR-FA-ZA225-A01",
             "OrderQty":"8",
             "Order":""},
          {
             "RowId":"2",
             "Company":"\u0428\u0418\u041b\u042e\u0420",
             "PayType":"\u041d\u0430\u043b",
             "Item":"IP-BAR-T210-082",
             "OrderQty":"11",
             "Order":""}
       ],
       "OrderStatus":[
          {
              "Company":"\u0428\u0418\u041b\u042e\u0420",
              "Order":"\u0417\u041a00195084"}
       ]
    }
    ');

    $curl = curl_init();
    curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
    curl_setopt( $ch, CURLOPT_POST,           1 );
    curl_setopt( $ch, CURLOPT_POSTFIELDS,     array('jsonRequest' => $json));
    curl_setopt( $ch, CURLOPT_URL,            $url );
    $result = curl_exec($curl);

    print_r($result);
    
Пример кода на 1C 8.X:
Процедура cmdJSON(Команда)

	Данные = Новый Структура;
	Данные.Вставить("token","a40403cd7b62a116b0cbf632b7320760");
	Данные.Вставить("Categories","");

	ЗаписьJSON = Новый ЗаписьJSON;
	ЗаписьJSON.ПроверятьСтруктуру = Истина;
	ЗаписьJSON.УстановитьСтроку(Новый ПараметрыЗаписиJSON(, Символы.Таб));
	ЗаписатьJSON(ЗаписьJSON, Данные);
	СтрокаJSON = ЗаписьJSON.Закрыть();

	СтрокаJSON = "jsonRequest=" + СтрокаJSON;

	HTTPСоединение = Новый HTTPСоединение("api.partner.vm.ua");

	ЗаголовокHTTP = Новый Соответствие();
	ЗаголовокHTTP.Вставить("Content-Type", "application/x-www-form-urlencoded; charset=utf-8");
	HTTPЗапрос = Новый HTTPЗапрос("/json.php", ЗаголовокHTTP);

	HTTPЗапрос.УстановитьТелоИзСтроки(СтрокаJSON, "UTF-8", ИспользованиеByteOrderMark.НеИспользовать);
	Ответ = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос);
	ОтветВВидеСтроки = Ответ.ПолучитьТелоКакСтроку("UTF-8");

	Сообщить(ОтветВВидеСтроки);
КонецПроцедуры

Методы:

SetOrderTable - Создание пустого заказа

Запрос: [««]
{
   "token":"a40403cd7b62a116b0cbf632b7320760",
   "SetOrderTable":[
      {
         "Company":"\u0428\u0418\u041b\u042e\u0420",
         "PayType":"\u041d\u0430\u043b",
         "DeliveryDate":"31.12.2014",
         "WarehouseID":"0"}
   ]
}
Ответ:
{
   "SetOrderTable":[
      {
         "Company":"ШИЛЮР",
         "PayType":"Нал",
         "DeliveryDate":"31.12.2014",
         "WarehouseID":"0",
         "Order":"ЗК00195096",
         "error":""}
   ]
}
Параметры запроса:
Company - код клиента
DeliveryDate - Дата доставки (необязательный)
WarehouseID - Склад отгрузки [0/1], 0 - Основной склад (необязательный)
PayType - способ оплаты [Нал/Б.Нал]

SetOrderQty - Создание/редактирование строк заказа

Запрос: [««]
{
   "token":"a40403cd7b62a116b0cbf632b7320760",
   "SetOrderQty":[
      {
         "RowId":"any_string_1",
         "Company":"\u0428\u0418\u041b\u042e\u0420",
         "PayType":"\u041d\u0430\u043b",
         "DeliveryDate":"31.12.2014",
         "DeliveryDate":"31.12.2014",
         "WarehouseID":"0",
         "Item":"IP-BAR-FA-ZA225-A01",
         "OrderQty":"8",
         "Order":""},
      {...}
   ]
}
Ответ:
{
   "SetOrderQty":[
      {
         "RowId":"any_string_1",
         "Company":"ШИЛЮР",
         "PayType":"Нал",
         "DeliveryDate":"31.12.2014",
         "WarehouseID":"0",
         "Item":"IP-BAR-FA-ZA225-A01",
         "OrderQty":"8.00",
         "ReservationQty":"8.00",
         "Order":"ЗК00195096",
         "error":""},
      {...}
   ]
}
Параметры запроса:
RowId - идентификатор строки | необязательный
Company - код клиента
Item - код номенклатуры
OrderQty - количество
ReservationQty - зарезервированное количество
DeliveryDate - Дата доставки
WarehouseID - Склад отгрузки [0/1], 0 - Основной склад
Order - номер заказа | необязательный
PayType - способ оплаты [Нал/Б.Нал]

OrderStatus - Статус заказа

Запрос: [««]
{
   "token":"a40403cd7b62a116b0cbf632b7320760",
   "OrderStatus":[
      {
          "Company":"\u0428\u0418\u041b\u042e\u0420",
          "Order":"\u0417\u041a00195084"},
      {
          ...},
   ]
}
Ответ:
{
   "OrderStatus":[
      {
         "Company":"\u0428\u0418\u041b\u042e\u0420",
         "Order":"\u0417\u041a00195084",
         "Status":"\u041e\u0442\u043a\u0440\u044b\u0442",
         "error":""},
      {
         ...}
   ]
}
Параметры запроса:
Company - код клиента
Order - номер заказа

OrderConfirm - Подверждение заказа

Запрос: [««]
{
   "token":"a40403cd7b62a116b0cbf632b7320760",
   "OrderConfirm":[
      {
          "Company":"\u0428\u0418\u041b\u042e\u0420",
          "Order":"\u0417\u041a00195084",
          "Comment":""},
      {
          ...},
   ]
}
Ответ:
{
   "OrderConfirm":[
      {
         "Company":"\u0428\u0418\u041b\u042e\u0420",
         "Order":"\u0417\u041a00195084",
         "Comment":"",
         "Status":"\u041e\u0442\u043a\u0440\u044b\u0442",
         "error":""},
      {
          ...},
   ]
}

Параметры запроса:
Company - код клиента
Order - номер заказа
Comment - коментрий

OrderDetail - Строки заказа

Запрос: [««]
{
   "token":"a40403cd7b62a116b0cbf632b7320760",
   "OrderDetail":[
      {
          "Company":"\u0428\u0418\u041b\u042e\u0420",
          "Order":"\u0417\u041a00195084"},
      {
          ...},
   ]
}
Ответ:
{
   "OrderDetail":[
      {
         "Company":"\u0428\u0418\u041b\u042e\u0420",
         "Order":"\u0417\u041a00195084",
         "record":[
            {
               "ExtID":"",
               "ID":"IP-BAR-FA-ZA225-A01",
               "ParentID":"",
               "Name":"\u0410\u041b\u042c\u0411\u041e\u041c BARVA FINE ART ...",
               "OrderQty":"8.00",
               "Unit":"\u0448\u0442",
               "Price":"23.13",
               "Amount":"185.04"},
            {
               ...}
         ],
         "error":""},
      {
         ...}
   ]
}
Параметры запроса:
Company - код клиента
Order - номер заказа

Categories - Список категорий

Запрос: [««]
{
   "token":"a40403cd7b62a116b0cbf632b7320760",
   "Categories":""
}
Ответ:
{
   "Categories":[
      {
         "ID":"ТонКАОр",
         "Name":"001. Тонер оригинальный ..."
      },
      {
         ...}
   ]
}
Параметры запроса:
-

Products - Список товаров

Запрос: [««]
{
   "token":"a40403cd7b62a116b0cbf632b7320760",
   "Products":[
      {
          "Company":"\u0428\u0418\u041b\u042e\u0420",
          "CategoryID":"\u0422\u043e\u043d\u041a\u0410\u041e\u0440",
          "PayType":"\u041d\u0430\u043b"},
      {
          ...},
   ]
}
Ответ:
{
   "Products":[
      {
         "Company":"ШИЛЮР",
         "CategoryID":"ТонКАОр",
         "PayType":"Нал",
         "record":[
            {
               "ExtID":"",  - внешний код номенклатуры
               "ID":"DEV-UTAX-DC2015",  - код номенклатуры
               "Name":"ДЕВЕЛОПЕР UTAX DC2015 (602310020)",
               "ProducerItemId":"PC-230R",  - код производителя
               "Producer":"CANON",
               "Brand":"CANON",
               "KodTNVED":"3707909000",  - код ТНВЭД
               "ItemOrigin":"1",  - 0-неизветное / 1-зарубежное / 2-отечественное
               "Price1usd":"31.0",  - цена у.е.
               "Price1uah":"279.72",  - цена грн.
               "Price2usd":"32.04",  - опт. рекомендованная цена, у.е.
               "Price2uah":"281.72",  - опт. рекомендованная цена, грн.
               "Price3usd":"33.08",  - розн. рекомендованная цена, у.е.
               "Price3uah":"294.42",  - розн. рекомендованная цена, грн.
               "Price3ua" :"289.12",  - мин. рекомендованная цена, грн 
               "ItemDescription":"Pantum PC-230R M6500, P2200/ 2207/ 2500/ 2507",  - описание 
               "PackQty":"1",  - кол-во в упаковке
               "Availability":"",  - наличие, если пусто тогда в наличии
               "urlPage":"http://patronservice.ua/vmshop/kartridji-i-lenty-3279/kartridji-i-toner-kartridji-3280/toner-canon-c-exv11-50083-50083.html",
               "urlThumbnail":"http://patronservice.ua/img/article/500/83_main.jpg",
               "urlPicture":"http://patronservice.ua/img/gallery/500/83/3944038_main.jpg"}
            {
               ...}
         ]
      },
      {
         ...}
   ]
}
Параметры запроса:
Company - код клиента
CategoryID - код категории
PayType - способ оплаты [Нал/Б.Нал]
ProducerItemId - код производителя

TransferOrders - Список документов перемещения

Запрос: [««]
{
   "token":"a40403cd7b62a116b0cbf632b7320760",
   "TransferOrders":[
      {
         "FromDate":"02.06.2015",
         "ToDate":"02.06.2015" }
     ]
}
Ответ:
{
  "TransferOrders":[
    {
      "FromDate":"02.06.2015",
      "ToDate":"02.06.2015",
      "Status":"\u0414\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043e",
      "error":"",
      "record":[
        {
          "Transfer":"\u0417\u041600603939",
          "Type":"\u043d\u0430 \u0441\u043a\u043b\u0430\u0434",
          "TransDate":"02.06.2015",
          "Status":"\u0414\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043e"
        }
      ]
    }
  ]
}
Параметры запроса:
FromDate - дата начала периода
ToDate - дата окончания периода
Company - код клиента

TransferOrderDetail - Детальное описание документа перемещения

Запрос: [««]
{
   "token":"a40403cd7b62a116b0cbf632b7320760",
   "TransferOrderDetail":[
      {
         "Company":"\u041a\u041e\u041c\u0415\u041b",
         "JournalId":"\u0417\u041600603939" }
     ]
}
Ответ:
{
  "TransferOrderDetail":[
    {
      "Company":"\u041a\u041e\u041c\u0415\u041b",
      "JournalId":"\u0417\u041600603939",
      "Status":"",
      "error":"",
      "record":[
        {
          "Item":"CAB-PN-HDMI-1.3-18",
          "Qty":"4.00",
          "Unit":"\u0448\u0442"
        },
        {
          "Item":"CD-R-PN-700x52x25",
          "Qty":"4.00",
          "Unit":"\u0448\u0442"
        },
        {
          "Item":"CI-HP-51645A-B-PN",
          "Qty":"7.00",
          "Unit":"\u0448\u0442"
        }
        ...
      ]
    }
  ]
}
Параметры запроса:
JournalId - код журнала
Company - код клиента

consQty - Остатки на консигнационном складе клиента

Запрос: [««]
{
   "token":"a40403cd7b62a116b0cbf632b7320760",
   "consQty":[
      {
         "Company":"\u041a\u041e\u041c\u0415\u041b"
      }
     ]
}
Ответ:

{
  "consQty": {
    "Company":"\u041a\u041e\u041c\u0415\u041b",
    "0":{
      "Item":"IP-BAR-A090-001",
      "PhysicalInvent":"22.00",
      "Price":"40.08"
    },
    "1":{
      "Item":"IP-BAR-A090-002",
      "PhysicalInvent":"13.00",
      "Price":"26.88"
    }
    ...
  }
}

Параметры запроса:
Company - код клиента

InvoiceByOrder - Получение списка накладных по номеру заказа

Запрос: [««]
{
   "token":"a40403cd7b62a116b0cbf632b7320760",
   {
      "Company":"ШИЛЮР",
      "SalesOrder":"ЗК0000000000"
   }
}
Ответ:
{
   "InvoiceByOrder": [
    {
      "Company":"Компания",
      "SalesOrder":"ЗК0000000000",
      "Status":"",
      "error":"",
      "record": [{
            "Invoice":"НЗК00000000",
            "DocDate":"30.05.2012",
            "SalesOrder":"ЗК0000000",
            "Currency":"UAH",
            "Amount":"4123.44"
       }]
    }]
}

Параметры запроса:
Company - код клиента
SalesOrder - номер заказа

InvoiceByOrderExt - Получение накладных по номеру заказа с их строками

Запрос: [««]
{
   "token":"a40403cd7b62a116b0cbf632b7320760",
   "InvoiceByOrderExt": {
      "Company":"ШИЛЮР",
      "SalesOrder":"ЗК0000000000"
    }
}
Ответ:

{
      "Company":"",
      "SalesOrder":"ЗК00138742",
      "Status":"Status",
      "error":"error",
         "header": [
            "Invoice"НЗК00278162"/Invoice"
            "DocDate"30.05.2012"/DocDate"
            "SalesOrder"ЗК00138742"/SalesOrder"
            "Currency"UAH"/Currency"
            "Amount"4123.44"/Amount"
         ]},
             "record": [{
                "ExtID":"ExtID",
                "ID":"CT-SAM-CLT-407-B"/ID",
                "Name":"ТОНЕР-КАРТРИДЖ SAMSUNG CLT-K407S (CLP-320) BLACK",
                "Qty":"12.00",
                "Unit":"шт",
                "Price":"343.62",
                "AmountWithTax":"4123.44",
                "AmountTax":"687.24",
              }]
         ]}
         .....
}
Параметры запроса:
Company - код клиента
SalesOrder - номер заказа

InvoiceDetail - Получение строк накладной по её номеру

Запрос: [««]
{
   "token":"a40403cd7b62a116b0cbf632b7320760",
   "InvoiceDetail": {
      "Company":"ШИЛЮР",
      "Invoice":"НК0000000000"
    }
}
Ответ:

{
   "InvoiceByOrder": [{
      "Company":"Company",
      "SalesOrder":"ЗК00138742",
      "Status":"Status",
      "error":"error",
       "record": [{
          "Invoice":"НЗК00278162",
          "DocDate":"30.05.2012",
          "SalesOrder":"ЗК00138742",
          "Currency":"UAH",
          "Amount":"4123.44"
       }]
}
Параметры запроса:
Company - код клиента
Invoice - номер накладной

ExchRates - Получение курсов валют

Запрос: [««]
{
   "token":"a40403cd7b62a116b0cbf632b7320760",
   "ExchRates": {
      "FromDate":"03.10.2019",
      "ToDate":"04.10.2019"
    }
}
Ответ:

{"ExchRates":[
  {
    "FromDate":"04.10.2019",
    "ExchRate":"24.95",
    "ExchRateOffset":"0",
    "ExchRateCash":"24.80"
  },{
    "FromDate":"03.10.2019",
    "ExchRate":"25.20",
    "ExchRateOffset":"0",
    "ExchRateCash":"25.00"
  }
]}
        
Параметры запроса:
FromDate - дата начала периода (необязательный, по умолчанию первое число предыдущего месяца)
ToDate - дата окончания периода (необязательный, по умолчанию текущая дата)

createSalesOrder - Создание заказа со строками

Запрос: [««]
{
  "request": {
    "token": "a40403cd7b62a116b0cbf632b7320760",
    "createSalesOrder": {
      "Company": "ШИЛЮР",
      "Currency": "USD",
      "InvoiceAccount": "СТАРУ",
      "dsEnabled": "1",
      "dsContactPersonName": "Дмитро Олександрович",
      "dsContactPersonPhone": "0505556585",
      "DeliveryDate": "07.11.2019",
      "DeliveryMethod": "4",
      "DeliveryRegion": "Рівненська",
      "DeliveryState": "Володимирецький",
      "DeliveryCity": "с.Бабка",
      "DeliveryStreet": "вул.Ст.Бандери",
      "DeliveryHouse": "1",
      "DeliveryFlat": "5",
      "OrderLines": {
        "OrderLine": [
          {
            "ID": "IP-BAR-A090-004",
            "OrderQty": "1"
          },
          {
            "ID": "IP-BAR-A120-005",
            "OrderQty": "1"
          }
        ]
      },
      "Comment": "Комментарий"
    }
  }
}

Ответ:
{
  "createSalesOrder":[
    {
      "SalesOrder":"\u0417\u041a00497366",
      "Currency":"USD"
    }
  ]
}

Параметры запроса:
Company - Код клиента
Currency - Код Валюты (USD/UAH)
InvoiceAccount - Предприятие-плательщик
dsEnabled - Дропшиппинг 1/0 (Да/Нет)
dsContactPersonName - Дропшиппинг - контактное лицо
dsContactPersonPhone - Дропшиппинг - телефон контактного лица
DeliveryDate - Дата отправки

DeliveryMethod - Метод доставки - возможные варианты:
  • 1 - Самовивіз з роздрібного магазину (м. «Арсенальна»)
  • 2 - Самовивіз зі складу в с. Гатне
  • 3 - Адресна доставка по м. Києву
  • 4 - На склад «Нової пошти»
  • 5 - Адресна доставка службою «Нова пошта»
  • 6 - На склад «Нічного експресу»
  • 7 - Адресна доставка службою «Нічний експрес»

DeliveryRegion - Область
DeliveryState - Район
DeliveryCity - Город
DeliveryStreet - Улица
DeliveryHouse - Дом
DeliveryFlat - Квартира
DeliveryNumber - Номер отделения (если указана доставка На склад «Нової пошти»)
OrderLines - Список позиций в заказе
  OrderLine - Строка заказа
   ID - Код номенклатуры
   OrderQty - Количество

Comment - Комментарий

BarCodes - Список штрих кодов товаров

Запрос: [««]
{
  "token": "a40403cd7b62a116b0cbf632b7320760",
  "BarCodes":""
}

Ответ:
{
  "BarCodes":[
    {
      "ID":"T-PN-CCEXV18-465",
      "BarCode":"4823068107674"
    },
    {
      ...
    }
  ]
}

Параметры запроса:
Отсутствуют

ProductsWaD - Массогабаритные параметры товаров

Запрос: [««]
{
  "token": "a40403cd7b62a116b0cbf632b7320760",
  "ProductsWaD":""
}

Ответ:
{
  "ProductsWaD": [
    {
      "Id": "ACCU-CSB-HR1221W",
      "NetWeight": "1440.00",
      "TareWeight": "0.00",
      "Depth": "7.00",
      "Width": "9.00",
      "Height": "10.00"
    },
    {
      ...
    }
  ]
}

Параметры запроса:
 Отсутствуют
Параметры ответа:
NetWeight, TareWeight - гр
Depth, Width, Height - см