Калькулятор доставки eDost позволяет расчитывать доставку по России и из России за рубеж.
В расчетах задействованы 1235 городов и 83 региона России, 230 стран мира.
Индивидуально для каждого магазина в личном кабинете
настраиваются параметры работы калькулятора:
|
1. Выбор служб доставки учавствующих в расчете.
2. Вид расчетов: без страховки, со страховкой, без страховки и со страховкой.
3. Округление результатов расчета.
4. Надбавки, скидки, скидки от стоимости заказа.
5. Учет габаритов.
6. Ограничения по местоположениям.
7. Ограничения по весу и стоимости заказа.
8. Отображение срока доставки.
9. Параметры наложенного платежа.
|
Компании доставки используемые в расчетах:
|
Почта России:
|
обычная посылка
отправление 1 класса (до 2.5 кг)
бандероль (до 2 кг)
мелкий пакет (до 2 кг)
мелкий пакет заказной (до 2 кг)
бизнес курьер
|
Службы экспресс-доставки:
|
EMS Почта России
Гарантпост
СПСР-Экспресс
СДЭК
DPD
Pony Express
DHL Express
UPS
|
Постаматы и пункты выдачи:
|
PickPoint
boxberry
СДЭК
DPD
|
Транспортные компании:
|
ЖелДорЭкспедиция
ПЭК
Деловые линии
Энергия
GTD
|
|
Разделы:
Расчет доставки производится на сервере eDost.
Чтобы получить ответ от сервера с результатами расчетов, необходимо отправить POST запрос на http://api.edost.ru/api2.php
В качестве резервного сервера (только в случае недоступности основного) можно использовать http://edost.net/api2.php
Параметры POST запроса (указывать обязательно):
|
id
- идентификатор магазина
p
- пароль для доступа к серверу расчетов
to_city
- город, регион или страна, куда необходимо отправить посылку
weight
- вес в кг (минимально допустимый для расчета вес: 0,001)
strah
- сумма для страховки в рублях - при расчете доставки "со страховкой" должна быть больше нуля!
|
Дополнительные параметры POST запроса (можно не указывать):
|
ln
- длина посылки
wd
- ширина посылки
hg
- высота посылки
zip
- почтовый индекс (только для расчета наземной посылки - код тарифа 2)
headerutf=1
- возвращать заголовок ответа: "Content-type: text/xml;charset=UTF-8"
|
|
Параметры
id, p
выдаются индивидуально для каждого магазина (смотрите в личном кабинете).
|
|
Расчет по названию региона (без указания определенного города) возможен для:
- Почта России (отправление 1 класса)
- Почта России (наземная посылка) - только при расчете с почтовым индексом!
- EMS
- Гарантпост
|
|
Параметры
weight, strah, ln, wd, hg
могут быть дробными (разделительный знак: точка или запятая).
|
|
Параметры
ln, wd, hg
служат для более точного расчета доставки.
|
|
Чтобы габариты учитывались в расчетах, необходимо
в личном кабинете в настройках магазина
в поле Габариты (длина, ширина, высота) посылки:
выбрать единицу измерения габаритов ( метры , дециметры ,
сантиметры , миллиметры )
и поставить галочку в учитывать в расчетах габариты посылки .
|
На POST запрос сервер eDost выдает ответ одним пакетом в формате XML (кодировка UTF-8).
Тэги XML:
|
stat
- код результата запроса:
|
|
1 - успех
2 - доступ к расчету заблокирован
3 - неверные данные магазина (пароль или идентификатор)
4 - неверные входные параметры
5 - неверный город или страна
6 - внутренняя ошибка сервера расчетов
7 - не заданы компании доставки в настройках магазина
8 - сервер расчета не отвечает
9 - превышен лимит расчетов за день
11 - не указан вес
12 - не заданы данные магазина (пароль или идентификатор)
|
|
warning
- код предупреждения:
|
|
1 - почтового отделения с указанным индексом НЕ существует
2 - в вашем регионе НЕТ почтового отделения с указанным индексом
|
|
id
- код тарифа (список кодов)
price
- цена доставки
pricecash
- цена доставки при наложенном платеже
transfer
- стоимость денежного перевода при наложенном платеже
day
- количество дней доставки
strah
- код страхования:
|
|
1 - рассчитано со страховкой
0 - рассчитано БЕЗ страховки
|
|
company
- название компании доставки
name
- название тарифа доставки
pickpointmap
- название города для виджета PickPoint
|
|
office
- офис, склад или пункт выдачи службы доставки
|
|
id
- код офиса в системе eDost (ссылка на карту: http://www.edost.ru/office.php?c= id )
to_tarif
- коды тарифов доставки, которым принадлежит офис (через запятую)
name
- название офиса
address
- адрес (без города)
tel
- контактные телефоны
schedule
- часы работы
gps
- GPS координаты (соответствуют формату Яндекс.Карты)
|
|
Предупреждение:
Компании доставки могут менять свои названия и названия тарифов, поэтому при разработке рекомендуется привязываться к кодам тарифов ( id ).
|
|
Цены
price, pricecash, transfer
идут в рублях, могут быть дробными (разделительный знак: точка).
|
|
Стоимость денежного перевода при наложенном платеже ( transfer ) - это сумма,
которую дополнительно оплачивает получатель службе доставки в момент вручения за услугу по переводу денежных средств отправителю
(помимо стоимости товара и доставки).
|
|
Пример:
1. Цена заказа 1100 руб. (цена товара 1000 руб. + цена доставки 100 руб.) - эта цена указывается при отправке, как сумма наложенного платежа.
2. При вручении получатель оплачивает 1100 руб. за заказ и дополнительно 88 руб. (8% от суммы) за перевод денежных средств.
(88 руб. - это и есть параметр transfer ).
В итоге покупателю обойдется заказ в 1188 руб., а продавец получит 1100 руб.
|
|
Пример ответа в формате XML:
|
<?xml version="1.0" encoding="UTF-8"?>
|
< id >1< /id >
< price >510.5< /price >
< day >1-2 дня< /day >
< strah >1< /strah >
< company >Почта России< /company >
< name >отправление 1-го класса со страховкой< /name >
|
|
< id >14< /id >
< price >300< /price >
< strah >0< /strah >
< company >ЖелДорЭкспедиция< /company >
|
|
< id >1< /id >
< to_tarif >14< /to_tarif >
< name >Восточный склад< /name >
< address >ул. Ленина, д. 5, оф. 10< /address >
< tel >(123) 123-45-67, 123-45-68< /tel >
< schedule >пн.-пт. с 10:00 до 18:00< /schedule >
< gps >37.621939,55.753052< /gps >
|
|
|
Коды тарифов:
|
Код |
Название тарифа |
1 |
Почта России (отправление 1-го класса) |
2 |
Почта России (наземная посылка) |
3 |
EMS Почта России |
5 |
СПСР Экспресс (экспресс) |
6 |
СДЭК (экспресс курьером до двери) |
9 |
СДЭК (экспресс до пункта выдачи) |
10 |
СДЭК (супер-экспресс) |
11 |
DHL Express (экспресс 18:00) |
12 |
UPS (Express Saver) |
14 |
ЖелДорЭкспедиция (до терминала) |
16 |
ПЭК (до терминала) |
17 |
СДЭК (международный экспресс) |
18 |
EMS Почта России (международное отправление) |
19 |
СПСР Экспресс (международное отправление) |
20 |
DHL Express (экспресс за границу) |
21 |
UPS (международный Express Saver) |
22 |
Деловые линии (до терминала) |
25 |
Гарантпост |
26 |
Гарантпост (международное отправление) |
27 |
Pony Express |
28 |
Pony Express (международное отправление) |
29 |
PickPoint |
31 |
Курьер (тариф 1) |
32 |
Курьер (тариф 2) |
33 |
Курьер (тариф 3) |
34 |
Курьер (тариф 4) |
35 |
Самовывоз (тариф 1) |
36 |
boxberry (до пункта выдачи) |
37 |
СДЭК (посылка до пункта выдачи) |
38 |
СДЭК (посылка курьером до двери) |
39 |
Энергия (авто - до терминала) |
40 |
Энергия (жд - до терминала) |
41 |
Энергия (авиа - до терминала) |
42 |
Энергия (морем - до терминала) |
43 |
boxberry (курьером до двери) |
44 |
DPD (classic - курьером до двери) |
45 |
DPD (online express - курьером до двери) |
46 |
DPD (online classic - до пункта выдачи) |
47 |
DPD (online classic - курьером до двери) |
48 |
ЖелДорЭкспедиция (до подъезда) |
49 |
ПЭК (до подъезда) |
51 |
Деловые линии (до подъезда) |
52 |
Энергия (авто - до подъезда) |
53 |
Энергия (жд - до подъезда) |
54 |
Энергия (авиа - до подъезда) |
55 |
Энергия (морем - до подъезда) |
56 |
Самовывоз (тариф 2) |
57 |
Самовывоз (тариф 3) |
58 |
Самовывоз (тариф 4) |
61 |
Почта России (посылка онлайн) |
62 |
Почта России (курьер онлайн) |
63 |
GTD (до терминала) |
64 |
GTD (до подъезда) |
65 |
СДЭК (магистральный/экономичный - до пункта выдачи) |
66 |
СДЭК (магистральный/экономичный - курьером до двери) |
68 |
Почта России (бандероль) |
69 |
Почта России (мелкий пакет - наземная) |
70 |
Почта России (мелкий пакет - авиа) |
71 |
Почта России (мелкий пакет заказной - наземная) |
72 |
Почта России (мелкий пакет заказной - авиа) |
73 |
Почта России (посылка - наземная) |
74 |
Почта России (посылка - авиа) |
75 |
СДЭК (экономичная посылка - до пункта выдачи) |
76 |
СДЭК (экономичная посылка - курьером до двери) |
77 |
Почта России (бизнес курьер) |
78 |
Почта России (ЕКОМ - до пункта выдачи) |
79 |
Почта России (ЕКОМ - до почтового отделения) |
80 |
DPD (online express - до пункта выдачи) |
81 |
5post |
82 |
DPD (economy - до пункта выдачи) |
83 |
DPD (economy - курьером до двери) |
84 |
Ozon Rocket (до пункта выдачи) |
85 |
Ozon Rocket (курьером до двери) |
86 |
Почта России (посылка онлайн комбинированная) |
|
Компоненты для быстрого подключения
|
edost_class.php
- класс edost_class, содержит все необходимое для расчета доставки.
|
Файл edost_class.php упакован в архив edost_example.zip,
который можно скачать в личном кабинете в настройках магазина.
|
|
Функциональные возможности edost_class:
|
|
1. Передача POST запроса на сервер eDost с данными для расчета доставки.
2. Получение ответа с результатами расчета в формате XML.
3. Разбор XML и внесение результатов в массив.
|
|
Для работы с сервером eDost в файле edost_class.php необходимо прописать константы:
|
|
EDOST_PSWD - пароль для доступа к серверу расчетов
EDOST_ID - идентификатор магазина
|
|
Пароль и идентификатор можно посмотреть в личном кабинете в настройках магазина.
|
|
function edost_calc ( $to_city ,
$weight ,
$strah ,
$lenght ,
$width ,
$height
) - функция расчета стоимости доставки
|
|
$to_city - город или страна, куда неоходимо отправить посылку (название на русском языке в кодировке windows-1251)
$weight - вес в кг
$strah - сумма для страховки в рублях
$lenght - длина посылки
$width - ширина посылки
$height - высота посылки
|
|
Результат функции выводится в массив:
|
|
result[' stat '] - код результата запроса
result[' qty_company '] - количество тарифов
|
|
Записи по каждому тарифу (N):
result[' id '.N] - код тарифа
result[' price '.N] - цена доставки в рублях
result[' day '.N] - количество дней доставки
result[' strah '.N] - код страхования (1 - рассчитано со страховкой, 0 - рассчитано БЕЗ страховки)
result[' company '.N] - название компании
result[' name '.N] - название тарифа
|
Примеры работы калькулятора доставки
|
Все примеры ссылаются на edost.php, который обработывает POST запрос и выводит результаты расчетов на экран.
|
edost.php использует edost_class.php для расчета доставки.
|
Все файлы, необходимые для запуска примеров, упакованы в архив edost_example.zip,
который можно скачать в личном кабинете в настройках магазина.
Примеры расчетов с выбором города и страны из выпадающего списка <select>
|
Функция FillToReg
и массивы k и r - служат для определения региона у города.
Они не обязательны для расчета, но, учитывая, что есть города с одинаковым названием, но из разных регионов,
такая подсказка предостережет от неверного выбора города.
При выборе другой страны, регион будет обозначен: За рубеж.
Порядок запуска:
|
|
1. Скопируйте на свой сервер файлы:
|
|
edost_class.php
edost.php
edost_ru_example.html (или edost_example.html)
|
|
2. С помощью браузера зайдите на страницу edost_ru_example.html (или edost_example.html)
|
|
Выберете город или страну, заполните вес посылки и сумму страховки.
|
|
3. Нажмите кнопку Расчет.
|
Примеры расчетов с автозаполнением города и страны (с помощью библиотеки jQuery)
|
Массив cit - список городов России для автоподстановки.
Массив cnt - список городов России и стран для автоподстановки.
Функция fillReg
и массивы k и r - служат для определения региона у города.
Порядок запуска:
|
|
1. Скопируйте на свой сервер файлы:
|
|
edost_class.php
edost.php
edost_ru_ajax_example.html (или edost_ajax_example.html)
|
|
2. Создайте на своем сервере поддиректорию js и скопируйте в нее файлы:
|
|
jquery-1.2.6.pack.js
jquery.ajaxQueue.js
jquery.autocomplete.pack.js
jquery.autocomplete.css
indicator.gif
|
|
3. С помощью браузера зайдите на страницу edost_ru_ajax_example.html (или edost_ajax_example.html)
|
|
Введите город (при вводе первых букв названия будет показан список доступных городов), заполните вес посылки и сумму страховки.
|
|
4. Нажмите кнопку Расчет.
|
|