Изменения

Перейти к: навигация, поиск

API

39 432 байта добавлено, 23 март
Описание полей ответа статусов
|[[Файл:prestashop.png|center|x60px]]
|style="text-align: center;"|[https://courierexe.ru/download/api/prestashop.zip Скачать]
|Поддерживает версии 1.5.2.0 и выше. Инструкция в архивеПодробнее см. [[PrestaShop|описание]].
|-
|[[Файл:OpencartOCStore.png|center|x60px]]
|[[Файл:webasyst-shopscript.png|center|x44px]]
|style="text-align: center;"|[https://www.webasyst.ru/store/plugin/shop/measoftcourier/ Установить модуль]<br>[https://www.webasyst.ru/store/plugin/shipping/measoftcourier/ Установить плагин]
|Модуль предназначен для отправки заявок в КС, а плагин для расчета стоимости доставки при оформлении заказа. Инструкции есть в маркете, а также см. [[Webasyst|описание]].
|-
<!--|[[Файл:advantshop.png|center|x44px]]
|style="text-align: center;"|Настраивается в [[Личный кабинет клиента|ЛК пользователя]]
|[[InSales|Инструкция по настройке]]
|-
|[[Файл:iiko.jpg|center|x80px]]
|style="text-align: center;"|Настраивается в [[Личный кабинет клиента|ЛК пользователя]]
|[[Iiko|Инструкция по настройке]]
|-
|[[Файл:Leadvertex.png|center|x44px]]
|-
|[[Файл:Amocrm.png|center|x44px]]
|style="text-align: center;"|[https://www.amocrm.ru/extensions/courier2008 Установитьmeasoft Описание на сайте amoCRM]|Подробнее см. Подробное описание настроек читайте [[amoCRM|описаниетут]].
|-
|rowspan="2"|[[Файл:MoySclad.jpg|center|x30px]]
|style="height:50px; text-align: center;"|[https://home.courierexe.ru/moysklad/step1 Настроить интеграцию с MeaSoft]
|[[МойСклад|Инструкция]]
|-
|-
|[[Файл:wordpress.jpg|center|x80px]]
|style="text-align: center;"|[https://courierexe.ru/download/apiwordpress/wordpress.zip php Скачать]
|[[Wordpress|Инструкция]]
|-
|Поддерживает версии 4.10 и выше.<br>[[CS-Cart|Инструкция]]
|-
|style="height:100px; text-align[[Файл: webhooks.jpg|center;"|'''Webhook'''x100px]]
|style="text-align: center;"|Читайте описание [[Webhook|на этой странице]]
|Передача информации о статусах и заказах в вашу систему
|-
|[[Файл:Logo_tilda_black.png|center|x100px]]
|style="text-align: center;"|Читайте описание [[Tilda|на этой странице]]
|Работает только на платных тарифах
|-
|}
* при запросе измененных статусов ОБЯЗАТЕЛЬНО нужно подтверждать успешное получение запросом [[#Передача только изменившихся статусов|commitlaststatus]].
* вы должны знать номера заказов, которые вы отправили. Не нужно перебирать номера всех заказов или брутфорсом перебирать все возможные номера.
* нужно проверять с каким ответом возвращаются ваши АПИ-запросы. Если мы отвечаем ошибкой, то даже запрос на создание нового заказа учитывается в количестве запросов.
Мы абсолютно уверены, что данные ограничения на порядки превосходят необходимые объемы предоставления сервиса для решения любых задач. Если у вас возникают проблемы, вы не знаете, как уложиться в эти рамки — спросите у нас, мы обязательно поможем!
<costcode>cc12345</costcode>
<respstore>4</respstore>
<uid>af11c7c6-6645-4a20-9604-be911a75722d</uid>
<items>
<item extcode="abc123" quantity="1" mass="0.2" retprice="37.5" VATrate="0" barcode="2345625213125" textArticle="1" article="1" volume="3" origincountry="AUT" GTD="321546654" excise="15.20" suppcompany="ООО &quot;Рога и копыта&quot;" suppphone="79161234567" suppINN="1112223334" govType="2" governmentCode="11223311" extraTags="">Мяч</item>
<item extcode="abc124" quantity="2" mass="2" retprice="100" inshprice="100" VATrate="10" barcode="4645625213138" article="2" length="10" width="20" height="30" origincountry="004">Обруч</item>
<item extcode="abc125" quantity="3" mass="0.3" retprice="50" inshprice="50" barcode="2345625213126" itemcode="44123" article="3" type="1">Погремушка желтая</item>
</advprice>
</advprices>
<extrafields>
<extrafield>
<name>courier_car</name>
<value>ВАЗ 2106, бежевый</value>
</extrafield>
</extrafields>
<overall_volume>81</overall_volume>
<userid>user123</userid>
* '''order''' — Контейнер для описания одного заказа, обязательный элемент. В одном контейнере '''neworder''' может быть много контейнеров '''order''' для создания нескольких заказов одним запросом.
:* '''''orderno''''' — Номер заказа. Если присваивается клиентом — указывается здесь. Если не присваивается — можно оставить пустым, система сгенерирует свой номер, и вернет его в ответе. Система проверяет '''у клиента''' наличие заказов с указанным номером в '''пределах текущего календарного года''', которые '''не являются недоставленными''', и в случае их существования — заказ создан не будет, а в ответе вернется ошибка 17 «Such number exists». Если не указан штрихкод (поле barcode), и значение поля подходит для использования его в качестве штрихкода, данное значение будет скопировано в поле «Штрихкод». Это накладывает ограничения в частности, на длину указанного поля (25 знаков, чтобы работали стандартные печатные формы).
* '''barcode''' — Штрихкод заказа. Если клиент штрихкодирует свои отправления и штрихкод отличается от номера заказа, в этом поле указывается штрихкод. Если ШК содержит кириллицу или малое количество символов, то формируется ШК в формате EAN13.
 
<spoiler text="Заполнение номера заказа (шифра) и штрих-кода">
Шифр и штрих-код заполняются исходя из начальных значений:
 
# Если шифр и ШК пустые - оба поля заполняются автоматически значением вида XXX#YYY, а после ШК проверяется на корректность (валидируется)
# Если ШК пустой, а шифр заполнен - ШК заполняется значением из шифра и валидируется
# Если шифр пустой, а ШК заполнен - шифр заполняется значением из ШК, после чего ШК валидируется
# Если оба непустые - валидируется ШК, шифр не проверяется
 
Корректный (валидный) ШК отвечает следующим требованиям:
* длина не меньше 5 символов
* значение не меньше значения переменной <mparam code="MinPrePrintedNum"/>
* содержит символы, которые можно использовать для формирования штрих-код а формате Code128 (т.е.все печатные символы, кроме кириллицы)
 
Если ШК не прошел проверку, то:
* если переменная <mparam code="StoreInvLength"/> равна 0, ШК заполняются автоматически значением вида XXX#YYY (или приравнивается шифру в том же формате)
* если переменная <mparam code="StoreInvLength"/> больше 0, ШК заполняются автоматически сквозным номером (если шифр в формате XXX#YYY, то шифр приравнивается ШК)
</spoiler>
В случае наличия нескольких мест и раздельной их маркировки в этом поле допустимы маски в виде символов подчеркивания, говорящие о позициях штрихкода, переменных для разных мест в рамках одного заказа.<br>
:* код ПВЗ в нашей системе
:* код ПВЗ в системе подрядчика
:* наименование ПВЗ в виде строки "ПВЗ " + «Наименование ПВЗ».  При указании ПВЗ в поле адреса необходимо проверять значение поля город получателя (он должен соответствовать данным ПВЗ) либо не передавать его вообще.
Для тега города '''town''' можно указать код региона в атрибуте '''''regioncode''''' из [[#Справочник регионов|справочника регионов]]. Поиск будет производиться в указанном регионе.
* '''weight''' — Общий вес заказа в килограммах.
* '''quantity''' — Количество мест.
* '''service''' — Режим доставки (тип услуги) передается код из справочника «[[#Справочник Видов Виды срочности|Виды срочности]]».
* '''type''' — Тип корреспонденции (отправления) передается код из справочника «Типы корреспонденции».
* '''return''' — Признак необходимости возврата. Принимает значения:
* '''department''' — Подразделение, в котором оформляется заказ.
* '''costcode''' — Кост-код сотрудника.
* '''respstore''' — Код ответственного филиала.Для ответственного филиала в который передается заказ, требуется включение параметра "Разрешить клиенту передавать заказы в этот филиал"
* '''pickup''' — Признак оформления забора YES/NO. Если стоит YES, то весь заказ считается заданием на забор груза, а не на доставку! Применяется для вызова курьера к отправителю для забора других отправлений. ''Внимание!'' при добавлении в забор складских товаров, их тип '''''type''''' всегда должен быть установлен как [7] Забор товара, если будет указан другой тип, то он будет исправлен в момент добавления заказа на [7] Забор товара
* '''acceptpartially''' — Признак возможности частичного выкупа товаров отправления YES/NO.
* '''uid''' - Универсальный идентификатор заказа на стороне отправителя. Не обязательный параметр, ограниченного по времени действия. Время хранения в системе, - сутки.
* '''items''' — Контейнер для описания вложений. <rspoiler text="Необязательный контейнер">Если для поставщика товара в системе MeaSoft не указаны полное наименование компании и ИНН в карточке клиента, заполните параметры <code>suppcompany</code> и <code>suppINN</code> в этом контейнере. Отсутствие информации о поставщике приведет к [[Настройка модуля печати кассовых чеков#Ошибка фискализации (ошибка программирования реквизита 1226)|ошибке фискализации]].</rspoiler>. Атрибуты:
:* '''''suppphone''''' — Номер телефона компании поставщика, если отличается от заказчика.
:* '''''suppINN''''' — ИНН компании поставщика, если отличается от заказчика.
:* '''''governmentCode''''' — Код товарной номенклатуры. Используется для [[Маркировка|маркированных товаров , например («Честный знак»)]]. Для кода '''Честный знак''' Нужно указывать все данные из нанесенного QR-кода кроме не читаемых символов (#29). Если код не известен — укажите знак вопроса «?», тогда курьер отсканирует код фактически передаваемого покупателю товара. Для некоторых процессов может использоваться значение «!» — в этом случае курьер сканирует серийный номер товара, но это не считается кодом маркировки. При этом, если указано значение «?» или «!» и quantity больше 1, то такое вложение растиражируется quantity раз.:* '''''govType''''' — Тип маркировки товара. В данный момент существуют следующие типы маркировки::: 1 — Честный знак. По-умолчанию.:: 2 — ГИИС ДМДК.:: 3 — Серийный номер.:* '''''message''''' — Строка сообщения.:* '''''extraTags''''' — Строка в формате JSON для отправки в ОФД. :: Тэг 1265 - значение отраслевого реквизита = код места деятельности аптеки :: Тэг 1262 – идентификатор ФОИВ = "020" (константа ФОИВ МИНЗДРАВа) :: Тэг 1263 - дата нормативного акта федерального органа исполнительной власти = "14.12.2018" (константа) :: Тэг 1264 - номер нормативного акта федерального органа исполнительной власти = "1556"(константа) :: Тэг 1212 - Признак предмета расчета :: Пример: <source lang="json">"item_industry_props":{"tag1262":"020","tag1263":"14.12.2018","tag1264":"1556","tag1265":"tm=mdlp&sid=00000000XXXXXX"},"tag1212": "1"</source>  Для клиентов из '''Узбекистана''' необходимо указывать код ИКПУ и код упаковки в следующем формате:<source lang="json">"ikpu":"123123123","packageCode":"123456"</source>  
* '''packages''' — Контейнер для описания мест. Необязательный контейнер. Атрибуты:
:* '''''code''''' — код услуги.
:* '''''value''''' — значение услуги. Если тип услуги bool, то в значении передаем true.
 
* '''extrafields''' — Контейнер для описания расширенных полей. Необязательный элемент. Может содержать несколько элементов extrafield
* '''extrafield''' — Контейнер для описания расширенного поля.
:* '''''name''''' — наименование переменной. Может содержать только латинские буквы, цифры и знак подчеркивания "_", но начинаться может только с буквы. Максимальная длина - 20 символов.
:* '''''value''''' — значение переменной. Максимальная длина - 250 символов.
* '''overall_volume''' — Общий объем, м3. Виртуальное поле. Необязательное. Из этого поля рассчитывается длина/высота/ширина места. Расчет срабатывает только если в каждом месте есть нулевые значения длины или высоты или ширины.
|-
|134||Specify a valid "paytype" for the town.||Укажите тип оплаты для города
|-
|135||Specify the correct SKU ID/code for item.||Укажите артикул/код вложения
|-
|136||Specify warehouse goods in the order.||Укажите вложения в заказе
|-
|137||The order's date of creation is more than 60 days ago.||Заказ создан более 60 дней назад
|-
|138||Specify a valid "Package dimension" field value.||Укажите корректные габариты места
|-
|139||Wrong type of XML query||Ошибка запроса
|-
|140||Duplicate item code in the order.||Дублирование кода вложения в заказе
|-
|141||Duplicate additional service in the order.||Дублирование кода дополнительной услуги в заказе
|-
|144||Incorrect extrafields.||Некорректные расширенные поля.
|-
|}
 
=== Передача значений полей в форме создания заказа в Личном Кабинете через GET параметры ===
Если вам требуется передавать значения полей в форме создания заказа в Личном Кабинете через GET параметры, то вы можете подробно ознакомиться с этим на данной странице - [[Личный_кабинет_клиента#Передача и подстановка значений полей формы создания заказа через GET параметры]]
== Запрос статуса заказов ==
<ordercode>34234</ordercode>
<givencode>234534</givencode>
<uid>af11c7c6-6645-4a20-9604-be911a75722d</uid>
<datefrom>2016-07-21</datefrom>
<dateto>2016-07-21</dateto>
<namestarts/>
</conditions>
<limit>500</limit>
</statusreq>
</source>
* '''orderno''' — Идентификатор заказа у клиента (шифр). Необязательный элемент.
* '''ordercode''' — Внутренний код заказа. Необязательный элемент.
* '''orderno2''' — Номер заказа из срочных. Необязательный элемент.* '''uid''' — Уникальный идентификатор, если он был добавлен при создании заказа. Необязательный элемент. Запрос информации по uid возможен в течении суток после создания заказа
* '''datefrom''' — Дата заказа «с». Необязательный элемент.
* '''dateto''' — Дата заказа «по». Необязательный элемент.
:* '''namestarts''' — Поиск по номеру заказа(шифр), который начинается с «orderno».
* '''limit''' — Необязательный параметр. Дает возможность получить не все измененные заказы, а только какое-то определенное количество. Помогает на случай, если у вас скопилось очень много измененных заказов и нужно их грузить лимитировано. После каждой итерации нужно вызывать commitlaststatus с контейнером списка обработанных кодов, [[#Лимитирование запросов|читать подробнее]]
<div style="color: #a94442; background-color: #f2dede; border: 1px solid #ebccd1; padding: 3px 10px 10px;">
<town code="153361" regioncode="78" regionname="Санкт-Петербург город">Санкт-Петербург город</town>
<address>Петровка 38 офис 35</address>
<area>Район 1</area>
<pvz>
<code>126</code>
<price>387.5</price>
<inshprice>387.5</inshprice>
<paytypecode="1">CASH</paytype>
<weight>5.1</weight>
<quantity>2</quantity>
<return_weight>5.1</return_weight>
<return_message>Доставлено в целости</return_message>
<return_date>2026-01-19</return_date>
<return_time>13:18:00</return_time>
<pickup>NO</pickup>
<print_check>YES</print_check>
<receiverpays>NO</receiverpays>
<acceptpartially>NO</acceptpartially>
<status eventstore="филиал в Санкт-Петербурге" eventtime="2016-06-02 17:22:00" createtimegmt="2016-06-03 16:14:44" message="" title="Доставлен" eventtown="Санкт-Петербург город" color="16777215">COMPLETE</status>
<statushistory>
<status eventstore="Офис в Москве" eventtime="2016-05-30 10:20:00" createtimegmt="2016-06-03 16:14:44" message="" title="Новый" eventtown="Москва город" country="RU">NEW</status> <status eventstore="Офис в Москве" eventtime="2016-06-01 17:38:00" createtimegmt="2016-06-03 16:14:44" message="филиал в Санкт-Петербурге" title="Планируется отправка" eventtown="Москва город" country="RU">DEPARTURING</status> <status eventstore="Офис в Москве" eventtime="2016-06-01 19:53:00" createtimegmt="2016-06-03 16:14:44" message="филиал в Санкт-Петербурге" title="Отправлено со склада" eventtown="Москва город" country="RU">DEPARTURE</status> <status eventstore="филиал в Санкт-Петербурге" eventtime="2016-06-02 07:41:00" createtimegmt="2016-06-03 16:14:44" message="" title="Получен складом" eventtown="Санкт-Петербург город" country="RU">ACCEPTED</status> <status eventstore="филиал в Санкт-Петербурге" eventtime="2016-06-02 09:17:00" createtimegmt="2016-06-03 16:14:44" message="" title="Выдан курьеру на доставку" eventtown="Санкт-Петербург город" country="RU">DELIVERY</status> <status eventstore="филиал в Санкт-Петербурге" eventtime="2016-06-02 17:22:00" createtimegmt="2016-06-03 16:14:44" message="" title="Доставлен (предварительно)" eventtown="Санкт-Петербург город" country="RU">COURIERDELIVERED</status> <status eventstore="филиал в Санкт-Петербурге" eventtime="2016-06-02 17:22:00" createtimegmt="2016-06-03 16:14:44" message="" title="Доставлен" eventtown="Санкт-Петербург город" country="RU">COMPLETE</status>
</statushistory>
<customstatecode>2<customstatecode>
<receipt fdNum="124555" fnSn="9289000100295555" kktNum="0001611984048555" inn="7722756555" fdValue="2899551555" summ="387.5" ofdUrl="gate.ofd.ru">https://ofd.ru/rec/7722756555/0001611984048555/9289000100295555/124555/2899551555</receipt>
<items>
<item code="34533" extcode="abc123" quantity="1" mass="0.2" retprice="37.5" VATrate="0" barcode="2345625213125" article="1" returns="0" origincountry="040" GTD="" excise="0.00" governmentCode="11223311" govType="1" suppcompany="Поставщик" suppINN="1112223334" suppphone="79161234567">Мяч</item> <item code="34456" extcode="abc124" quantity="2" mass="2" retprice="100" VATrate="10" barcode="4645625213138" article="2" returns="0" governmentCode="" govType="1">Обруч</item> <item code="34421" extcode="abc125" quantity="3" mass="0.3" retprice="50" VATrate="18" barcode="2345625213126" itemcode="44123" article="3" returns="0" governmentCode="" govType="1">Погремушка желтая</item>
</items>
<packages>
<package code="33332" strbarcode="ORD0000002" mass="2.5" message="" got="NO"></package>
</packages>
<extrafields>
<extrafield>
<name>courier_car</name>
<value>ВАЗ 2106, бежевый</value>
</extrafield>
</extrafields>
</order>
</statusreq>
:* '''''ordercode''''' — внутренний код заказа в системе, применяется для некоторых внутренних операций.
:* '''''givencode''''' — внутренний код заказа в системе, применяется для некоторых внутренних операций.
 
*'''paytype''' - Тип оплаты заказа получателем. Принимает значения:
:: CASH - Наличными при получении (по-умолчанию)
:: CARD - Картой при получении
:: NO - Без оплаты.
:: OTHER - Прочее (Предусмотрен для того, чтобы оплата поступала непосредственно в курьерскую службу посредством прочих типов оплаты - таких как: вебмани, яденьги, картой на сайте, прочие платежные системы и т.д.)
* Атрибуты контейнера '''paytype''':
** '''''code''''' - (integer) внутренний код типа оплаты заказа в системном справочнике "Типы оплаты корреспонденции". Не обязательный элемент.
 
* атрибут '''''code''''' контейнера '''item''' — внутренний код строки заказа в системе, применяется для некоторых внутренних операций.
:* '''''returns''''' — количество данного товара, от которого отказался получатель. Не нулевое только в случае частичного отказа.
* '''''area''''' в контейнере '''receiver''' — район/метро получателя.
* '''''coords''''' в контейнере '''receiver''' — координаты получателя.
* '''''deliveryPIN''''' в контейнере '''receiver''' — Пин-код.
* '''partner''' — текущий филиал/подрядчик.
* '''return_message''' — информация о возврате
* '''return_date''' - дата возврата
* '''return_time''' - время возврата
* '''department''' — Подразделение, в котором оформляется заказ.
: TRANSACCEPTED — Прибыл на склад перевозчика.
: PICKUPTRANS — Забран у перевозчика.
: WITHDRAWN_FROM_PICKUP_POINT - Изъят.: CUSTOMSDELAY - Задержка отправления таможенным органом.: DEPARTUREDELAY - Задержка отправления перевозчиком.: STORETAKE - Принят в работу на складе.
'''Примечание.''' В будущем возможно дополнение используемого набора статусов.
# Контейнер '''statushistory''' и '''deliveryprice''' заполняется для тарифов [[Личный кабинет курьерской службы#Функции личного кабинета|Премиум и Максимум]].
# Контейнер '''packages''' не возвращает более 1000 элементов.
# Система никогда не гарантирует последовательность прохождения заказом набора статусов. То есть Вы можете получить статус «COMPLETE», а следующим запросом — «NEW» — такое может произойти, например, если оператор ошибочно отметил заказ выполненным, а затем исправил ошибку.
</div>
<br>
== Трекинг заказа по номеру ==
Запрос трекинга по номеру предназначен для выдачи минимальной обезличенной информации о конкретном заказе не авторизованному пользователю. Наша система имеет для этого интерфейс по адресу «home.courierexe.ru/{код экстра}/tracking». Вы можете либо сделать ссылку на такую страницу на своем сайте, либо разместить ее iframe’ом у себя, либо сделать свою и пользоваться нашим API. Этот интерфейс создан специально для выдачи информации живому пользователю сайта. Для получения статусов заказов в свою информационную систему нужно использовать запрос «statusreq», желательно с параметром changes=ONLY_LAST!
=== Лимитирование запросов ===Дает возможность получить не все измененные заказы, а только какое-то определенное количество. Помогает на случай, если у вас скопилось очень много измененных заказов и нужно их грузить лимитировано. После успешной обработки получнных заказов, '''обязательно''' нужно вызвать commitlaststatus с кодами обработанных заказов.  '''Пример запроса:''' Для получения ограниченного числа изменившихся заказов отправьте запрос:
<source lang="xml">
<?xml version="1.0" encoding="UTF-8"?><trackingstatusreq> <auth extra="8" login="login" pass="pass"></auth> <changes>8ONLY_LAST</extrachanges> <ordernolimit>12345</ordernolimit></trackingstatusreq>
</source>
'''Пример После успешной обработки ответанеобходимо отметить полученные статусы успешно полученными, отправив запрос:'''
<source lang="xml">
<?xml version="1.0" encoding="UTF-8" ?><commitlaststatus> <auth extra="8" login="login" pass="pass"></auth> <acs> <ac>11111</ac> <ac>22222</ac> <ac>33333</ac> <ac>44444</ac> <ac>55555</ac> </acs></commitlaststatus></source>  * '''acs''' — контейнер. Обязательный элемент.* '''ac''' — атрибут''' ordercode''' контейнера '''order''' полученного на этапе запроса '''statusreq'''. Помимо приведенных в примере параметров, вы также можете передавать и остальные, описанные ранее, например '''streamid'''. == Трекинг заказа по номеру ==Запрос трекинга по номеру предназначен для выдачи минимальной обезличенной информации о конкретном заказе не авторизованному пользователю. Наша система имеет для этого интерфейс по адресу «home.courierexe.ru/{код экстра}/tracking». Вы можете либо сделать ссылку на такую страницу на своем сайте, либо разместить ее [[#Размещение страниц на своем сайте (iframe)|iframe’ом]] у себя, либо сделать свою и пользоваться нашим API. Этот интерфейс создан специально для выдачи информации живому пользователю сайта. Для получения статусов заказов в свою информационную систему нужно использовать запрос «statusreq», желательно с параметром changes=ONLY_LAST! '''Пример запроса:'''<source lang="xml"><?xml version="1.0" encoding="UTF-8"?><tracking> <extra>8</extra> <orderno>1234</orderno></tracking></source> '''Пример ответа:'''<source lang="xml"><?xml version="1.0" encoding="UTF-8"?>
<tracking>
<order orderno="111111" ordercode="12345">
<barcode>111111</barcode>
<AWB>111111</AWB>
<item code="34421" extcode="abc125" quantity="3" mass="0.3" retprice="50" VATrate="18" barcode="2345625213126" article="3" returns="0" governmentCode="">Погремушка желтая</item>
</items>
<acquirers>
<acquirer code="2" name="Ibox"/>
<acquirer code="5" name="Payme"/>
<acquirer code="6" name="Click"/>
</acquirers>
</order>
</tracking>
</source>
 
где,
* '''acquirers''' / '''acquirer''' - эквайринг, доступный для получения ссылки на оплату заказа
** '''acquirers''' / '''acquirer''' / ''code'' - внутренний код эквайринга
** '''acquirers''' / '''acquirer''' / ''name'' - наименование эквайринга
"time":"2016-06-02 17:22:00",
"location":"RU",
"town":"Москва",
"store":"Москва Главный",
"content":"Complete"
},
"time":"2016-06-02 17:22:00",
"location":"RU",
"town":"Москва",
"store":"Москва Главный",
"content":"Courierdelivered"
},
"time":"2016-06-02 09:17:00",
"location":"RU",
"town":"Москва",
"store":"Москва Главный",
"content":"Delivery"
},
"time":"2016-06-02 07:41:00",
"location":"RU",
"town":"Москва",
"store":"Москва Главный",
"content":"Accepted"
},
"time":"2016-06-01 19:53:00",
"location":"RU",
"town":"Горький",
"store":"Горький Автозавод",
"content":"Departure"
},
"time":"2016-06-01 17:38:00",
"location":"RU",
"town":"Горький",
"store":"Горький Автозавод",
"content":"Departuring"
},
"time":"2016-05-30 10:20:00",
"location":"RU",
"town":"Горький",
"store":"Горький Автозавод",
"content":"New"
}
Описание контейнеров ответа аналогично описанию [[API#.D0.97.D0.B0.D0.BF.D1.80.D0.BE.D1.81 .D1.81.D1.82.D0.B0.D1.82.D1.83.D1.81.D0.B0 .D0.B7.D0.B0.D0.BA.D0.B0.D0.B7.D0.BE.D0.B2|Запроса статусов заказов]].
== Изменение = Получение ссылки для оплаты заказа ==Запрос предназначен для изменения заказов, по которым не было произведено изменений статуса корреспонденции, времени доставки — то есть заказов, которые ещё не в работе. Изменять заказы могут курьерские службы с тарифами «Премиум» и «Максимум». Чтобы разрешить изменение заказов, в личном кабинете курьерской службы перейдите в '''Параметры''' > '''Расширенные''' и установите флажок '''Разрешить отмену и изменение заказов'''.=
<div style="color: #a94442; background-color: #f2dede; border: 1px solid #ebccd1; padding: 3px 10px 10px;">
'''Обратите внимание!'''
# Данные запроса изменения указываются '''полностью''', как если бы заказ создавался впервыеЭтим методом вы можете только получить ссылку на оплату.# При отсутствии вложения в запросе изменения данное вложение '''не удаляется''' из заказа, но Фискализация этого платежа идет отдельным процессом. По его количество становится равным 0.# При одновременном изменении заказа в API и системе курьерской службы приоритет отдается данным системы курьерской службы. То есть изменения возможности уточняйте в API приняты не будутслужбе поддержки.
</div>
Заказ доступен для оплаты, если:* тип оплаты заказа не наличными, а например картой или по договору, альтернативой может стать установка параметра "Спрашивать тип оплаты" в карточке клиента.* заказ имеет наложенный платеж* не оплачен* активен (не доставлен, не возвращен в т.ч. курьером) '''Пример запроса:'''<source lang="xml"><?xml version="1.0" encoding="UTF-8"?><acqlink> <extra>8</extra> <acq> <code>2</code> </acq> <order> <code>12345</code> </order></acqlink></source> где*'''extra''' - код экстраклиента в системе Measoft.*acq.'''code''' - внутренний код платформы эквайринга в системе Measoft. (известен в МП из [https://wiki.courierexe.ru/index.php/API#.D0.A2.D1.80.D0.B5.D0.BA.D0.B8.D0.BD.D0.B3_.D0.B7.D0.B0.D0.BA.D0.B0.D0.B7.D0.B0_.D0.BF.D0.BE_.D0.BD.D0.BE.D0.BC.D0.B5.D1.80.D1.83 Трекинга]) *order.'''ordercode''' - внутренний код заказа, типа ''int'', уникальный в пределах экстраклиента '''Пример ответа:'''<source lang="xml"><?xml version="1.0" encoding="UTF-8"?><acqlink error="0" amount="2000" extid="161083231">https://qr.nspk.ru/AD10001A7GLVGA9YDO2I0789SIOPV3?type=02&amp;bank=1000011&amp;sum=2000&amp;cur=RUB&amp;crc=7E9C</acqlink></source> где*'''acqlink''' - ссылка на оплату заказа*acqlink.'''amount''' - тип integer сумма платежа в копейках в общем случае, в других случаях в соответствии с типом валюты*acqlink.'''extid''' - идентификатор счета на стороне платежной системы*acqlink.'''error'' - код ошибки, если отличается от 0, означает невозможность получения ссылки на оплату, в этом случае ссылки на оплату не будет и ответ будет выглядеть так:<source lang="xml"><?xml version="1.0" encoding="UTF-8"?><acqlink error="2" message="Ошибка авторизации: Invalid token" amount="2000" extid=""/></source> где*acqlink.'''message''' - текст ошибки возвращаемой эквайрингом Возможные типы ошибок получения ссылки:* '''1''' - не настроен эквайринг, либо не найден заказ* '''2''' - ошибка на стороне эквайринга* '''3''' - запрещающий статус курьера (заказ доставлен, частично доставлен)* '''4''' - оплата заказа не разрешена == Изменение заказа ==Запрос предназначен для изменения заказов. Изменять заказы могут курьерские службы с тарифами «Премиум» и «Максимум». Чтобы разрешить изменение заказов, в личном кабинете курьерской службы перейдите в '''Настройки''' > '''Заказы''' и в разделе '''Отмена и редактирование''' установите флажок '''Разрешить отмену и изменение заказов'''. Вы также можете пометить в списке '''Статусы для отмены и редактирования заказов''' галками статусы корреспонденции, для которых возможны отмена и изменение заказов. По умолчанию (когда в этом списке ничего не выбрано) редактирование и отмена разрешены для статуса «Новый» <div style="color: #a94442; background-color: #f2dede; border: 1px solid #ebccd1; padding: 3px 10px 10px;">'''Обратите внимание!'''# Данные запроса изменения указываются '''полностью''', как если бы заказ создавался впервые.# При отсутствии вложения в запросе изменения данное вложение '''не удаляется''' из заказа, но его количество становится равным 0.# При одновременном изменении заказа в API и системе курьерской службы приоритет отдается данным системы курьерской службы. То есть изменения в API приняты не будут.</div> При редактировании заказа может быть отменен запланированный курьер. Это зависит от значения переменной '''Справочники''' > '''Переменные''' > '''Корреспонденция''' > '''Автоматически устанавливать заплан. курьера по району''':* '''Нет''' — при редактировании заказа по АПИ курьер не изменяется;* '''Район''' — если изменен адрес доставки, курьер сбрасывается;* '''Район или дата план. доставки''' — если изменен адрес доставки или плановая дата вручения, курьер сбрасывается.
=== Описание полей запроса изменения ===
== Отмена заказа ==
Запрос предназначен для отмены заказов, по которым не было произведено изменений статуса доставки, статуса корреспонденции, времени доставки, то есть заказов, которые ещё не в работе.
Отменять заказы могут курьерские службы с тарифами «Премиум» и «Максимум». Чтобы разрешить отмену Разрешения для отмены заказов, и статусы в личном кабинете курьерской службы перейдите которых заказы можно отменять описаны в разделе '''Параметры''' > '''Расширенные''' и установите флажок '''Разрешить отмену и изменение Изменение заказов'''.
При отмене заказа поле «Инфо о доставке» получает значение «Отменено заказчиком», поле «Дата доставки» — текущую дату, а «Вручил курьер» — системную запись «ОТМЕНА».
<?xml version="1.0" encoding="UTF-8"?>
<attachments>
<item name="doc1.docx" timestamp="2025-01-01 12:00:00" size="35654">JVBERi0xLjMNJVBERixLjMN JUBQREYwMTIzNDU2Nzg5IDI NMyAwIG9iag08PA0vVHlwZSAUwLJdLwIDKxTn+AScMjKqor7Xm3sp1yj1k6BzlPdX2Qsiit6yg3g1fCI4YVAgclUOIY5tDra2LvAcIS U3VidHlwZSAvSW1hZ2UNL1d pZHRoIDE4MDgNL0hlaWdodCA5/+8PsL/sXb0+aoper/9kL/4Ov/YE9QsHwyg7YZTtKICy0YVIYb4Nt7L1tPUMfaX9NpuTsvFCtBAvYG ggNCAwIFINL0JpdHNQZXJDb 21wb25lbnQgMQ0vRGVjb2RlUeJVZoZ2tm6+fZVqAavZpeLizVLtct1a+xvG0+bTSkw3Ac8PhdNfL4smrT2hSgPJLfyaVGyA2ndyW22t ENL0NvbHVtbnMgMTgwOA0sFtTP5knktPNumSZ56QsFRPJkaU8ExDxAcMYMDIoBiIoR4/dDjHMbMW/EW4fiB1pvWmV2ONWIl1Xdub Xg1ob0qWX9W4qagsqzGhjRLsEGeJGVXg9oVC+XkJa9esrhGUmC0tuKEla+AplVO/OtHwXcW0FWui1z7 6KHrtobuWV0xa9sCEiSvb91w3ePHOvfcveo5xt9o4ZevHF7ZOeKxV5qmVx2MI44a1L+Mhk5YuGT12xd Ibsb7r+j9bff/unQlv0al6HBnoD5G89q4+tkjgDtvwwARmqm2aa2Jgvmth8mrXquTNtl2u467vbF/5r vnMt9uesu21Me1bjeNJGlVfAaCtw+/jfenJ/fWjqa7ygExx+P g0vSW1hZ2VNYXNrIHRydWUNLL0BcTGroxrKexQXIQ1ImfEW7ZRJZa+O XhEZWNvZGUNPj4Nc3RyZWFt DQ<ip7xJmmNESMxrgu/item>dquBbGypjJpFDJVRH1rVPR1Ifl4aFS5IEdDWZFSdyBBWKWhVSVu517ZgzOCFAwp wwbFph29g4fTaxnvn/3X78x+Tt56ZNffArgULt+HByvy7+yz6U6XWMawCi3+6gJXN0S+jf4t+HT34wg <item name="photo2.jpg" size="74861">VBERi0xLjMN km7/HDp55YTSWMoCMgZsvZkBrXtIv4WA7xgkT4YpYpxjwLvnsWKkGE+pDbxER0UUWlpVFRY4oilTfM4 JUBQREYwMTIzNDU2Nzg5IDI NMyAwIG9iag08PA0vVHlwZSAMIzgCPgxjOlZ87ceA7ceRJrgpipFGyugPQ4OTI2S8lWJoqTpHJlJbNOeYM7zTcoVxSNyJXiYWSAMklT vWE9iamVjdA0vU3VidHlwZS AvSW1hZ2UNL1dpZHRoIDEzNj q/xd+3fd3/USq2V1rJ7RyBLHsuDSiLwgaOFc5LUCRGI+QWuBAsIwPlZrgRpSMseJyTzD15PKiIRE7bc gNL0hlaWdodCAxMzMzDS9MZ W5ndGggNCAwIFINL0JpdHNQZ Rggk5ijXAPpqISetD4wVm0AD2LHuBZdaxmK3HOKIZoG0QLmiZdVqspXnFIJwVyCKhWiDCI4bzH8Y76w XJDb21wb25lbnQgMQ0vRGVj b2RlUGFybXMgPDwNL0sgLTEN TAnwM67HIqMISOkmJXY8mlYhpiNa7g2oTBkKxo4wgnvETQIUUrlFOn9KdOreDiKQx071rN4N61yRAi1 L0NvbHVtbnMgMTM2OA07EGRhSOgoeLYv+k41+KZ1SVBXAuDjB+xuxnQmm8wJDcP5IRn+Pg0 vSW5penzbR/ivm7qleHK5o790w8ejXchI vOHIPWtWwYhtAO34LdDXqFqWxZEBLNstMCwwITBTWirxk12zuUppp</item>
</attachments>
</source>
<message>Клиент отказался от покупки</message>
<paytype>CASH</paytype>
<storeprice>123</storeprice>
<items>
<item code="34533" quantity="1" reason="0" governmentCode="11223311" />
<item code="34456" quantity="0" reason="0" />
<item code="34421" quantity="2" reason="0" />
</items>
<image attachments> <attachment filename="filename1.jpg"> /9j/4AAQSkZJRgA BAQAAAQABAAD/2wBDAA0JCg sKCA0LCgsODg0PEyAVExISEy ccHhcgLikxMC4pLSwzOko+M zZGNywtQFdBRkxOUlNSMj5aY VpQYEpRUk//2wBDAQ4ODhMR EyYVFSZPNS01T09PT09PT09P T09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09 PT09PT0//wAARCAYACAADAS IA</attachment> <attachment filename="filename2.jpg"> /9j/4AAQSkZJRgA BAQAAAQABAAD/2wBDAA0JCg sKCA0LCgsODg0PEyAVExISEy ccHhcgLikxMC4pLSwzOko+M zZGNywtQFdBRkxOUlNSMj5aY VpQYEpRUk//2wBDAQ4ODhMR EyYVFSZPNS01T09PT09PT09P T09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09 PT09PT0//wAARCAYACAADAS IA</imageattachment> </attachments>
</order>
</setorderinfo>
* '''outstrbarcode''' — код у подрядчика (код заказа во внешней системе). Используется в интеграциях с внешними системами.
* '''paytype''' — Тип оплаты заказа. Допустимые значения CASH/CARD.
* '''storeprice''' — Агентское вознаграждение.
* '''items''' — Контейнер для описания вложений '''item''' . Атрибуты:
:* '''''code''''' — Код вложения.
:* '''''quantity''''' — Количество доставленных единиц вложения.
:* '''''reason''''' — Причина недоставки, выбирается из соответствующего списка статусов.
:* '''image''governmentCode''''' — Указание кода ТН для вложения при необходимости.* '''attachments''' — Контейнер прикрепляемого изображенияприкрепляемых изображений. Содержит текст файла изображения, закодированный по стандарту Может содержать несколько контейнеров ''base64'attachment'. Контейнер '':* 'order''attachment' может содержать более одного контейнера '' — Контейнер изображения. Содержит текст файла изображения, закодированный по стандарту 'image'base64''. Атрибут:::* '''''filename''''' — Имя файла.
<waybill>
<auth extra="8" login="login" pass="pass" />
<client>CLIENT</client>
<orders>
<order orderno="1234567" ordercode="33331" />
</orders>
<form>1</form>
<start>5</start>
<integration>21</integration>
</waybill>
</source>
'''waybill''' — Корневой контейнер. Обязательный элемент
* '''auth''' — Авторизация. Обязательный элемент
* '''client''' — Признак клиента или агента. Необязательный элемент.
:* CLIENT — Признак клиента, значение по умолчанию
:* AGENT — Признак агента. В ответ отдается информация по заказам, переданным агенту на доставку
* '''orders''' — Список заказов для получения печатных форм. Содержит тэги '''order''' с атрибутами:
:* '''''orderno''''' — шифр заказа
:* 3 — Наклейки на страницу формата А4
:* 4 — Акты приема-передачи
* '''start''' — Имеет смысл только для form = 3. Начальная позиция первой наклейки. Используется для пропуска наклеек на листе для их экономии.
* '''integration''' - Получение наклеек от подрядчика. Не обязательный элемент, имеет смысл при наличии кода подрядчика в карточке заказа. Принимает значение:
:* 21 - подрядчик GTD
<?xml version="1.0" encoding="UTF-8"?>
<waybill>
<integration code="21">
<order code="33331">
<content>JVBERi0xLjYNJeLjz9MNC...</content>
</order>
<order code="33332">
<content>JVBERi0xLjYNJeLjz9MNC...</content>
</order>
</integration>
<content>EODIcaI8KSBlwQ 4MnEOR7Px8U8EBAyGICBnwpw
IZhQgz0ZxuPs8EBM/GcbjzB AwhBl8hwQYIO00GmEwg1CeEG
В тэге content возвращаются бинарные данные (файл pdf), закодированные в base64.
При записи в файл необходимо использовать двоичный формат записи!
'''Обратите внимание'''Блок integration содержит отдельные наклейки для заказов, что печатные формы для заборов не формируютсяпредоставленные подрядчиком, так же закодированные в base64.
 
'''Обратите внимание''' Лимит количества при единовременном получении печатных форм - 1000 штук. Если нужно получить больше - делайте это несколькими запросами.
 
'''Обратите внимание''' Печатные формы для заборов не формируются.
 
 
'''Пример ответа с ошибкой:'''
<source lang="xml">
<?xml version="1.0" encoding="UTF-8"?>
<waybill>
<error>Текст ошибки</error>
</waybill>
</source>
== Справочник городов ==
<city>Краснодарский край</city>
<namecontains>новгород</namecontains>
<namecontainsparts>молоково моск</namecontainsparts>
<namestarts>Моск</namestarts>
<name>Москва</name>
* '''conditions''' — Задает условия поиска. Все вложенные элементы одновременно накладывают условие «И».
:* '''city''' — Поиск по всем населенным пунктам региона.
:* '''namecontainsparts''' — Поиск населенных пунктов, название которых содержит все указанные слова, с разбиением поисковой фразы через пробел. Например "моск моло" найдет деревню "Молоково" в Московской области.
:* '''namecontains''' — Поиск населенных пунктов, название которых содержит указанный текст.
:* '''namestarts''' — Поиск населенных пунктов, название которых начинается с указанного текста.
<message></message>
</document>
<serials>
<serial>123456789</serial>
</serials>
</itemmovements>
</itemlist>
:* '''message''' — комментарий
== Получение справочника тарифов по городам ==* '''serials''' — контейнер серийных номеров:* '''serial''' — серийный номер единицы номенклатуры, участвующей в движении  
== Серийные номера =='''Пример запроса справочника тарифов по городамдвижения номенклатуры с серийным номером:'''
<source lang="xml">
<?xml version="1.0" encoding="UTF-8"?><tariffsserialmovements> <auth extra="8" login="login" pass="pass" /> <townfrom>Москва</townfrom> <service>1</serviceauth> <mainonlyserial>1123456789</mainonlyserial> </tariffsserialmovements>
</source>
* '''authserial''' — атрибут '''extra''' обязателен, по нему определяется курьерская служба.* '''townfrom''' — город-отправитель. Если не передан, то городом будет «Москва».* '''service''' — режим доставки. Обязательный элемент.* '''mainonly''' — необязательный элемент. Если передан, то в ответе будут данные только по городам из справочника '''Межгород''' > '''Зоны'''серийный номер единицы номенклатуры
'''Пример ответа справочника тарифов по городамдвижения номенклатуры с серийным номером:'''<source lang="jsonxml">{ <?xml version="townfrom1.0": encoding="0c5b2444-70a0UTF-4932-980c-b4dc0d3f02b58",?> <serialmovements count="service16": 1,> <serialmovement> "tariffs": [<code>151500</code> { <serial>123456789</serial> "towntofias": "0c5b2444 <date>2017-70a005-4932-980c-b4dc0d3f02b5",26</date> "towntocode": 1, "towntoname": "Москва город", "townregion": "Город Москва", "distance": <delivered>0,</delivered> "pricedistance": 0, <item> "pricesnew": { <code>4259</code> "before": [ <name>Настольная игра Дженга</name> { </item> "price": 100, <status> "every": 0, <code>5</code> "mass": 1 <name>Возврат от покупателя</name> }, </status> { <order> "price": 150, <ordercode>3374830</ordercode> "every": <number>123660-0,</number> "mass": 5 <date>2017-05-24</date> } <orderno>14123</orderno> ], <barcode>0000000670</barcode> "after": [ <company>ТОВАР</company> { "price": 0 <address>Кравченко ул., "every": 1,</address> "mass": 38.01 <delivereddate>2017-05-29</delivereddate> }, { "price" <deliveredtime>12: 15, "every"00: 1,00</deliveredtime> "mass": 51.01 <deliveredto /> } </order> ] <document> }, <code>21991</code> "deliveryPeriodMin": 1, <number>318</number> "deliveryPeriodMax": 2 <date>2017-05-26</date> } <message></message> ]</document> </serialmovement>}</serialmovements></source> ''' Описание полей ответа ''' Описание аналогично описанию полей [[#Движение номенклатуры|движения номенклатуры]] 
''' Описание полей ответа '''
* '''townfrom''' — код ФИАС города-отправителя.
* '''service''' — режим доставки.
* '''tariffs''' — cписок тарифов по городу.
:* '''townregion''' — регион города-получателя.
:* '''towntofias''' — код ФИАС города-получателя.
:* '''towntocode''' — внутренний код города-получателя.
:* '''towntoname''' — наименование города-получателя.
:* '''distance''' — дистанция в км до города от МКАД, если в запросе townfrom — Москва.
:* '''pricedistance''' — сумма за километраж до города от МКАД, если в запросе townfrom — Москва.
:* '''pricesnew''' — ваши настройки тарифов из справочника '''Межгород''' > '''Тарифы по зонам'''.
::* '''before/after''' — контейнеры ДО/ОТ.
:::* '''price''' — цена. Если ответ идет по «before», то в цену также плюсуется сумма pricedistance
:::* '''every''' — за каждые.
:::* '''mass''' — масса.
:* '''prices''' — устаревший элемент, не используется.
:* '''deliveryPeriodMin''' — минимальный срок доставки.
:* '''deliveryPeriodMax''' — максимальный срок доставки.
== Номенклатура приходной накладной Серийные номера по заказу =='''Пример запроса номенклатуры приходной накладнойдвижения серийных номеров заказа:'''
<source lang="xml">
<?xml version="1.0" encoding="UTF-8" ?>
<itemdocorderserials> <auth extra="8" login="login" pass="pass"></auth> <codeordercode>21991123456789</codeordercode> <orderno>123456789</orderno> <barcode>123456789</barcode></itemdocorderserials></source>
* '''codeordercode''' — внутренний код документа приходной накладной (смзаказа. предыдущий запрос)* '''orderno''' — шифр заказа.* '''barcode''' — штрих-код заказа.Указывать необходимо один из идентификаторов заказа.
'''Пример ответа движения номенклатурысерийных номеров заказа:'''
<source lang="xml">
<?xml version="1.0" encoding="UTF-8" ?>
<itemdocorderserials> <order> <code>219913374830</code> <orderno>14123</orderno> <numberbarcode>3180000000670</numberbarcode> <datedelivereddate>20172024-0507-2620</datedelivereddate> <deliveredtime>10:04:00</deliveredtime> <assemblydate>2024-07-19 07:05:34<message/assemblydate> </messageorder>
<items>
<item > <code=">4259" quantity="1" barcode="200300" article="123555"</code> <name>Настольная игра Дженга</name> <article>123000</article> <state>Delivered</state> <serials> <serial>123456789</serial> </serials> </item>
</items>
</itemdocorderserials>
</source>
''' Описание полей ответа '''
* '''code''' — внутренний код приходной накладной
* '''number''' — номер документа
* '''date''' — дата документа
* '''message''' — комментарий
* '''order''' — блок заказа::* '''code''' — код:* '''orderno''' — шифр:* '''barcode''' — штрих-код:* '''delivereddate''' — дата доставки факт:* '''deliveredtime''' — время доставки факт:* '''assemblydate''' — дата сборки * '''item''' — контейнер блок товара::* '''code''' — внутренний код товара:* '''barcodename''' — штрихкод товаранаименование:* '''article''' — артикул товара:* '''quantitystate''' — статус Доставлено (Delivered) или Возвращено (Returned):* '''serials''' — количество поступившего товараблок серийных номеров по заказу
== Справочник филиалов Получение справочника тарифов по городам =='''Пример запроса списка филиалов:'''<source lang="xml"><?xml version="1.0" encoding="UTF-8" ?><storelist> <auth extra="8"></auth> <json>YES</json> <client_code>7890</client_code></storelist></source>
* '''auth''' — Атрибут '''extra''' — обязателен, Пример запроса справочника тарифов по нему определяется курьерская служба* '''json''' — Признак вывода ответа в виде JSON YES/NO* '''client_code''' — Код клиента курьерской службы '''Пример ответа:городам'''
<source lang="xml">
<?xml version="1.0" encoding="UTF-8" ?><storelist counttariffs> <auth extra="8" login="2login" pass="pass"> <store> <code>123</code> <name>ABC </nametownfrom> Москва</storetownfrom> <storeservice> <code>4561</codeservice> <namemainonly>Филиал 21</name> </storemainonly> </storelisttariffs>
</source>
* '''codeauth''' — Код филиалаатрибут '''extra''' обязателен, по нему определяется курьерская служба.* '''nametownfrom''' — Наименование филиалагород-отправитель. Если не передан, то городом будет «Москва».* '''service''' — режим доставки. Обязательный элемент.* '''mainonly''' — необязательный элемент. Если передан, то в ответе будут данные только по городам из справочника '''Межгород''' > '''Зоны'''.
== Справочник пунктов самовывоза ==
Для отображения списка пунктов выдачи (ПВЗ) есть '''готовый JavaScript модуль''': https://home.courierexe.ru/js/measoft_map.js Инструкция по использованию — внутри. Посмотреть пример работы можно [https://home.courierexe.ru/pvz_test.html Здесь]
Уникальные запросы списка ПВЗ кешируются на стороне личного кабинета и хранятся до 7 часов утра по московскому времени следующего дня. НапримерВажно понимать, если уникальный запрос с массой 2 кг был отправлен сегодня что в 10 часовответе отдаются только тарифы, то завтра указанные в 7 утра он сброситсяразделе "Тарифы по зонам" раздела "Межгород" в офисной системе курьерской службы, т.е. Если сегодня в 18 часов в этом же запросе вы укажете массу 2 кгсчитающихся междугородними. Доставка до городов, рассчитываемая по внутригородским тарифам, в ответе вернется тот же список ПВЗ. Если передадите массу 3 кг, список может быть другим.НЕ ОТДАЕТСЯ!
'''Пример запроса пунктов самовывоза:'''
<source lang="xml">
<?xml version="1.0" encoding="UTF-8" ?>
<pvzlist>
<auth extra="8" login="login" pass="pass"></auth>
<code>1234</code>
<client_code>7890</client_code>
<city>Свердловская область</city>
<town regioncode="66" country="RU">Нижний Тагил</town>
<parentcode>6</parentcode>
<acceptcash>YES</acceptcash>
<acceptcard>YES</acceptcard>
<acceptfitting>YES</acceptfitting>
<maxweight>30</maxweight>
<acceptindividuals>YES</acceptindividuals>
<lt>57.924737</lt>
<lg>59.940019</lg>
<rt>57.905682</rt>
<rg>59.984669</rg>
<json>YES</json>
<with_coords>YES</with_coords>
<limit>
<limitfrom>30</limitfrom>
<limitcount>2</limitcount>
<countall>YES</countall>
</limit>
</pvzlist>
</source>
* '''auth''' — Атрибут '''extra''' — обязателен, по нему определяется курьерская служба, '''login''' и '''pass''' позволяют авторизоваться под клиентом: для отдельного клиента могут быть ограничения по доступности некоторых ПВЗ, и в этом случае они будут учтены.
* '''code''' — Внутренний код.
* '''client_code''' — Код клиента курьерской службы.
* '''city''' — Регион получателя. Можно указать код региона или полное наименование региона из [[#Справочник регионов|справочника регионов]].
* '''town''' — Город получателя.
Для тега города '''town''' можно указать код региона в атрибуте '''''regioncode''''' из [[#Справочник регионов|справочника регионов]]. Поиск будет производиться в указанном регионе.
Также можно указать страну получателя в атрибуте '''Пример ответа справочника тарифов по городам''country''''' в соответствии с <source lang="json">{ "townfrom": "0c5b2444-70a0-4932-980c-b4dc0d3f02b5", "service": 1, "tariffs": [https { "towntofias"://ru.wikipedia.org/wiki/ISO_3166"0c5b2444-70a0-4932-1 стандартом ISO_3166980c-b4dc0d3f02b5", "towntocode": 1], например "towntoname": "Москва город", "townregion": "Город Москва", "distance": 0, «RU» "pricedistance": 0, «RUS» или «643» для России. "pricesnew": {* '''parentcode''' — Фильтр по родительскому "before": [[#Справочник филиалов|филиалу]]* '''acceptcash''' — Фильтр по приему наличных YES/NO { "price": 100, "every": 0, "mass": 1 },* '''acceptcard''' — Фильтр по приему банковских карт YES/NO {* '''acceptfitting''' — Фильтр по наличию примерки YES/NO "price": 150,* '''maxweight''' — Фильтр по максимальному весу "every": 0, с которым работает ПВЗ* '''acceptindividuals''' — Фильтр по доступности физическим лицам YES/NO "mass": 5* '''lt''' — Широта левого верхнего угла }* '''lg''' — Долгота левого верхнего угла ],* '''rt''' — Широта правого нижнего угла "after": [* '''rg''' — Долгота правого нижнего угла {* '''json''' — Признак вывода ответа в виде JSON YES/NO "price": 0,* '''with_coords''' — Признак вывода ПВЗ только с наличием координат YES/NO "every": 1,* '''limit''' — Ограничивает вывод результата "mass": 38.01 }, { "price":* '''limitfrom''' — Задает номер записи результата15, "every": 1, начиная с которой выдавать ответ. По-умолчанию — 0 "mass": 51.01 } ] }, "deliveryPeriodMin":* '''limitcount'''- Задает количество записей результата1, которые нужно вернуть. По-умолчанию — 100. "deliveryPeriodMax":* '''countall''' — YES указывает на необходимость подсчета общего количества найденных совпадений. Это может замедлять выполнение запроса. Если отключено — в ответе не указываeтся totalcount.2 } ]}</source>
''' Описание полей ответа '''
* '''townfrom''' — код ФИАС города-отправителя.
* '''service''' — режим доставки.
* '''tariffs''' — cписок тарифов по городу.
:* '''townregion''' — регион города-получателя.
:* '''towntofias''' — код ФИАС города-получателя.
:* '''towntocode''' — внутренний код города-получателя.
:* '''towntoname''' — наименование города-получателя.
:* '''distance''' — дистанция в км до города от МКАД, если в запросе townfrom — Москва.
:* '''pricedistance''' — сумма за километраж до города от МКАД, если в запросе townfrom — Москва.
:* '''pricesnew''' — ваши настройки тарифов из справочника '''Межгород''' > '''Тарифы по зонам'''.
::* '''before/after''' — контейнеры ДО/ОТ.
:::* '''price''' — цена. Если ответ идет по «before», то в цену также плюсуется сумма pricedistance
:::* '''every''' — за каждые.
:::* '''mass''' — масса.
:* '''prices''' — устаревший элемент, не используется.
:* '''deliveryPeriodMin''' — минимальный срок доставки.
:* '''deliveryPeriodMax''' — максимальный срок доставки.
== Номенклатура приходной накладной =='''Пример ответа справочника пунктов самовывозазапроса номенклатуры приходной накладной:'''
<source lang="xml">
<?xml version="1.0" encoding="UTF-8" ?>
<pvzlist count="2" totalcount="40465"> <pvz> <code>126</code> <clientcode>3</clientcode> <name>Нижний Тагил</name> <parentcode>6</parentcode> <parentname>Интеграция</parentnameitemdoc> <town codeauth extra="1242678" regioncodelogin="66login" regionnamepass="Свердловская областьpass">Нижний Тагил город</townauth> <addresscode>622036, г. Нижний Тагил, ул. Циолковского, д. 1721991</addresscode> <phone>+73435417709, +73435254989</phoneitemdoc> <comment>Новый пункт доставки</commentsource> <worktime>Вс 10:00-16:00, Сб 10:00-16:00, Пн-Пт 10:00-20:00</worktime> <traveldescription>Жилое 5-ти этажное здание, торцом к дороге, второе здание от перекрестка Пархоменко-Циолковского</traveldescription>* '''code''' — внутренний код документа приходной накладной (см. предыдущий запрос). <maxweight>10</maxweight> <acceptcash>YES</acceptcash> <acceptcard>YES</acceptcard>'''Пример ответа движения номенклатуры:''' <acceptfitting>YES</acceptfittingsource lang="xml"> <acceptindividuals>YES</acceptindividuals> <latitude>57?xml version="1.93457</latitude> <longitude>59.95131</longitude> <uid>40606d000" encoding="UTF-9c51-11eb-b2c9-cfd6c1111392</uid8" ?> </pvzitemdoc> <pvz> <code>24521991</code> <clientcodenumber>NTG1318</clientcodenumber> <namedate>На Красноармейской2017-05-26</namedate> <parentcodemessage>6</parentcodemessage> <parentname>Интеграция </parentnameitems> <town item code="1242674259" regioncodequantity="661" regionnamebarcode="Свердловская область200300" article="123555">Нижний Тагил городНастольная игра Дженга</townitem> <address>КРАСНОАРМЕЙСКАЯ, д.79 </addressitems> <phone>+7(3435)379-044</phoneitemdoc> <comment>Возможность примерки отсутствует</commentsource> <worktime>Вс 10:00-16:00, Сб 10:00-16:00, Пн-Пт 10:00-20:00</worktime> <traveldescription>Напротив ТЦ Пирамида</traveldescription>''' Описание полей ответа ''' <maxweight>20</maxweight> <acceptcash>YES</acceptcash> <acceptcard>YES</acceptcard>* '''code''' — внутренний код приходной накладной <acceptfitting>NO</acceptfitting>* '''number''' — номер документа <acceptindividuals>YES</acceptindividuals>* '''date''' — дата документа <latitude>57.93468</latitude> <longitude>60.55476</longitude> <uid>41116853-9c51-11eb-b2c9-cfd6c1451392</uid> </pvz></pvzlist></source>* '''message''' — комментарий
* '''codeitem''' — Код ПВЗ в системе. Используется в запросе [[API#Оформление заказа|оформления заказов]]контейнер товара:* '''clientcode''' — Код ПВЗ используемый компанией-подрядчиком.* '''name''' — Наименование ПВЗ.* '''parentcode''' — Код родительского элемента.* '''parentname''' — Наименование родительского элемента.* '''town''' — Населенный пункт с кодом из [[#Справочник городов|справочника городов]], а также с кодом и наименованием региона.* '''address''' — Адрес ПВЗ.* '''phone''' — Телефоны ПВЗ.* '''comment''' — Дополнительная информация.* '''worktime''' — Режим работы ПВЗ.* '''traveldescription''' — Описание местонахождения ПВЗ или пути к нему.* '''maxweight''' — Максимальный вес, с которым работает ПВЗ.* '''acceptcash''' — Признак приема наличных* '''acceptcard''' — Признак приема банковских карт* '''acceptfitting''' — Наличие примерки* '''latitude''' — Широта* '''longitudecode''' — Долготавнутренний код товара:* '''uidbarcode''' — Уникальный идентификатор ПВЗ в системе Measoftштрихкод товара:* '''countarticle''' — Количество записей в ответеартикул товара:* '''totalcountquantity''' — Общее количество записей, отвечающее параметрам запросапоступившего товара
== Получение фискальных данных заказа Справочник филиалов =='''Пример запроса получения фискальных данныхсписка филиалов:'''
<source lang="xml">
<?xml version="1.0" encoding="UTF-8"?><receiptdatastorelist> <auth extra="8" login="login" pass="pass" ></auth> <ordersjson> YES<order orderno="123456" /json> <client_code>7890<order orderno="890111C" /client_code> </ordersstorelist></receiptdatasource>
* '''auth''' — Атрибут '''extra''' — обязателен, по нему определяется курьерская служба
* '''json''' — Признак вывода ответа в виде JSON YES/NO
* '''client_code''' — Код клиента курьерской службы
'''Пример ответа:'''
<source lang="xml">
<?xml version="1.0" encoding="UTF-8" ?>
<storelist count="2">
<store>
<code>123</code>
<name>ABC</name>
</store>
<store>
<code>456</code>
<name>Филиал 2</name>
</store>
</storelist>
</source>
* '''Пример ответа получения фискальных данных:code''' — Код филиала.* '''name''' — Наименование филиала. <source lang="xml">= Справочник пунктов самовывоза ==Для отображения списка пунктов выдачи (ПВЗ) есть '''готовый JavaScript модуль''': https://home.courierexe.ru/js/measoft_map.js Инструкция по использованию — внутри. Посмотреть пример работы можно [https://home.courierexe.ru/pvz_test.html Здесь] Уникальные запросы списка ПВЗ кешируются на стороне личного кабинета и хранятся до 7 часов утра по московскому времени следующего дня. Например, если уникальный запрос с массой 2 кг был отправлен сегодня в 10 часов, то завтра в 7 утра он сбросится. Если сегодня в 18 часов в этом же запросе вы укажете массу 2 кг, в ответе вернется тот же список ПВЗ. Если передадите массу 3 кг, список может быть другим.
Обратите внимание, что если в выборке количество ПВЗ больше '''10000''' и не указаны параметры '''code''', '''json''' или '''limitcount''', то будет возвращаться ошибка. В этом случае необходимо использовать блок '''limit'''.
'''Пример запроса пунктов самовывоза:'''<source lang="xml"><?xml version="1.0" encoding="UTF-8"?><receipts countpvzlist> <auth extra="8" login="login" pass="1pass"></auth> <receiptcode>1234</code> <ordernoclient_code>1234567890</ordernoclient_code> <fdDatetimecity>2020-06-07 12:14:00Свердловская область</fdDatetimecity> <fdValuetown regioncode="66" country="RU">123Нижний Тагил</fdValuetown> <fdNumaddress>456Щёлковское шоссе</fdNumaddress> <fnSnhouse>78977</fnSnhouse> <kktNumadvanced_search>100Строка поиска</kktNumadvanced_search> <innparentcode>2226</innparentcode> <ofdUrlacceptcash>gate.ofd.ruYES</ofdUrlacceptcash> <fullUrlacceptcard>https:YES</acceptcard> <acceptfitting>YES</check.ofd.ru/123acceptfitting> <maxweight>30</fullUrlmaxweight> <priceacceptindividuals>12345YES</priceacceptindividuals> <lines count="1"respstores> YES<line/respstores> <itemlt>111176457.924737</itemlt> <namelg>Сапоги59.940019</namelg> <qtyrt>157.905682</qtyrt> <pricerg>100059.984669</pricerg> <vatRatejson>20YES</vatRatejson> <governmentCodewith_coords>Z16513LK2YES</governmentCodewith_coords> <itemTypelimit>1 <limitfrom>30</itemTypelimitfrom> <limitcount>2</linelimitcount> <countall>YES</linescountall> </receiptlimit></receiptspvzlist>
</source>
Параметры ответа* '''auth''' — Атрибут '''extra''' — обязателен, по нему определяется курьерская служба, '''login''' и '''pass''' позволяют авторизоваться под клиентом: для отдельного клиента могут быть ограничения по доступности некоторых ПВЗ, и в этом случае они будут учтены.* '''code''' — Внутренний код, целое число.* '''client_code''' — Код клиента курьерской службы.* '''city''' — Регион получателя. Можно указать код региона или полное наименование региона из [[#Справочник регионов|справочника регионов]].* '''town''' — Город получателя.Для тега города '''town''' можно указать код региона в атрибуте '''''regioncode''''' из [[#Справочник регионов|справочника регионов]]. Поиск будет производиться в указанном регионе. Также можно указать страну получателя в атрибуте '''''country''''' в соответствии с [https://ru.wikipedia.org/wiki/ISO_3166-1 стандартом ISO_3166-1], например, «RU», «RUS» или «643» для России.Для формата запроса JSON фильтрация по городу работает только в связке с фильтром по адресу. * '''ordernoaddress''' — Номер заказаФильтр по адресу, работает только в связке с фильтром по городу* '''fdDatetimehouse''' — Дата Фильтр по номеру дома, работает только в связке с фильтрами по адресу и время пробития фискального чекагороду* '''advanced_search''' — Фильтр по коду агента, наименованию, телефону или комментарию* '''fdValueparentcode''' — ФПД (фискальный признак документа)Фильтр по родительскому [[#Справочник филиалов|филиалу]]* '''fdNumacceptcash''' — ФИСКАЛЬНЫЙ ДОКУМЕНТ (фискальный номер чека)Фильтр по приему наличных YES/NO* '''fnSnacceptcard''' — ФН (номер фискального накопителя)Фильтр по приему банковских карт YES/NO* '''kktNumacceptfitting''' — РН (регистрационный номер кассы)Фильтр по наличию примерки YES/NO* '''innmaxweight''' — ИННФильтр по максимальному весу, с которым работает ПВЗ* '''ofdUrlacceptindividuals''' — URL адрес (доменное имя) ОФДФильтр по доступности физическим лицам YES/NO* '''respstores''' - Признак вывода ответственных филиалов при значении YES* '''pricelt''' — Сумма чекаШирота левого верхнего угла* '''fullUrllg''' — URL чека для просмотра онлайнДолгота левого верхнего угла* '''linesrt''' — Позиции чекаШирота правого нижнего угла:* '''itemrg''' — код товараДолгота правого нижнего угла:* '''namejson''' — наименование товараПризнак вывода ответа в виде JSON YES/NO:* '''qtywith_coords''' — количество товараПризнак вывода ПВЗ только с наличием координат YES/NO:* '''pricelimit''' — цена товараОграничивает вывод результата.:* '''governmentCodelimitfrom''' — считанная последовательностьЗадает номер записи результата, которая в дальнейшем преобразуется по алгоритму тега 1162начиная с которой выдавать ответ. По-умолчанию — 0.:* '''vatRatelimitcount''' — НДС товара- Задает количество записей результата, которые нужно вернуть. По-умолчанию — 100.:* '''itemTypecountall''' — тип товара (товар, доставка и тYES указывает на необходимость подсчета общего количества найденных совпадений. Это может замедлять выполнение запроса. дЕсли отключено — в ответе не указываeтся totalcount.)
== Справочник Виды срочности ==
'''Пример запроса видов срочности:'''
<source lang="xml">
<?xml version="1.0" encoding="UTF-8" ?>
<services>
<auth extra="8"/>
</services>
</source>
'''Пример ответа справочника видов срочностипунктов самовывоза:'''
<source lang="xml">
<?xml version="1.0" encoding="UTF-8" ?>
<services pvzlist count="2" totalcount="40465"> <servicepvz> <code>1126</code> <clientcode>3</clientcode> <name>ЭкономНижний Тагил</name> <parentcode>6</serviceparentcode> <parentname>Интеграция<service/parentname> <town code="124267" regioncode="66" regionname="Свердловская область">Нижний Тагил город</town> <address>2622036, г. Нижний Тагил, ул. Циолковского, д. 17</codeaddress> <namephone>Срочно+73435417709, +73435254989</namephone> <comment>Новый пункт доставки</servicecomment> <worktime>Вс 10:00-16:00, Сб 10:00-16:00, Пн-Пт 10:00-20:00</servicesworktime> <traveldescription>Жилое 5-ти этажное здание, торцом к дороге, второе здание от перекрестка Пархоменко-Циолковского</sourcetraveldescription> <maxweight>10</maxweight>== Справочник дополнительных услуг == <acceptcash>YES</acceptcash> <acceptcard>YES</acceptcard> <acceptfitting>YES</acceptfitting>'''Пример запроса дополнительных услуг:''' <acceptindividuals>YES</acceptindividuals> <latitude>57.93457<source lang="xml"/latitude> <?xml version="1longitude>59.0" encoding="UTF95131</longitude> <uid>40606d00-9c51-11eb-b2c9-8"?cfd6c1111392</uid> </pvz> <pvz> <code>245</code> <clientcode>NTG1</clientcode> <name>На Красноармейской</name> <parentcode>6</parentcode> <parentname>Интеграция<advprices/parentname> <auth extratown code="8124267" loginregioncode="login66" passregionname="passСвердловская область" >Нижний Тагил город</town> <address>КРАСНОАРМЕЙСКАЯ, д.79</address> <phone>+7(3435)379-044</phone> <comment>Возможность примерки отсутствует</comment> <worktime>Вс 10:00-16:00, Сб 10:00-16:00, Пн-Пт 10:00-20:00</worktime> <traveldescription>Напротив ТЦ Пирамида</traveldescription> <maxweight>20</maxweight> <acceptcash>YES</acceptcash> <acceptcard>YES</acceptcard> <acceptfitting>NO</acceptfitting> <acceptindividuals>YES</acceptindividuals> <latitude>57.93468</latitude> <longitude>60.55476</longitude> <uid>41116853-9c51-11eb-b2c9-cfd6c1451392</uid> </pvz></advpricespvzlist>
</source>
* '''advpricescode''' — Корневой контейнерКод ПВЗ в системе. Обязательный элементИспользуется в запросе [[API#Оформление заказа|оформления заказов]]* '''clientcode''' — Код ПВЗ используемый компанией-подрядчиком.* '''name''' — Наименование ПВЗ.* '''parentcode''' — Код родительского элемента.* '''parentname''' — Наименование родительского элемента.* '''town''' — Населенный пункт с кодом из [[#Справочник городов|справочника городов]], а также с кодом и наименованием региона.* '''address''' — Адрес ПВЗ.* '''phone''' — Телефоны ПВЗ.* '''comment''' — Дополнительная информация.* '''worktime''' — Режим работы ПВЗ.* '''traveldescription''' — Описание местонахождения ПВЗ или пути к нему.* '''maxweight''' — Максимальный вес, с которым работает ПВЗ.* '''acceptcash''' — Признак приема наличных* '''acceptcard''' — Признак приема банковских карт* '''acceptfitting''' — Наличие примерки* '''latitude''' — Широта* '''longitude''' — Долгота* '''uid''' — Уникальный идентификатор ПВЗ в системе Measoft. Создается автоматически при получении данных о ПВЗ от агентов.* '''count''' — Количество записей в ответе* '''totalcount''' — Общее количество записей, отвечающее параметрам запроса == Получение фискальных данных заказа =='''Пример ответа справочника дополнительных услугзапроса получения фискальных данных:'''
<source lang="xml">
<?xml version="1.0" encoding="UTF-8" ?><advpricesreceiptdata> <advprice> <code>1<auth extra="8" login="login" pass="pass" /code> <name>Этажей в доме</name> <type>int</type> </advprice> <advpriceorders> <code>2 <order orderno="123456" /code> <name>Коэффициент надбавки <order orderno="890111C" /name> <type>float</type> </advprice> <advprice> <code>3</code> <name>Расписаться на упаковке</nameorders> <type>bool</typereceiptdata> </advprice></advprices>
</source>
Параметры:* '''code''' — внутренний код услуги* '''name''' — наименование услуги. Если поле «название в ЛК» в настройках услуги не пусто, то возвращает значение поля «название в ЛК».* '''hine''' — подсказка по доп услуге для пользователя* '''type''' — тип услуги. Может иметь значения:Пример ответа получения фискальных данных:* '''bool''' — для услуг вида «чекбокс», «Да»:* '''float''' — для числа с плавающей точкой<source lang="xml">:* '''int''' — для целого числа
== Расчет стоимости доставки =='''Пример запроса стоимости доставки:'''<source lang="xml"><?xml version="1.0" encoding="UTF-8" ?><calculator> <auth extrareceipts count="81" login="login" pass="pass" /> <orderreceipt> <pricetypeorderno>CUSTOMER123456</pricetypeorderno> <senderfdDatetime> <town>Санкт2020-06-Петербург07 12:14:00</townfdDatetime> <addressfdValue>Петровка 38 офис 35123</addressfdValue> <coords lat="55.680327" lon="37.604456"fdNum>456</coordsfdNum> </senderfnSn> 789<receiver/fnSn> <zipcodekktNum>125480100</zipcodekktNum> <town regioncode="78" country="RU"inn>Санкт-Петербург222</towninn> <addressofdUrl>Петровка 38 офис 35gate.ofd.ru</addressofdUrl> <pvzfullUrl>124<https://pvz> <coords lat="55check.680327" lon="37ofd.604456"><ru/coords> 123</receiverfullUrl> <weightprice>5.112345</weightprice> <servicepayType>2</servicepayType> <paytypelines count="1">CASH </paytypeline> <priceitem>387.51111764</priceitem> <deliverypricename>150Сапоги</deliverypricename> <inshpriceextcode>387.527113415</inshpriceextcode> <qty>1<packages/qty> <package mass="1" quantity="5"price>1000</packageprice> <package mass="2.5" length="10" width="vatRate>20" height="30"></packagevatRate> <governmentCode>Z16513LK2</packagesgovernmentCode> <useriditemType>user1231</useriditemType> <groupid/line>customer </groupidlines> </orderreceipt></calculatorreceipts>
</source>
Параметры ответа:
* '''orderno''' — Номер заказа
* '''fdDatetime''' — Дата и время пробития фискального чека
* '''fdValue''' — ФПД (фискальный признак документа)
* '''fdNum''' — ФИСКАЛЬНЫЙ ДОКУМЕНТ (фискальный номер чека)
* '''fnSn''' — ФН (номер фискального накопителя)
* '''kktNum''' — РН (регистрационный номер кассы)
* '''inn''' — ИНН
* '''ofdUrl''' — URL адрес (доменное имя) ОФД
* '''price''' — Сумма чека
* '''paytype''' — Тип оплаты чека. Принимает значения:
:* CASH — Наличными (по-умолчанию)
:* CARD — Безналичным способом
* '''fullUrl''' — URL чека для просмотра онлайн
* '''lines''' — Позиции чека
:* '''item''' — код товара
:* '''name''' — наименование товара
:* '''extcode''' — код товара во внешних системах
:* '''qty''' — количество товара
:* '''price''' — цена товара
:* '''governmentCode''' — считанная последовательность, которая в дальнейшем преобразуется по алгоритму тега 1162
:* '''vatRate''' — НДС товара
:* '''itemType''' — тип товара (товар, доставка и т. д.)
Параметры== Справочник Виды срочности =='''Пример запроса видов срочности:'''Структура данных и заполнение полей аналогичны и совместимы с [[#Оформление заказа]]<source lang="xml"><?xml version="1.0" encoding="UTF-8" ?><services><auth extra="8"/></services></source>
Дополнительные поля:* '''pricetype''' — тип требуемой цены. Возможные значения: «CUSTOMER» (по-умолчанию) — [[Личный кабинет клиента#Цена доставки для получателя|цена для конечного получателя]], «CLIENT» — цена курьерской службы для клиента.* '''userid''' — Идентификатор пользователя, строковый или числовой тип. Виртуальное поле. Необязательное. Данное поле используется совместно с настройками «Цена доставки для получателя», определяя приоритет правила. Можно использовать в различных CMS/CRM системах, настраивая цены для определенного покупателя.* '''groupid''' — Идентификатор группы пользователя, строковый или числовой тип. Виртуальное поле. Необязательное. Данное поле используется совместно с настройками «Цена доставки для получателя», определяя приоритет правила. Можно использовать в различных CMS/CRM системах, настраивая цены для определенной группы покупателей. Суммы НП и ОЦ, а также тип оплаты CARD имеют значение при настроенных в тарифе на вкладке Прочее долях (в процентах) от данных сумм. В авторизации можно опустить параметры login и pass, тогда расчет будет производиться по стандартному тарифу курьерской службы, без учета возможных отличий для конкретного клиента.<br>Объемный вес будет учитываться только при условии указания всех габаритов: длины, ширины и высоты.<br>В полях город-отправитель и город-получатель можно указывать название города (не рекомендуется!), либо код города из нашего справочника, либо 13-ти значный код КЛАДР, либо 36-ти значный код адресной системы ФИАС (AOID).  '''Пример ответа стоимости доставкисправочника видов срочности:'''
<source lang="xml">
<?xml version="1.0" encoding="UTF-8"?><calculator> <calc> <townfrom codeservices count="12">Москва город</townfrom> <townto code="56603">Иркутск город</townto> <mass>3.7</mass> <service name="Экспресс">1</service> <zone>2</zone> <price>1113</price> <mindeliverydayscode>1</mindeliverydayscode> <maxdeliverydaysname>3Эконом</maxdeliverydaysname> <mindeliverydate>2020-05-13 </mindeliverydateservice> <deliverypriceservice> <advprice code="1" price="1000">База</advprice> <advprice code="4" price="100">Процент от суммы руб2</advprice> <advprice code="5" price="63">Процент от объявленной стоимости</advprice> <advprice code="6" price="-50"name>Скидка при доставкеСрочно</advprice> </deliverypricename> </calcservice></calculatorservices>
</source>
Параметры:* '''townfrom''' — Город-отправитель так, как система его распознала и привязала к справочнику. Атрибут '''code''' — код из справочника городов системы.* '''townto''' — Город-получатель так, как система его распознала и привязала к справочнику. Атрибут '''code''' — код из справочника городов системы.* '''mass''' — Масса в килограммах* '''service''' — Режим доставки — число, указывающее на запись в справочнике видов срочности (см описание на этой странице).* '''zone''' — номер тарифной зоны, по которой рассчиталась стоимость. В зависимости от зоны выбирается тарифная сетка. Так же к цене могут применяться повышающие или понижающие коэффициенты при доставке не из/в региональный центр.* '''price''' — рассчитанная стоимость доставки в валюте прайс-листа курьерской службы. Рекомендуется к использованию в отличие от одноименного атрибута родительского контейнера.* '''maxdeliverydays''' — максимальный срок доставки в рабочих днях.* '''mindeliverydate''' — минимальная дата доставки в учетом выходных дней.* '''deliveryprice''' — Данные по составляющим ценам доставки '''''Обратите внимание:''''' В реальном ответе сервера в теге calc присутствует атрибут «price». Он оставлен для обратной совместимости, не используйте его. Пользуйтесь вложенным тегом price. == Получение информации о клиенте Справочник дополнительных услуг =='''Пример запроса получения информации о клиентедополнительных услуг:'''<source lang="xml"><?xml version="1.0" encoding="UTF-8" ?><clientadvprices> <auth extra="8" login="login" pass="pass" /> </clientadvprices>
</source>
'''clientadvprices''' — Корневой контейнер. Обязательный элемент.* '''auth''' — Авторизация. Обязательный элемент. '''Пример ответа на запрос получения информации о клиенте:'''<source lang="xml"><?xml version="1.0" encoding="UTF-8" ?><client> <code>1082</code></client></source>
* '''code''' — Код клиента
== Список актов передачи денег =='''Пример запроса списка актов передачи денегответа справочника дополнительных услуг:'''
<source lang="xml">
<?xml version="1.0" encoding="UTF-8" ?>
<smalistadvprices> <advprice> <code>1</code> <name>Этажей в доме</name> <type>int</type> <auth extra="8" login="login" pass="pass" /advprice> <datefromadvprice>2016-02-10 <code>2</datefromcode> <name>Коэффициент надбавки<dateto/name>2016-03-10 <type>float</type> </advprice> <advprice> <code>3</code> <name>Расписаться на упаковке</name> <type>bool</type> </datetoadvprice></smalistadvprices>
</source>
Параметры:* '''smalistcode''' — Корневой контейнер. Обязательный элемент.внутренний код услуги* '''authname''' — Авторизациянаименование услуги. Обязательный элементЕсли поле «название в ЛК» в настройках услуги не пусто, то возвращает значение поля «название в ЛК».* '''datefromhine''' — Дата «с». Необязательный элемент.подсказка по доп услуге для пользователя* '''datetotype''' — Дата «по». Необязательный элементтип услуги.Может иметь значения:Если интервал дат не указан:* '''bool''' — для услуг вида «чекбокс», то возвращаются акты передачи денег за последний месяц.«Да»:* '''float''' — для числа с плавающей точкой:* '''int''' — для целого числа
== Расчет стоимости доставки =='''Пример ответа на запрос списка актов передачи денегзапроса стоимости доставки:'''
<source lang="xml">
<?xml version="1.0" encoding="UTF-8"?><smalist countcalculator> <auth extra="8" login="1login" pass="pass"/> <order> <smapricetype>CUSTOMER</pricetype> <codesender>6278 <town>Санкт-Петербург</codetown> <numberaddress>3992Петровка 38 офис 35</numberaddress> <actdatecoords lat="55.680327" lon="37.604456"></coords>2016-02-12 </actdatesender> <receiver> <datepayzipcode>125480</datepayzipcode> <datetotown regioncode="78" country="RU">2016-02Санкт-12Петербург</datetotown> <promiseddatepayaddress>Петровка 38 офис 35</promiseddatepayaddress> <pricepvz>124</pvz>637 <coords lat="55.680327" lon="37.00604456"></coords> </pricereceiver> <pricecorrweight>1135.001</pricecorrweight> <service>2<rur/service>13430 <paytype>CASH</paytype> <price>387.005</rurprice> <pricekurdeliveryprice>570.00150</pricekurdeliveryprice> <priceaginshprice>67387.005</priceaginshprice> <paynopackages> <package mass="1" quantity="5">42423</paynopackage> <package mass="2.5" length="10" width="20" height="30"><paytype/package>1 </paytypepackages> <paytypenameuserid>Безналuser123</paytypenameuserid> <signedcopyreceivedgroupid>NOcustomer</signedcopyreceivedgroupid> </smaorder></smalistcalculator>
</source>
* '''code''' — Код акта
* '''number''' — Номер акта в системе
* '''actdate''' — Дата акта
* '''datepay''' — Дата оплаты по акту
* '''dateto''' — Дата конечного периода для формирования АПД
* '''promiseddatepay''' — Плановая дата оплаты
* '''price''' — Стоимость услуг
* '''pricecorr''' — Сумма корректировки
* '''rur''' — Сумма заказа
* '''pricekur''' — Стоимость курьерской доставки
* '''priceag''' — Агентское вознаграждение
* '''payno''' — Номер платежного поручения
* '''paytype''' — Тип оплаты: 1 — безнал, 2 — наличными курьером, 3 — наличными в офисе, 4 — перевод на карту
* '''paytypename''' — Строковое представление типа оплаты
* '''signedcopyreceived''' — Признак факта возврата акта YES/NO
== Детализация актов передачи денег ==Параметры:Структура данных и заполнение полей аналогичны и совместимы с [[#Оформление заказа]]. Дополнительные поля:* '''pricetype'''Пример запроса детализации актов передачи денег — тип требуемой цены. Возможные значения:«CUSTOMER» (по-умолчанию) — [[Личный кабинет клиента#Цена доставки для получателя|цена для конечного получателя]], «CLIENT» — цена курьерской службы для клиента.* '''userid''' — Идентификатор пользователя, строковый или числовой тип. Виртуальное поле. Необязательное. Данное поле используется совместно с настройками «Цена доставки для получателя», определяя приоритет правила. Можно использовать в различных CMS/CRM системах, настраивая цены для определенного покупателя.* '''groupid''' — Идентификатор группы пользователя, строковый или числовой тип. Виртуальное поле. Необязательное. Данное поле используется совместно с настройками «Цена доставки для получателя», определяя приоритет правила. Можно использовать в различных CMS/CRM системах, настраивая цены для определенной группы покупателей.<source lang="xml"><?xml version="1Суммы НП и ОЦ, а также тип оплаты CARD имеют значение при настроенных в тарифе на вкладке Прочее долях (в процентах) от данных сумм.0" encoding="UTF-8" ?><smadetail> <auth extra="8" login="В авторизации можно опустить параметры login" и pass="pass" /> <code>6278, тогда расчет будет производиться по стандартному тарифу курьерской службы, без учета возможных отличий для конкретного клиента.</codebr>Объемный вес будет учитываться только при условии указания всех габаритов: длины, ширины и высоты.</smadetailbr></source>В полях город-отправитель и город-получатель можно указывать название города (не рекомендуется!), либо код города из нашего справочника, либо 13-ти значный код КЛАДР, либо 36-ти значный код адресной системы ФИАС (AOID).
'''smadetail''' — Корневой контейнер. Обязательный элемент.
* '''auth''' — Авторизация. Обязательный элемент.
* '''code''' — Код акта передачи денег (см. запрос списка АПД). Обязательный элемент.
'''Пример ответа на запрос детализации актов передачи денегстоимости доставки:'''
<source lang="xml">
<?xml version="1.0" encoding="UTF-8"?>
<calculator> <calc> <townfrom code="1">Москва город</townfrom> <townto code="56603">Иркутск город</townto> <mass>3.7</mass> <service name="Экспресс">1</service> <zone>2</zone> <price>1113</price> <mindeliverydays>1</mindeliverydays> <maxdeliverydays>3</maxdeliverydays> <mindeliverydate>2020-05-13</mindeliverydate> <intervals> <workdays> <interval>10:00-16:00</interval> <interval>16:00-22:00</interval> </workdays> <holidays> <interval>12:00-16:00</interval> </holidays> </intervals> <deliveryprice> <advprice code="1" price="1000">База</advprice> <advprice code="4" price="100">Процент от суммы руб</advprice> <advprice code="5" price="63">Процент от объявленной стоимости</advprice> <advprice code="6" price="-50">Скидка при доставке</advprice> </deliveryprice> </calc></calculator></source> Параметры:* '''townfrom''' — Город-отправитель так, как система его распознала и привязала к справочнику. Атрибут '''code''' — код из справочника городов системы.* '''townto''' — Город-получатель так, как система его распознала и привязала к справочнику. Атрибут '''code''' — код из справочника городов системы.* '''mass''' — Масса в килограммах* '''service''' — Режим доставки — число, указывающее на запись в справочнике видов срочности (см описание на этой странице).* '''zone''' — номер тарифной зоны, по которой рассчиталась стоимость. В зависимости от зоны выбирается тарифная сетка. Так же к цене могут применяться повышающие или понижающие коэффициенты при доставке не из/в региональный центр.* '''price''' — рассчитанная стоимость доставки в валюте прайс-листа курьерской службы. Рекомендуется к использованию в отличие от одноименного атрибута родительского контейнера.* '''maxdeliverydays''' — максимальный срок доставки в рабочих днях.* '''mindeliverydate''' — минимальная дата доставки в учетом выходных дней.* '''intervals''' — список интервалов доставки для соответствующей зоны и режима срочности.* '''deliveryprice''' — Данные по составляющим ценам доставки '''''Обратите внимание:''''' В реальном ответе сервера в теге calc присутствует атрибут «price». Он оставлен для обратной совместимости, не используйте его. Пользуйтесь вложенным тегом price. === Коды и описание ошибок ==={|class=wikitable!Код ошибки!Английское описание!Русское описание!Примечание|-|15||tarif not found||Тариф не найден||Ошибка получения тарифов: для клиента не указан тариф|-|19||field [town to] cannot be empty||Поле [город получателя] не может быть пустым||Необходимо указать город получателя или ПВЗ|-|20||field [weight] is incorrect||Некорректное значение [масса]||Значение массы некорректное, например, не является числом. Его необходимо исправить|-|21||town from not found||Город отправителя не найден||Системе не удалось найти указанный населенный пункт отправителя|-|22||town to not found||Город получателя не найден||Системе не удалось найти указанный населенный пункт отправителя|-|23||field [weight] cannot be empty||Поле [масса] не может быть пустым||Необходимо указать значение массы отправления, поле [weight]|-|36||subtown not found||Город в регионе не найден||Не настроено направление доставки до города в регионе: не добавлен регион или указанный город отсутствует в списке региона|-|37||zoneprice not found||Тариф зоны не найден||Отсутствуют зоны тарификации или для них не указаны стоимости|-|38||tarif not found - 1||Тариф не найден 1||Результаты расчета отсутствуют: общая ошибка в случае, если других ошибок нет, но результат пустой |-|39||tarif not found - 2||Тариф не найден 2||Ошибка получения тарифов: для клиента не настроен тариф или тарификация от количества заказов|-|82||field [weight] exceeded limit PVZ||Значение [weight] превышает ограничение ПВЗ||Указанное значение массы больше, чем максимально допустимое для указанного ПВЗ|-|83||attribute [paytype] not allowed PVZ||Значение [paytype] не допустимо для ПВЗ||В ПВЗ не допустим указанный тип оплаты|-|} == Получение информации о клиенте =='''Пример запроса получения информации о клиенте:'''<source lang="xml"><?xml version="1.0" encoding="UTF-8" ?><client> <auth extra="8" login="login" pass="pass" /> </client></source> '''client''' — Корневой контейнер. Обязательный элемент.* '''auth''' — Авторизация. Обязательный элемент. '''Пример ответа на запрос получения информации о клиенте:'''<source lang="xml"><?xml version="1.0" encoding="UTF-8" ?><client> <code>1082</code></client></source> * '''code''' — Код клиента == Список актов передачи денег =='''Пример запроса списка актов передачи денег:'''<source lang="xml"><?xml version="1.0" encoding="UTF-8" ?><smalist> <auth extra="8" login="login" pass="pass" /> <datefrom>2016-02-10</datefrom> <dateto>2016-03-10</dateto></smalist></source> '''smalist''' — Корневой контейнер. Обязательный элемент.* '''auth''' — Авторизация. Обязательный элемент.* '''datefrom''' — Дата «с». Необязательный элемент.* '''dateto''' — Дата «по». Необязательный элемент.Если интервал дат не указан, то возвращаются акты передачи денег за последний месяц. '''Пример ответа на запрос списка актов передачи денег:'''<source lang="xml"><?xml version="1.0" encoding="UTF-8"?><smalist count="1"> <sma> <code>6278</code> <number>3992</number> <actdate>2016-02-12</actdate> <datepay></datepay> <dateto>2016-02-12</dateto> <promiseddatepay></promiseddatepay> <price>637.00</price> <pricecorr>113.00</pricecorr> <rur>13430.00</rur> <pricekur>570.00</pricekur> <priceag>67.00</priceag> <payno>42423</payno> <paytype>1</paytype> <paytypename>Безнал</paytypename> <signedcopyreceived>NO</signedcopyreceived> </sma></smalist></source> * '''code''' — Код акта* '''number''' — Номер акта в системе* '''actdate''' — Дата акта* '''datepay''' — Дата оплаты по акту* '''dateto''' — Дата конечного периода для формирования АПД* '''promiseddatepay''' — Плановая дата оплаты* '''price''' — Стоимость услуг* '''pricecorr''' — Сумма корректировки* '''rur''' — Сумма заказа* '''pricekur''' — Стоимость курьерской доставки* '''priceag''' — Агентское вознаграждение* '''payno''' — Номер платежного поручения* '''paytype''' — Тип оплаты: 1 — безнал, 2 — наличными курьером, 3 — наличными в офисе, 4 — перевод на карту* '''paytypename''' — Строковое представление типа оплаты* '''signedcopyreceived''' — Признак факта возврата акта YES/NO == Детализация актов передачи денег =='''Пример запроса детализации актов передачи денег:'''<source lang="xml"><?xml version="1.0" encoding="UTF-8" ?><smadetail> <auth extra="8" login="login" pass="pass" /> <code>6278</code></smadetail></source> '''smadetail''' — Корневой контейнер. Обязательный элемент.* '''auth''' — Авторизация. Обязательный элемент.* '''code''' — Код акта передачи денег (см. запрос списка АПД). Обязательный элемент. '''Пример ответа на запрос детализации актов передачи денег:'''<source lang="xml"><?xml version="1.0" encoding="UTF-8"?><smadetail count="2"> <specialsma> <code>42494</code> <ordercode>14424</ordercode> <orderno>11111</orderno> <orderdate>2018-01-01</orderdate> <delivereddate>2018-10-01</delivereddate> <company>Компания</company> <price>314.00</price> <rur>8800.00</rur> <inshprice>314.00</inshprice> <pricekur>270.00</pricekur> <priceag>44.00</priceag> <pricecalc>8486.00</pricecalc> <paytype>2</paytype> <paytypename>наличными курьером</paytypename> <weight>0.400</weight> <distance>0.0</distance> <status>Доставлено</status> </specialsma></smadetail>
</source>
* '''code''' — Код записи.
* '''ordercode''' — Код заказа.* '''orderno''' — Шифр заказа.* '''orderdate''' — Дата заказа.* '''delivereddate''' — Дата доставки.* '''company''' — Получатель.* '''price''' — Стоимость услуг.* '''rur''' — Сумма заказа.* '''inshprice''' — Стоимость заказа.* '''pricekur''' — Стоимость курьерской доставки.* '''priceag''' — Агентское вознаграждение.* '''pricecalc''' — Сумма для передачи агенту.* '''paytype''' — Тип оплаты: 1 — безнал, 2 — наличными курьером, 3 — наличными в офисе, 4 — перевод на карту.* '''paytypename''' — Строковое представление типа оплаты* '''weight''' — Вес заказа.* '''distance''' — Дистанция по заказу* '''status''' — Статус заказа. == Установка статуса согласования заказа ==Для возможности клиентом установки статуса согласования заказа необходимо включить переменную [[Личный кабинет курьерской службы#Заказы|Разрешить менять статус согласования]] '''Пример запроса установки статуса согласования заказа'''<source lang="xml"><?xml version="1.0" encoding="UTF-8"?><setapprovalstatus> <auth extra="8" login="login" pass="pass" /> <order ordercode="1234561"> <confirmstate>1</confirmstate> <message>Сообщение статуса</message> </order> <order ordercode="1234562"> <confirmstate>2</confirmstate> <message>Согласовано</message> </order> <order ordercode="1234563"> <confirmstate>3</confirmstate> <message>Не согласовано</message> </order></setapprovalstatus></source> * '''order''' — Контейнер заказа. Обязателен как минимум один элемент.:* '''ordercode''' — Внутренний код заказа.* '''confirmstate''' — Код статуса заказа. Все статусы с кодами можно получить запросом [[#Получение списка статусов согласования заказа|Получение списка статусов согласования заказа]]* '''message''' — Дополнительный комментарий, который отобразится в поле ''Инфо о доставке''. == Получение списка статусов согласования заказа =='''Пример запроса списка статусов согласования заказа'''<source lang="xml"><?xml version="1.0" encoding="UTF-8"?><approvalstatuses> <auth extra="8" login="login" pass="pass" /></approvalstatuses></source> '''Пример ответа списка статусов согласования заказа'''<source lang="xml"><?xml version="1.0" encoding="UTF-8" ?><approvalstatuses count="6"> <status> <code>1</code> <name>Неизвестно</name> </status> <status> <code>2</code> <name>Согласование запрошено</name> </status> <status> <code>3</code> <name>Доставка полностью согласована</name> </status> <status> <code>4</code> <name>Согласовано с изменением времени</name> </status> <status> <code>5</code> <name>Перенос на другую дату</name> </status> <status> <code>6</code> <name>Отказ</name> </status></approvalstatuses></source> == Генерация коротких ссылок ==В некоторых случаях, например, при использовании в СМС, может потребоваться использование коротких ссылок на ЛК.Для этого, необходимо отправить запрос с полной ссылкой, в ответ на который придёт хэш-код для ссылки. '''Пример запроса генерации коротких ссылок:'''<source lang="xml"><?xml version="1.0" encoding="UTF-8" ?><shortlink> <link short="0"> https://home.courierexe.ru/8/site/orders </link></shortlink></source> '''shortlink''' — Корневой контейнер. Обязательный элемент.* '''link''' — Полная ссылка, для которой необходимо получить код. Обязательный элемент. Если атрибут '''short''' равен 1, то ответ не будет содержать XML, а только хэш-код. '''Пример ответа на запрос генерации коротких ссылок:'''<source lang="xml"><?xml version="1.0" encoding="UTF-8"?><shortlink> <hash>35AF350C</hash></shortlink></source> * '''hash''' — Хэш-код ссылки. Далее, можно использовать ссылку на ЛК: <nowiki>https://home.courierexe.ru/35AF350C или curie.ru/35AF350C</nowiki>  '''Примечание!''' Сервис коротких ссылок работает только для ресурсов компании MeaSoft. == Проверка надежности покупателя ==Проверка надежности работает только для тарифа «Максимум» личного кабинета. <source lang="xml"><?xml version="1.0" encoding="UTF-8" ?><mcheck> <auth extra="8" login="login" pass="pass" /> <phones> <phone>89161147992</phone> </phones></mcheck></source> Ответ: <source lang="xml"><?xml version="1.0" encoding="UTF-8" ?><mcheck> <phones> <phone rate="90">89161147992</phone> </phones></mcheck></source>  == Размещение страниц на своем сайте (iframe) == В некоторых случаях имеет смысл разметить те или иные страницы на своем сайте. Например, чтобы клиенты могли рассчитать стоимость доставки не переходя по внешней ссылке, а там же, на сайте, калькулятор можно разместить прямо на странице такого сайта посредством так называемого фрейма — '''iframe'''. [https://ya.ru/search/?text=iframe Фрейм] — контейнер внутри обычной страницы, который позволяет загружать сторонние страницы. Пример загрузки калькулятора: <source lang="html"><iframe id="frame" src="https://home.courierexe.ru/8/calculator"> Здесь должен отобразиться калькулятор</iframe></source> Для удобства пользователей вашего сайта можно указать язык интерфейса (который переключается непосредственно на сайте) параметром '''lang''': <source lang="html"><iframe id="frame" src="https://home.courierexe.ru/8/calculator?lang=2"> Здесь должен отобразиться калькулятор</iframe></source>  <div style="color: #a94442; background-color: #f2dede; border: 1px solid #ebccd1; padding: 3px 10px 10px;">'''Обратите внимание!'''# При использовании iFrame могут не работать некоторые функции, например, подписка на push-уведомления на странице трекинга или отслеживания.# Если язык не указать, то на страницах калькулятора и трекинга отображается свой переключатель языка. Если язык указан, то переключатель не отображается. Поддерживаемые языки и их коды::'''1''' — русский:'''2''' — английский:'''4''' — узбекский</div> == Оформление манифеста == '''Пример запроса на создание манифеста:'''<source lang="xml"><?xml version="1.0" encoding="UTF-8" ?><manifest> <auth extra="8" login="login" pass="pass" /> <store_from>1</store_from> <store_to>2</store_to> <trn_code>3</trn_code> <sentdate>2024-11-07</sentdate> <places> <place> <number>1</number> <seal>7890AABBB</seal> </place> <place> <number>2</number> <seal>123456ABC</seal> </place> </places> <addresses> <address> <code>12345</code> <place>1</place> </address> <address> <code>67890</code> <place>2</place> </address> </addresses></manifest></source>  '''manifest''' - Корневой контейнер. Обязательный элемент.*'''auth''' - Авторизация. Обязательный элемент.*'''store_from''' - код филиала отправителя. Обязательный элемент.*'''store_to''' - код филиала получателя. Обязательный элемент.*'''trn_code''' - код перевозчика. Обязательный элемент.*'''sentdate''' - дата отправки манифеста. Не обязательный элемент.*'''addresses''' - корневой элемент для списка заказов.*:'''address''' - корневой элемент для заказа.*::'''code''' - наш внутренний номер заказа. Обязательный элемент.*::'''place''' - номер места заказа. Обязательный элемент, если переданы места.*'''places''' - корневой элемент для списка мест.*::'''place''' - корневой элемент для места.*::'''number''' - номер места. Обязательный элемент.*::'''seal''' - номер пломбы. Необязательный элемент.  '''Пример успешного ответа'''<source lang="xml"><?xml version="1.0" encoding="UTF-8"?><manifest> <result>OK</result></manifest></source>  '''Пример ответа с ошибкой'''
<source lang="xml">
<?xml version="1.0" encoding="UTF-8"?>
<shortlinkmanifest> <hash>35AF350C</hash></shortlink></source> * '''hash''' — Хэш-код ссылки. Далее, можно использовать ссылку на ЛК: <nowiki>https://home.courierexe.ru/35AF350C или curie.ru/35AF350C</nowiki>  '''Примечание!''' Сервис коротких ссылок работает только для ресурсов компании MeaSoft. == Проверка надежности покупателя ==Проверка надежности работает только для тарифа «Максимум» личного кабинета. <source lang="xml"><?xml version="1.0" encodingresult error="UTF-8Текст ошибки" ?><mcheck> <auth extra="8" login="login" pass="pass" /> <phones> <phone>89161147992</phone> ERROR</phonesresult></mcheckmanifest>
</source>
Ответ:'''manifest''' - Корневой контейнер. Обязательный элемент.*'''result ''' - Результат. Принимает значения OK или ERROR.<source lang="xml"><?xml version="1*'''error''' - атрибут с текстом ошибки, если она была.0" encoding="UTF-8" ?><mcheck> <phones> <phone rate="90">89161147992</phone> </phones></mcheck></source>
50
правок

Навигация