Значение | Описание |
RUB | Рубли |
PaymentType
Тип оплаты, тип значения - строка
Значение | Описание |
Cash | Наличными через кассу |
Terminal | Через терминал банка |
CashAndCard | Наличными или банковскими картами через кассу |
ServiceType
Тип предоставляемой услуги, тип значения - строка
Значение | Описание | Комментарий |
DIRECT_DELIVERY | Доставка и выдача в ПВЗ | Указывается при создании/обновлении заказа, используется в услугах заказа. Склады для забора и возврата указываются обязательно. |
EXPRESS_DELIVERY | Доставка до конечного ПВЗ средствами клиента | Указывается при создании/обновлении заказа, используется в услугах заказа. Склады для забора и возврата указывать не нужно. |
HOME_DELIVERY | Курьерская доставка | Недоступен в текущей версии |
CUSTOMER_RETURN_RECEPTION_IN_PARCEL_SHOP | Клиентский возврат из ПВЗ | Используется в услугах ПВЗ |
HOME_RETURN | Возврат с курьерской доставки | Недоступен в текущей версии |
HAND_OUT | Выдача в ПВЗ | Используется в услугах ПВЗ |
HAND_OUT_IN_PARCEL_AUTOMATE | Выдача в почтомате | Используется в услугах ПВЗ |
PARCEL_SHOP_STORAGE | Хранение в ПВЗ | Используется в услугах ПВЗ |
PARCEL_AUTOMATE_STORAGE | Хранение в почтомате | Используется в услугах ПВЗ |
Модуль API генерации наклеек
Получение файла с наклейками
Чтобы корректно получить файл с наклейками вам необходимо выполнить следующие шаги:
Создать посылки; Отправить посылки на доставку. Вызвать метод генерации через текущий модуль и получить массив байтов PDF файлаЗа получение файла отвечает следующий метод GetPdfStickerBytes – получение массива байтов PDF-файла по переданным штрих-кодам посылок.
Важно! Сервис генерирует посылки, которые существуют в системе и уже отправлены на доставку.
Метод GetPdfStickerBytes
Описание
Данный метод предназначен для получения массива байтов PDF-файла сгенерированных наклеек. Наклейки будут генерироваться только по существующим и отправленным на доставку посылкам.
Входные параметры
Параметр | Описание | Тип | Обязательный | Пример |
parcelBarCodes | Массив штрих-кодов посылок. Максимум 1000 штрих-кодов. | String[1..1000] | Да | 20000000000001 |
sheetSize | Формат печати | SheetSize | Да | A4Default (SOAP) или 0 (REST) |
Выходные параметры
Параметр | Описание | Тип | Пример |
GetPdfStickerBytesResult | Массив байтов PDF-файла с наклейками | byte[] | строка Base64 в SOAP: JVBERi0xLjQKJeLjz9MKMSAwIG9iago8PC9UeXBlL1hPYmplY3QvU3VidHlwZS9 ... Массив байтов в REST |
Объектная модель
SheetSize
Тип формата печати, значение - строка
Значение | Сопоставляемое числовое значение | Описание |
A4Default | 0 | Стандартный A4 |
A4TearStickers | 1 | A4 с отрывными наклейками |
Zebra | 2 | Формат «Зебра» |
Обработка ошибок
В процессе работы с веб-сервисами возможно возникновение ошибок, по техническим причинам или причинам, продиктованных бизнес правилами. Коды ошибок, а также причины и действия по их устранению, описаны в следующем разделе.
Коды ошибок
Код ошибки | Системное наименование | Описание | Причина |
InternalServiceFault | Внутренняя ошибка сервера | Возникает при неизвестных или неверных действиях процессов SOAP - сервиса | |
- | DeserializationFailed | Внутренняя ошибка десериализации на сервере | Возникает при попытке передать запрос неверного формата, сервер не может десериализовать объект. |
-1 | CommonFail | Ошибочный результат | Возникает при неизвестных ошибках, ошибках общего характера или внутренних ошибок сервера |
0 | Success | Успешный результат | Данный код возвращается в параметре ErrorCode в случае успешного результата обработки запроса. Код не является ошибкой. |
5 | UpdateParcelInfo | Невозможно обновить информацию о посылке [{parcelBarcode}], так как она уже была передана на доставку | При попытке обновить информацию о посылке, которая ранее уже была передана на доставку. |
6 | DeleteParcelInfo | Невозможно удалить информацию о посылке [{parcelBarcode}], так как она уже была передана на доставку | При попытке удалить информацию о посылке, которая ранее уже была передана на доставку. |
8 | BuIsNotFound | Код бизнес-юнита [{BusinessUnitCode}] не найден | Если код бизнес-юнита не найден в системе |
11 | NoSufficientRights | У текущего пользователя недостаточно прав. | Возникает при отправке посылок на доставку, в этом случае нужно связаться с техподдержкой Hermes Russia, см. раздел Контакты |
12 | PreaviceExists | Информация о посылке уже существует | Возникает при попытке завести информацию о уже существующей посылке. Проверка ведется по штрих-коду посылки ParcelBarcode или [по коду ПВЗ BusinessUnitCode и по клиентскому номеру посылки ClientParcelNumber] |
13 | MaxParcelCountPerRequest | Достигнут предел в [{MaxParcelCountPerRequest}] посылок за 1 запрос, пожалуйста, измените запрос или отправляйте данные частями | Достигнут предел в N посылок, который допустим при отправке одним запросом. По умолчанию ограничение установлено в 1000 посылок. |
14 | ParcelBarcodeIsNotFound | Штрих-код посылки [{ParcelBarcode}] не найден | Штрих-код посылки не найден в системе |
15 | PreadviceIsNotFound | Информация о посылке не найдена | Если информация о посылке не найдена при обновлении или удалении |
16 | ParcelShopCodeIsNotFound | Код пункта выдачи [{ParcelShopCode}] не найден | Код пункта выдачи не найден в системе |
17 | ParcelBarcodeIsOutOfRange | Штрих-код посылки {ParcelBarcode} находится вне допустимого диапазона. Штрих-код должен соответствовать следующему регулярному выражению: [{ParcelBarcodeRule}] | Номер посылки вне границы допустимого формата |
18 | ParcelBarcodeExists | Штрих-код посылки {ParcelBarcode} уже существует в системе | Если номер посылки уже существует |
19 | CountryCode | Поле кода страны {CountryCode} должно быть в {ISOFormat} формате | Если код страны не соответствует стандарту ISO 3166-1 Alpha-2 или ISO 3166-1 Alpha-3 |
20 | StringLength | Поле {StringField} должно быть строкой с длиной от {MinLength} до {MaxLength} символов | Возникает, если строковое значения поле не соответствует указанной длине |
21 | Required | Поле [{RequiredField}] должно быть обязательно для заполнения | Возникает, если не было заполнено обязательное для заполнения поле |
22 | DataType_Currency | Поле {StringField} не соответствует денежному типу | В поле указано недопустимое значение валюты |
23 | DataType_EmailAddress | Поле {StringField} не соответствует электронной почте | В поле указано недопустимое значение адреса электропочты |
24 | DataType_PhoneNumber | Поле {StringField} не соответствует телефонному номеру | В поле указано недопустимое значение телефонного номера |
25 | DistributionCenterCodeIsNotFound | Тип склада '[{DistributionCenterCodeName}]' с кодом [{DistributionCenterCode}] не найден или не поддерживает тип услуги [{ServiceType}] | Возникает, когда склад (Direct DistributionCenterCode или Return DistributionCenterCode) не поддерживает услугу [ServiceType], которая указана в информации о посылке. Проверьте передаваемые номера складов, если у вас их несколько. Если у вас их нет, передавайте номера прямого и возвратного склада пустые, будет подставлены склады по умолчанию. |
26 | AllBarcodesShouldBeEmpty | Все предзаказы должны быть с пустыми штрих-кодами посылок | Возникает при создании предзаказов, если у клиента установлена опция «автогенерация баркодов» |
27 | AllBarcodesAreRequired | Все предзаказы должны содержать штрих-коды посылок | Возникает при создании предзаказов, если у клиента отключена опция «автогенерация баркодов», клиент сам передает номера посылок |
28 | Deserialization | Ошибка десериализации объекта | Проверьте ваш запрос на наличие ошибок, прочитайте рекомендации к запросам |
29 | UpdateParcelBarcode | Для клиента включена опция автогенерации посылок, штрих-код посылки нельзя обновить, его значение должно быть [{ParcelBarcode}] | Возникает при попытке обновить штрих-код посылки, когда у клиента включена опция автогенерации посылок. После создания штрих-коды доступны только для чтения |
30 | Range | Поле {StringField} должно быть в диапазоне от {Min} до {Max} | Возникает, если в поле указано недопустимое значение, которое не входит в указанный диапазон |
36 | Duplicate | Обнаружен дубликат для [{ParcelBarcode}] с клиентским номером [{ClientParcelNumber}] и номером заказа [{ClientOrderNumber}] | В запросе был передан дупликат предзаказа, необходимо исправить запрос и повторить его заново |
40 | AllowedValues | Недопустимо применение значений {Value} в поле {StringField}. Допустимые значения : {AllowedValues} | В поле передано значение, которое не входит в разрешенные, необходимо проверить их {AllowedValues}, исправить запрос и повторить его заново |
45 | PreadviceWasSentToDelivery | Предзаказ был отправлен на доставку | При повторной отправке уже отправленного заказа будет возникать такая ошибка, необходимо удалить такой заказ из запроса и повторить его при необходимости заново. |
Обработка ошибок SOAP-сервисом
При возникновении исключительной ситуации сервер вернет стандартную ошибку с системным наименованием ошибки и описанием, например<s:Fault>
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 |


