Формат запроса к серверу

Для генерации накладной необходимо обращаться по адресу метода http://emsprint.ru/Invoice/generate посредством HTTP запроса методом POST.

Запрос должен содержать POST-параметр params, содержащий, в свою очередь, JSON объект параметров, описание которых приведено в таблице ниже.

Имя переменной запросаОписаниеОбязательноОграничение на значение
Авторизация
AUTH_LOGIN Логин в системе EMS Print да
AUTH_KEY Ключ авторизации в API да
Поля накладной
SENDER_ORGANIZATION Организация отправителя нет
SENDER_PERSON Ф.И.О. отправителя да
SENDER_PHONE Номер телефона отправителя да
SENDER_STREET Улица отправителя да
SENDER_HOUSE Номер дома отправителя да
SENDER_BUILDING Корпус отправителя нет
SENDER_FLOOR Этаж отправителя нет
SENDER_FLAT Квартира отправителя нет
SENDER_INTERCOM Домофон отправителя нет
SENDER_CITY Город отправителя да
SENDER_REGION Регион отправителя нет
SENDER_ZIP Индекс отправителя да /^[1-9][0-9]{5}$/
SENDER_EMS_CONTRACT_NUM Номер договора с EMS нет /^[1-9][0-9]{6}(Ф|Р)$/
RECIPIENT_ORGANIZATION Организация получателя нет
RECIPIENT_PERSON Ф.И.О. получателя да
RECIPIENT_PHONE Номер телефона получателя да
RECIPIENT_STREET Улица получателя да
RECIPIENT_HOUSE Номер дома получателя да
RECIPIENT_BUILDING Корпус получателя нет
RECIPIENT_FLOOR Этаж получателя нет
RECIPIENT_FLAT Квартира получателя нет
RECIPIENT_INTERCOM Домофон получателя нет
RECIPIENT_CITY Город получателя да
RECIPIENT_REGION Регион получателя нет
RECIPIENT_ZIP Индекс получателя да /^[1-9][0-9]{5}$/
PARCEL_DESCRIPTION Описание содержимого посылки нет
PARCEL_PRICE Объявленная стоимость нет
PARCEL_CASH_ON_DELIVERY Наложенный платеж нет
Дополнительные поля для формы наложенного платежа
SENDER_INN ИНН получателя наложенного платежа нет /^[1-9][0-9]{9,11}$/
SENDER_BANK_BIK БИК банка-получателя платежа нет /^[0-9]{9}$/
SENDER_BANK_NAME Наименование банка нет
SENDER_BANK_COR_ACCOUNT Корреспондентский счет банка-получателя платежа нет /^[1-9][0-9]{19}$/
SENDER_BANK_ACCOUNT Номер счета в банке-получателе платежа нет /^[1-9][0-9]{19}$/
Другие
ORDER_ID Идентификатор заказа в системе клиента нет
GENERATE_RECEIPT Генерировать форму наложенного платежа нет Y|N
GENERATE_CROPPED Обрезать и компоновать листы накладных по 2 на листе A4 нет Y|N
INVOICE_RECEIPT_MERGE Объеденить накладную и форму наложенного платежа в один файл нет Y|N
SAVE_FIELDS Сохранять поля запроса для использования в дальнейшем нет Y|N

Формат ответа сервера

Сервер отвечает на запрос в формате объекта JSON, содержащего в случае успешного формирования накладной описание накладной, в случае возникновения ошибки - описание ошибки.

Пример ответа с описанием накладной

{
    'status': 'ok',
    'data': {
        'pdf_location': 'http://emsprint.ru/doc/pdf/sample_invoice.pdf',
        'tracking_number': 'EA701161198RU',
        'receipt_location': 'http://emsprint.ru/doc/pdf/sample_receipt.pdf',
        'concat_location': 'http://emsprint.ru/doc/pdf/sample_concat.pdf',
    }
}

Пример ответа с описанием ошибки

{
    'status': 'error',
    'error': {
        'code': 'SAMPLE_ERROR',
        'text': 'Sample error meaningful description.'
    }
}