.. _Integration_DocumentsGenerationApi_DocumentsGenerationEtrn: Генерация ЭТрН ############## | Запрос: ``POST /documents/generate/etrn_cargoSender`` | HTTP-заголовки: .. code-block:: Authorization: Bearer access_token Accept: application/json Тело запроса: .. code-block:: JSON { "UtcOffsetInMinutes": 0, // смещение даты и времени относительно UTC (в минутах) "CargoSenderTitle": { // содержимое файла обмена грузоотправителя "CargoTransporterFnsId": "string", // идентификатор грузоперевозчика файла обмена "CargoSenderFnsId": "string", // идентификатор грузоотправителя файла обмена "CargoReceiverFnsId": "string", // идентификатор грузополучателя файла обмена "WithExtraReceivers": true, // признак того, что присутствуют дополнительные получатели файла обмена "ExtraReceivers": [ // список дополнительных получателей файла обмена "string" ], "DocumentInfo": { // сведения о транспортной накладной "EconomicSubjectName": "string", // наименование экономического субъекта-составителя документа "EconomicLifeSubjectDocument": { // основание, по которому экономический субъект является составителем файла обмена (реквизиты) }, "CargoSenderTitleInfo": { // содержание транспортной накладной }, "Signer": { // подписант } } } } Описание запроса **************** Запрос ставит задачу на генерацию титула грузоотправителя ЭТрН. В результате будет сгенерирован XML-документ титула грузоотправителя ЭТрН. Если присутствуют дополнительные получатели файла обмена, то значение параметра ``WithExtraReceivers`` - ``true``, а идентификаторы получателей заполняются в списке ``ExtraReceivers``. Содержание транспортной накладной ================================= .. code-block:: JSON { "MinstransId": "string", // уникальный идентификатор документа транспортной накладной "EtrnNumber": "string", // порядковый номер транспортной накладной "EtrnDate": "yyyy-MM-dd", // дата составления транспортной накладной "Number": "string", // порядковый номер заказа "Date": "yyyy-MM-dd", // дата заказа "IdentificationFile": { // идентификация файла обмена заказа "Id": "string", // идентификатор файла обмена заказа/заявки "DateTime": "yyyy-MM-dd", // дата и время формирования файла обмена заказа/заявки "Signature": "string" // подпись в Base64 файла обмена заказа/заявки }, "Correction": { // исправление транспортной накладной "Number": 0, // номер исправления "Date": "yyyy-MM-dd" // дату исправления }, "CargoSenderInfo": { // сведения о грузоотправителе }, "CustomerInfo": { // сведения о заказчике услуг по организации перевозки груза }, "CargoReceiverInfo": { // сведения о грузополучателе }, "CargoInfo": { // сведения о грузе }, "CargoDocumentInfo": { // сведения о сопроводительных документов на груз }, "SpecialTransportationInfo": { // сведения об указаниях грузоотправителя по особым условиям перевозки }, "CargoTransporterInfo": { // сведения о перевозчике }, "DriverInfos": [ // список сведений о водителях ], "VehicleInfo": { // сведения об информации о транспортном средстве }, "CargoTransferInfo": { // сведения грузоотправителя о передаче груза при приеме груза перевозчиком }, "CargoSenderMarks": [ // список сведений об отметках грузоотправителя ], "Informations": [ // список информационных полей { "FileId": "string", // идентификатор файла "TextInfos": [ // список текстовых информаций { "Id": "string", // идентификатор "Value": "string" // значение } ] } ] } Сведения о грузоотправителе =========================== .. code-block:: JSON { "IsForwarder": true, // признак того, что является экспедитором "CargoSender": { // реквизиты, позволяющие идентифицировать грузоотправителя (участник) }, "Document": { // реквизиты документа, определяющего основания осуществления расчетов по договору (реквизиты) } } Если грузоотправитель является исполнителем услуг по организации перевозки груза, то значение параметра ``IsForwarder`` - ``true``. В противном случае значение параметра ``IsForwarder`` - ``false``. Сведения о заказчике услуг по организации перевозки груза ========================================================= .. code-block:: JSON { "Customer": { // реквизиты, позволяющие идентифицировать заказчика (участник) }, "Document": { // реквизиты договора на выполнение услуг по организации перевозки (реквизиты) } } Сведения о грузополучателе ========================== .. code-block:: JSON { "CargoReceiver": { // реквизиты, позволяющие идентифицировать грузополучателя (участник) }, "Address": { // адрес места доставки груза (польз. адрес) } } Сведения о грузе ================ .. code-block:: JSON { "Cost": { // общая объявленная стоимость груза "Cost": 0, // стоимость груза с налогом "CurrencyCode": "string", // код валюты "CurrencyName": "string" // наименование валюты }, "Informations": [ // список информационных полей { "FileId": "string", // идентификатор файла "TextInfos": [ // список текстовых информаций { "Id": "string", // идентификатор "Value": "string" // значение } ] } ], "Descriptions": [ // список описаний груза ] } Описание груза ============== .. code-block:: JSON { "Name": "string", // отгрузочное наименование груза "Code": "string", // код товарной номенклатуры "State": "string", // состояние груза "Packaging": "string", // способ упаковки "Container": "string", // вид тары "Density": 0, // плотность груза в соответствии с документацией на груз "Volume": 0, // объем груза, куб. метры "CargoPlaceCount": 0, // количество грузовых мест "IsInGosTrackingSystem": true, // признак того, что в составе груза присутствует товар, перевозка которого подлежит учету в государственной системе "ExtraInfo": "string", // другая информация о грузе "Markings": [ // список маркировок "string" ], "CargoDimensions": { // габариты груза, в метрах "Height": 0, // высота "Length": 0, // длина "Width": 0 // ширина }, "DangerousCargos": [ // список сведений об опасном грузе ], "ContainerInfos": [ // список сведений о контейнерах { "Count": 0, // количество "Ids": [ // список идентификационных номеров контейнера "string" ] } ], "PlannedCargoWeight": { // плановая масса груза, в кг "Weight": 0, // масса нетто груза "GrossWeight": 0, // масса брутто груза "PalletCount": 0 // количество палет }, "CargoCost": { // объявленная стоимость груза "Cost": 0, // стоимость груза с налогом "CurrencyCode": "string", // код валюты "CurrencyName": "string" // наименование валюты }, "Customer": { // сведения о заказчике услуг }, "GosSystemInfo": { // дополнительные сведения о товаре, перевозка которого подлежит учету в гос. инф. системе "Name": "string", // наименование "Unit": "string", // учетная единица "OtherInfo": "string", // иная информация о товаре "Ids": [ // список идентификационных номеров "string" ] } } Сведения об опасном грузе ========================= .. code-block:: JSON { "Number": "string", // номер ООН "Name": "string", // отгрузочное наименование "TechName": "string", // техническое наименование "Description": "string", // описание "Class": "string", // класс "ClassCode": "string", // классифицированный код "PackageGroup": "string", // группа упаковки "DangerLabel": "string", // знак опасности "TunnelCode": "string", // код ограничения проезда через туннели "RadionuclideSymbol": "string", // название/символ радионуклида "PhysChemForm": "string", // описание физ. и хим. формы "MaxActivity": "string", // макс. активность "PackageCategory": "string", // категория упаковки "TransportIndex": "string", // транспортный индекс "CriticalityIndex": "string", // индекс безопасности по критичности "CertApprovalMark": "string", // опознавательный знак сертификата компетентного органа "TotalActivity": "string", // полная активность груза "ExplosiveMass": "string", // масса нетто взрывчатки, по номеру ООН "TotalExplosiveMass": "string", // масса нетто взрывчатки всего "MixturePercent": "string", // процентный состав смеси "HoldExpiryDate": "yyyy-MM-dd", // дата истечения времени удержания "ControlTemp": "string", // контрольная температура "EmergencyTemp": "string" // аварийная температура } Сведения о сопроводительных документах на груз ============================================== .. code-block:: JSON { "WaybillAttachments": [ // список документов к накладной (реквизиты) ], "GoodsCertificates": [ // список сертификатов/паспортов к грузу (реквизиты) ], "ShipmentConfirmIds": [ // список реквизитов документа, подтверждающего отгрузку товара (реквизиты) ], "ContainerManifest": { // реквизиты сопроводительной ведомости на контейнер (реквизиты) }, } Сведения об указаниях грузоотправителя по особым условиям перевозки =================================================================== .. code-block:: JSON { "IsForbiddenOverweight": true, // признак того, что запрещена перегрузка груза "DateTime": "yyyy-MM-ddTHH:mm:sszzz", // дата и время доставки груза "IsUtcTime": true, // признак того, что время указано в UTC "DeliveryDeadline": "string", // срок доставки груза "SealInfo": "string", // сведения о запорно-пломбировочных устройствах "TransportRegulations": "string", // указания по нормам перевозки "SpeedLimit": "string", // ограничение скорости "Route": { // сведения о маршруте "TextFormat": "string", // текстовый формат маршрута "MachineFormat": "string" // машиночитаемый формат маршрута }, "ReassignmentInfo": { // сведения о процедуре переадресовки "IsCargoReceiver": true, // признак того, что лицом является грузополучатель "Contact": { // контактные данные лица "Telephones": [ // список номеров телефона "string" ], "Emails": [ // список адресов эл. почты "string" ], "OtherInfo": "string" // иные контактные данные }, "Document": { // реквизиты документа, подтверждающего передачу полномочий по переадресовке (реквизиты) } }, "ClimateMode": { // климатический режим перевозки "TempUpperLimit": 0, // нижний предел температуры "TempLowerLimit": 0, // верхний предел температуры "HumidityUpperLimit": 0, // нижний предел влажности "HumidityLowerLimit": 0 // верхний предел влажности }, "Informations": [ // список информационных полей { "FileId": "string", // идентификатор файла "TextInfos": [ // список текстовых информаций { "Id": "string", // идентификатор "Value": "string" // значение } ] } ] } Сведения о водителе =================== .. code-block:: JSON { "LicenseNumber": "string", // номер водительского удостоверения "LicenseSeries": "string", // серия водительского удостоверения "Date": "yyyy-MM-dd", // дата выдачи водительского удостоверения "Inn": "string", // ИНН "IdentificationMethod": "string", // сведения о способе идентификации при применении простой подписи "Telephones": [ // список номеров телефонов "string" ], "Person": { // сведения о лице "Surname": "string", // фамилия "FirstName": "string", // имя "FathersName": "string" // отчество }, "Waybills": [ // список сведений о путевом листе (реквизиты) ] } Сведения об информации о транспортном средстве ============================================== .. code-block:: JSON { "Vehicle": { // сведения о транспортном средстве }, "Trailers": [ // список прицепов ], "SpecialConditions": [ // список сведений о специальных условиях движения { "PermissionNumber": "string", // номер специального разрешения "Date": "yyyy-MM-dd", // дата специального разрешения "Period": "string", // срок действия специального разрешения "FileId": "string", // идентификатор файла "Route": { // сведения о маршруте "TextFormat": "string", // текстовый формат маршрута "MachineFormat": "string" // машиночитаемый формат маршрута }, } ], "Informations": [ // список информационных полей { "FileId": "string", // идентификатор файла "TextInfos": [ // список текстовых информаций { "Id": "string", // идентификатор "Value": "string" // значение } ] } ] } Сведения о транспортном средстве/прицепе ======================================== .. code-block:: JSON { "StsNumber": "string", // номер СТС "VinNumber": "string", // VIN номер "RegistrationNumber": "string", // регистрационный номер "OwnershipType": "string", // тип владения "VehicleParams": { // параметры транспортного средства/прицепа "Type": "string", // тип "Mark": "string", // марка "LoadCapacity": 0, // грузоподъемность, в тоннах "Capacity": 0 // вместимость, в куб. метрах }, "Documents": [ // список реквизитов документов, подтверждающих основания владения (реквизиты) ] } Сведения грузоотправителя о передаче груза при приеме груза перевозчиком ======================================================================== Основание доступа заполняется либо текстом ``AccessReason``, либо документом ``AccessDocument``. .. code-block:: JSON { "ScheduledPickupTime": "yyyy-MM-ddTHH:mm:sszzz", // дата и время подачи под погрузку "IsScheduledPickupTimeUtc": true, // признак того, что заявленная дата и время в UTC "ActualArrivalTime": "yyyy-MM-ddTHH:mm:sszzz", // фактическая дата и время прибытия "IsActualArrivalTimeUtc": true, // признак того, что фактическая дата и время прибытия в UTC "ActualDepartureTime": "yyyy-MM-ddTHH:mm:sszzz", // фактическая дата и время убытия "IsActualDepartureTimeUtc": true, // признак того, что фактическая дата и время убытия в UTC "ContainerCondition": "string", // состояние тары "PackagingCondition": "string", // состояние упаковки "BodyCondition": "string", // состояние кузова "GrossWeight": "string", // масса брутто груза "WeightMethod": "string", // метод определения массы "PackageCount": 0, // количество грузовых мест "PickupAddress": { // адрес места погрузки (польз. адрес) }, "Loader": { // сведения о лице, осуществляющем погрузку }, "FacilityOwner": { // владелец склада }, "AccessDocument": { // основание доступа документом (реквизиты) }, "AccessReason": "string", // основание доступа текстом "Informations": [ // список информационных полей { "FileId": "string", // идентификатор файла "TextInfos": [ // список текстовых информаций { "Id": "string", // идентификатор "Value": "string" // значение } ] } ] } Сведения о лице, осуществляющем погрузку ======================================== .. code-block:: JSON { "IsCargoSender": true, // признак того, что грузоотправитель осуществляет погрузку "Participant": { // реквизиты лица (участник) }, "Document": { // основание, по которому лицо осуществляет погрузку (реквизиты) }, "Worker": { // сведения о работнике }, "IdentificationRequisite": { // идентифицирующий реквизит }, } Сведения о работнике ==================== Основание полномочий заполняется либо текстом ``GroundText``, либо документом ``GroundDocument``. .. code-block:: JSON { "Position": "string", // должность "OtherInfo": "string", // иные сведения "GroundText": "string", // основание полномочий текстом "GroundDocument": { // основание полномочий документом }, "Person": { // сведения о лице "Surname": "string", // фамилия "FirstName": "string", // имя "FathersName": "string" // отчество } } Сведения о владельце склада =========================== Признак совпадения лица, который является владельцем (``OwnerShipper``), может принимать следующие значения: * ``1`` - совпадает. Лицо, которое является владельцем объекта инфраструктуры пункта погрузки, является грузоотправителем. Обязательно заполнение параметра ``IdentificationRequisite``. * ``2`` - не совпадает. Лицо, которое является владельцем объекта инфраструктуры пункта погрузки, не является грузоотправителем. Обязательно заполнение параметра ``Owner``. * ``3`` - не совпадает. Лицо, которое является владельцем объекта инфраструктуры, неизвестно. Обязательно заполнение параметра ``OwnerMissingReason``. .. code-block:: JSON { "OwnerShipper": "string", // признак совпадения лица, который является владельцем "OwnerMissingReason": "string", // причина отсутствия владельца "Owner": { // реквизиты владельца (участник) }, "IdentificationRequisite": { // идентифицирующий реквизит } } Сведения об отметках грузоотправителя ===================================== .. code-block:: JSON { "DateTime": "yyyy-MM-ddTHH:mm:sszzz", // дата и время отметки "IsDateTimeUtc": true, // признак того, что дата и время в UTC "Reason": "string", // описание обстоятельств, послуживших основанием для отметки "Acts": [ // список сведений о коммерческих и иных актах (реквизиты) ], "Fines": [ // список штрафов ], "WeighingActs": [ // список сведений об актах взвешиваний (реквизиты) ], "Informations": [ // список информационных полей { "FileId": "string", // идентификатор файла "TextInfos": [ // список текстовых информаций { "Id": "string", // идентификатор "Value": "string" // значение } ] } ] } Сведения о штрафе ================= Размер штрафа заполняется либо в рублях ``PenaltyRubAmount``, либо в валюте ``PenaltyForeignAmount``. .. code-block:: JSON { "PenaltyBase": "string", // фактическое количество единиц для расчета штрафа "PenaltyRubAmount": 0, // итоговый размер штрафа в рублях "CurrencyCode": "string", // код валюты "CurrencyName": "string", // наименование валюты "PenaltyForeignAmount": 0, // итоговый размер штрафа в валюте "ExchangeRateDate": "yyyy-MM-dd", // дата определения курса валюты "ExchangeRate": 0, // курс валюты "PenaltyCalculation": "string" // расчет штрафа } Сведения о подписанте ===================== .. code-block:: JSON { "Status": "string", // статус "Url": "string", // URL, идентифицирующий сведения об информационной системе "Position": "string", // должность "Person": { // сведения о лице "Surname": "string", // фамилия "FirstName": "string", // имя "FathersName": "string" // отчество }, "PowerOfAttorney": { // сведения о доверенности "Date": "yyyy-MM-dd", // дата доверенности "Number": "string", // порядковый номер доверенности "Id": "string", // идентификатор доверенности "Url": "string" // URL информационной системы } } } Сведения о реквизитах документа =============================== .. code-block:: JSON { "Name": "string", // наименование документа "Number": "string", // номер документа "Date": "yyyy-MM-dd", // дата документа "DocumentId": "string", // идентификатор документа "ExtraInfo": "string", // дополнительные сведения "IdentificationRequisites": [ // список идентифицирующих реквизитов экономических субъектов, составивших документ ] } Сведения об идентифицирующих реквизитах ======================================= В сведениях об идентифицирующих реквизитах экономического субъекта заполняется на выбор: * ИНН физического лица ``IndividualInn``; * ИНН организации ``LegalEntityInn``; * краткое наименование органа исполнительной власти ``ExecutiveName``; * сведения об иностранной организации ``ForeignEntity``. .. code-block:: JSON { "IndividualInn": "string", // ИНН физического лица "LegalEntityInn": "string", // ИНН организации "ExecutiveName": "string", // краткое наименование органа исполнительной власти "ForeignEntity": { // сведения об иностранной организации } } Сведения об участнике ===================== .. code-block:: JSON { "ParticipantInfo": { // информация для участника документооборота "Inn": "string", // ИНН участника "Information": "string" // информация } "IdentificationInfo": { // идентификационные сведения }, "Address": { // адрес }, "ContactDetails": { // контактные данные лица "Telephones": [ // список номеров телефона "string" ], "Emails": [ // список адресов эл. почты "string" ], "OtherInfo": "string" // иные контактные данные }, } Идентификационные сведения ========================== В идентификационных сведениях заполняется одно из следующих полей: * сведения об индивидуальном предпринимателе ``IndividualEntrepreneur``; * сведения о юридическом лице ``LegalEntity``; * сведения об иностранной организации ``ForeignEntity``; * сведения о физическом лице ``Individual``. .. code-block:: JSON { "IndividualEntrepreneur": { // сведения об индивидуальном предпринимателе }, "LegalEntity": { // сведения о юридическом лице }, "ForeignEntity": { // сведения об иностранной организации }, "Individual": { // сведения о физическом лице } } Сведения об индивидуальном предпринимателе ========================================== .. code-block:: JSON { "Inn": "string", // ИНН "Ogrn": "string", // ОГРН "OtherInfo": "string", // иные сведения "Person": { "Surname": "string", // фамилия "FirstName": "string", // имя "FathersName": "string" // отчество } } Сведения о юридическом лице =========================== .. code-block:: JSON { "FullName": "string", // полное наименование "Inn": "string", // ИНН "Kpp": "string" // КПП } Сведения о физическом лице ========================== .. code-block:: JSON { "Inn": "string", // ИНН "OtherInfo": "string", // иные сведения "Person": { "Surname": "string", // фамилия "FirstName": "string", // имя "FathersName": "string" // отчество } } Сведения об иностранной организации =================================== .. code-block:: JSON { "IsForeignEntity": false, // признак идентификации статуса, иностранная организация/иностранный гражданин "CountryName": "string", // наименование страны "Name": "string", // наименование иностранной организации / ФИО иностранного гражданина "Id": "string", // идентификатор иностранной организации / иностранного гражданина "OtherInformation": "string", // иные сведения "IdentityDocument": { // документ, удостоверяющий личность "Type": "string", // вид документа "Number": "string", // номер документа "Date": "yyyy-MM-dd" // дата выдачи документа } } Сведения о польз. адресе ======================== В сведениях о польз. адресе заполняется на выбор: * сведения о польз. адресе в РФ ``RusAddress``; * сведения о польз. иностранном адресе ``ForeignAddress``; * сведения о польз. адресе в ГАР ``GarAddress``. .. code-block:: JSON { "Comment": "string", // комментарий к адресу "Gln": "string", // глобальный номер места нахождения "Coordinates": { // координаты места "Latitude": "string", // широта "Longitude": "string" // долгота } "RusAddress": { // сведения об адресе в РФ }, "ForeignAddress": { // сведения об иностранном адресе }, "GarAddress": { // сведения об адресе в ГАР } } Сведения об адресе ================== В сведениях об адресе заполняется на выбор: * сведения об адресе в РФ ``RusAddress``; * сведения об иностранным адресе ``ForeignAddress``; * сведения об адресе в ГАР ``GarAddress``. .. code-block:: JSON { "RusAddress": { // сведения об адресе в РФ }, "ForeignAddress": { // сведения об иностранном адресе }, "GarAddress": { // сведения об адресе в ГАР } } Сведения об адресе в РФ ======================= .. code-block:: JSON { "PostalCode": "string", // почтовый индекс "RegionCode": "string", // код субъекта "District": "string", // район "City": "string", // город "Locality": "string", // населенный пункт "Street": "string", // улица "House": "string", // дом "Building": "string", // корпус "Apartment": "string", // квартира } Сведения об иностранном адресе ============================== .. code-block:: JSON { "CountryCode": "string", // код страны "FullAddress": "string" // полный адрес }