Создание заказа
Запрос позволяет создать заказ. POST запрос по адресу http(s)://api.iml.ru/json/CreateOrder
Параметры запроса:
Пример запроса на PHP:
- // url запроса
- $url = "http://api.iml.ru/Json/CreateOrder";
- //логин и пароль, подходят от личного кабинета
- $login = '';
- $pass = '';
- // ниже пример как заполнить заказ по позиционно, в примере 2 позиции, одна из них услуга доставки
- //-----------------------------------------------------------
- // $GoodItem1 = array(
- // 'productNo'=> 'pr1',
- // 'productName' => 'name1',
- // 'productVariant' => 'red',
- // 'productBarCode' => '10000001',
- // 'couponCode' => '10000002',
- // 'discount' => '0',
- // 'weightLine' => '12.5',
- // 'amountLine' => '120.0',
- // 'statisticalValueLine' => '120.0',
- // 'deliveryService' => FALSE
- // );
- // $GoodItem2 = array(
- // 'productNo'=> 'service',
- // 'productName' => 'Доставка',
- // 'productVariant' => '',
- // 'productBarCode' => '',
- // 'couponCode' => '',
- // 'discount' => '',
- // 'weightLine' => '',
- // 'amountLine' => '',
- // 'statisticalValueLine' => '',
- // 'deliveryService' => TRUE
- // );
- // $lstGoodItem = array( $GoodItem1, $GoodItem2);
- //-----------------------------------------------------------
- // параметры запроса, не нужные можно не добавлять в массив или заполнить пустым текстовым полем
- $content =array(
- 'Test' => 'True', // для тестового режима, иначе не указывайте
- 'CustomerOrder' => 'test11123',
- 'DeliveryDate' => '01.06.2015', // не обязательно, при отсутствии создаст ближайшую
- 'Job' => '24КО', // из справочника услуг
- 'BarCode' => '', // не обязательно, будет сгенерирован
- 'Contact' => 'Вася',
- 'RegionCodeTo' => 'МОСКВА', // из справочника регионов
- 'RegionCodeFrom' => 'МОСКВА', // из справочника регионов
- 'Address' => 'Мира 1',
- 'DeliveryPoint'=> '1', // из справочника пунктов самовывоза
- 'Phone'=> '0202020202',
- 'TimeFrom' => '9:00', // не обязательно, при отсутствии создаст значение по умолчанию
- 'TimeTo' => '21', // не обязательно, при отсутствии создаст значение по умолчанию
- 'Amount' => '13.05', // разделитель '.' (точка)
- 'ValuatedAmount' => '14.2', // разделитель '.' (точка)
- 'Volume' => '1', // не обязательно, по умолчанию 1
- 'Weight' => '11.4', // разделитель '.' (точка)
- 'Comment' => 'Домофон не работает'
- //'GoodItems' => $lstGoodItem //не обязательно, если есть позиции заказа
- );
- $curl = curl_init($url);
- curl_setopt($curl, CURLOPT_HEADER, false);
- curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
- //curl_setopt($curl, CURLOPT_HTTPHEADER, array("Accept:application/xml; charset=utf-8")); //для получения ответа в формате XML
- curl_setopt($curl, CURLOPT_POST, true);
- curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($content));
- curl_setopt($curl, CURLOPT_USERPWD, $login.":".$pass);
- curl_setopt($curl, CURLOPT_SSLVERSION, 3);
- curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
- $response = curl_exec($curl);
- $result = json_decode($response, true); // результат запроса
Пример ответа:
При успешном создании:
{
"Result":"OK",
"Order":
{
"Job":"24КО",
"CustomerOrder":"test11123",
"DeliveryDate":"01.06.2015 00:00:00",
"Volume":1,
"Weight":11.4,
"BarCode":"7500000059419",
"DeliveryPoint":"1",
"Phone":"0202020202",
"Contact":"Вася",
"RegionCodeTo":"МОСКВА",
"RegionCodeFrom":"МОСКВА",
"Address":"Мира 1; Домофон не работает",
"TimeTo":"21:00:00",
"TimeFrom":"09:00:00",
"ValuatedAmount":14.2,
"Amount":13.05,
"State":999,
"OrderStatus":0,
"Comment":null,
"GoodItems":[]
}
}
С ошибками:
{
"Result":"Error",
"Errors":[
{
"Message":"Номер заказа не уникален!"
}
}