Подключение внешнего способа доставки (для разработчиков интеграций) — различия между версиями

Материал из Insales Wiki
Перейти к: навигация, поиск
(Содержимое страницы заменено на «https://www.insales.ru/collection/doc-prochee-1450448380/product/javascript-api-oformleniya-zakaza-dlya-vneshnih-sposobov-dostavki»)
Строка 1: Строка 1:
Специальный способ оплаты создается в разделе Настройки -> Доставка.
+
https://www.insales.ru/collection/doc-prochee-1450448380/product/javascript-api-oformleniya-zakaza-dlya-vneshnih-sposobov-dostavki
 
 
Настройка на стороне InSales:
 
 
 
    url - адрес внешнего сервиса, куда будут отправлены данные для расчета стоимости доставки.
 
    javascript - здесь можно указать javascript-код, который будет исполнен на странице выбора способа доставки при оформлении заказа.
 
 
 
При оформлении заказа, покупатель, после ввода адреса переходит на шаг выбора способа доставки. На этом этапе из браузера на внешний URL отправляется jsonp запрос со следующими параметрами:
 
 
 
    price - Цена заказа в рублях. Например, "1200.0".
 
    weight - Вес заказа в килограммах. Например, "1.5".
 
    region - Регион доставки в формате [http://ru.wikipedia.org/wiki/%D0%9A%D0%9B%D0%90%D0%94%D0%A0 КЛАДР]. Пример, "обл Московская" или "г Москва".
 
    city - Город доставки. Например, "Долгопрудный" или "Москва".
 
    zip - Индекс
 
    callback - Имя функции
 
 
 
Пример:
 
 
 
 
 
Запрос:
 
GET user_url?callback=jQuery16204684495358521503_1361805225262&city=Архара&price=5000&region=обл+Амурская&weight=110&zip=123456
 
 
 
 
 
Примеры ответов:
 
 
 
 
 
1) Доставка возможна
 
<pre>
 
  jQuery16204684495358521503_1361805225262({delivery_price: 100})
 
</pre>
 
 
 
 
 
2) Доставка в данный регион не возможна
 
<pre>
 
  jQuery16204684495358521503_1361805225262({error: 'Current carrier is not available!'})
 
</pre>
 
 
 
 
 
3) Переданы не все данные
 
<pre>
 
  jQuery16204684495358521503_1361805225262({error: 'Fail, not all data sent!'})
 
</pre>
 
 
 
4) Иная ошибка
 
<pre>
 
  jQuery16204684495358521503_1361805225262({error: 'My text message'})
 
</pre>
 
или, если это просто предупреждение, можно вернуть и стоимость доставки
 
<pre>
 
  jQuery16204684495358521503_1361805225262({error: 'My text message', delivery_price: 100})
 
</pre>
 
 
 
В последнем случае под способом доставки будет выведено ваше сообщение.
 
 
 
Ответ должен представлять строчку с вызовом переданной в параметре callback функции, которой в качестве аргумента передается json объект с указанными параметрами.
 
 
 
ОЧЕНЬ ЖЕЛАТЕЛЬНО устанавливать в заголовке ответа 'Content-Type: application/json' или 'Content-Type: text/javascript' или 'Content-Type: application/javascript'
 

Версия 14:24, 10 ноября 2017

https://www.insales.ru/collection/doc-prochee-1450448380/product/javascript-api-oformleniya-zakaza-dlya-vneshnih-sposobov-dostavki