Версия 2014 года использует api 1.0. До этого нумерации версий у СДЭКа не было
Обработка 2014 года РаботаСоСДЭК.epf посылает запрос в формате json и показывает ответ. Обработка на управляемой форме, демонстрационная, типовых функций не использует. Работает во всех конфигурациях. Спрашивает у СДЭКа стоимость доставки по нескольким, не по всем, тарифам. Полный список тарифов есть в документации http://www.edostavka.ru/calculator.html
В данной обработке использованы следующие наработки //infostart.ru/public/308198/ и //infostart.ru/public/142092/ Спасибо авторам.
Особенностью СДЭКаявляется собственный классификатор адресов. Из-з чего его приходится стыковать с существующим классификатором. Говорят вместо классификатора адресов можно использовать почтовые индексы. Не проверял.
Версия от 2011 года
Сервис принимает запрос в виде списка направлений с указанием городов источников и получателей, веса, объёма и габаритов грузов и возвращает список тарифов по которым может быть выполнена доставка.
Представляемая обработка отправляет запрос только на одно направление. Это демонстрационная обработка, она не привязана к конкретной конфигурации.
edostavka.ru ожидает на входе POST запрос с заполненной переменной $_POST[‘xml_request’] В эту переменную должен быть сохранен XML фaйл в виде:
<?xml version=»1.0″ encoding=»UTF-8″?>
<Request>
<Direction Number=»1″ SenderCity=»ВЛАДИВОСТОК» RecipientCity=»МОСКВА» Weight=»0.5″ Volume=»0.2″ Height=»10″ Width=»10″ Length=»10″/>
<Direction Number=»2″ SenderCity=»ВЛАДИВОСТОК» RecipientCity=»НОВОСИБИРСК» Weight=»0.5″ Height=»10″ Width=»10″ Length=»10″/>
</Request>
Отправить запрос в требуемом формате оказалось не так просто. Пример в прилагаемом файле.
За алгоритм URL преобразования спасибо Андрею Попову
Есть вопросы по обработке, стоит похожая задача обмена 1с с сайтом посредством POST — запросов с подписанным ХМЛ содержимым в данной обработке судя из описания реализовано нечто подобное?
Возможно ли было в данном примере использовать ЗаписьХМЛ для формирования ХМЛ тела запроса?
Возможно, но в столь простом примере нецелесообразно.
Здравствуйте, Спасибо за обработку, но не пойму как запросить с существующими логином и паролем данные?
(4) дык для калькулятора доставки логин не требовался. Может сейчас что изменили, но когда я занимался этой темой, то не требовался.
Да просто для одного направления почему, то неправильная цена указывается. Вот и думаю может это из-за какой то нашей индивидуальной скидки.
(6) lesenoklenok, не далее как в четверг наши ругались со СДЭКом по поводу этого калькулятора. Похоже да, у них калькулятор на сайте отличается от калькулятора через API.
(7) да уж, вот так и настраивай с ними обмен.
Мне только что CDEK написал что так запрашивать доставку нельзя) нужно через json.
(9) значит устарел интерфейс. Спасибо за информацию.
(9) а вот и нифига
http://www.edostavka.ru/clients/integrator.html даны «Примеры расчёта стоимости с помощью PHP POST-запроса и js Ajax-запроса»
В описании API калькулятора тарифов
Опять меня нагрузили этой темой.
Если вы под «напрвалением» — подразумеваете тариф «Посылка, то он доступен только при условии подтверждения наличия у вас договора с интернет магазином.
http://www.edostavka.ru/calculator.html если выбирать, например, направление Москва-Новосибирск, так же не выдаст тариф Посылка, о чем есть сноска на этой же странице. Тариф Посылка может быть доступен, только при указании учетных данных, подтверждающих у вас наличие этого договора, при отправке запроса на север СДЭК. На сайте Cdek.ru тариф Посылка доступен только в Личном Кабинете клиента. На сайте (в приложении) клиента в калькуляторе чтобы был доступен тариф посылка необходимо указать учетные данные интграции (отличаются от логина/пароля в ЛК СДЭК). Более подробная информация по API калькулятора приведена на сайте http://www.edostavka.ru/clients/integrator.html . Использовать приведенные примеры обсолютно не обязательно. В любой среде разработки можно реализовать описанный в руководстве принцип посылки запросов к серверу.
Калькулятор на сайте
Т.е. работа калькулятора на сайте и API калькулятора одинакова.
У нас имеется автоматизированая обработка оформления заказов прямо из 1С, чтобы не лазить через веб интерфейс СДЭК и не создавать заказы там.
Выложить на сайт что ли? 🙂
(13) Boudybuilder,
Выложите пожалуйста!
(13) Boudybuilder, Да! выложите пожалуйста.
(14) tarassov, выложена ужеhttp://yacrm.ru/services/integratsiya-1s-i-sdek/
(16) varziev,
Интересно.
Хотя уже успел давно свой вариант реализовать
(14) tarassov,
http://1softbiz.ru/?p=486
И набирает популярность