EMCS Departure
API Endpoint & JSON functions
|
Endpoint |
| /erpservices/importdossier |
| JSON Element | Spec | Description |
| applicationReferenceId | "minLength": 1, "type": "string", |
Your application reference id. Used to communicate about this specific item. |
| doNotSaveWhenInvalid | "type": "boolean", "nullable": true |
A boolean indicating whether not save the item when it is invalid for submission. (default = false, so by default invalid data will be saved). When “true,” it is especially recommended to be able to process/display feedback from the link in the ERP package, which is t he reason why the data was not saved. |
| doSubmitWhenValid | "type": "boolean", "description": "A value indicating whether to submit the declaration when it is valid (default = false).", "nullable": true |
A value indicating whether to submit the declaration when it is valid (default = false) |
Stap 1: Voorbereiden

| Nr. | JSON Element | Specifiation | Comment |
| 1 | FRN | "frn": { "type": "string", "description": "The generated FRN.", "nullable": true, "readOnly": true } }, |
The Functional Reference Number (FRN) of the declaration (Automatically generated) |
| 2 | DossierNumber | "dossierNumber": { "maxLength": 30, "minLength": 1, "type": "string", }, |
Dossiernaam in Shipment (Order number, Delivery number, transport number, etc). |
| 3 | emcsDepartureDeclarations. DeclarationData. submissionMessageType |
"submissionMessageType": { "maxLength": 1, "minLength": 1, "type": "string", }, |
Gets the type of the declaration (TC71). |
| 4 | emcsDepartureDeclarations. DeclarationData. declarationLanguage |
"declarationLanguage": { "maxLength": 2, "minLength": 2, "pattern": "^[a-z]{2}$", "type": "string", }, |
Gets or sets the declaration language (BC12)." |
Stap 2: Algemeen
| Nr. | JSON Element | Spefications | Comment |
| 1 | emcsDepartureDeclarations . DeclarationData . originType |
"originType": { "maxLength": 1, "minLength": 1, "type": "string", "nullable": true }, |
Gets the type of the origin (TC30). |
| 2 | emcsDepartureDeclarations . DeclarationData . destinationType |
"destinationType": { "maxLength": 2, "type": "string", "nullable": true }, |
Gets the type of the destination (TC32). |
| 3 | emcsDepartureDeclarations . DeclarationData . originNumbers |
"originNumbers": { "maxItems": 9, "type": "array", "items": { "type": "string" }, |
|
| 4 | emcsDepartureDeclarations. DeclarationData . transportArrangement |
"transportArrangement": { "maxLength": 1, "minLength": 1, "type": "string", "nullable": true }, |
Gets the transport arrangement (TC70) |
| 5 | emcsDepartureDeclarations . DeclarationData . journeyTimeUnit |
"journeyTimeUnit": { "maxLength": 1, "minLength": 1, "type": "string", "nullable": true }, |
Gets the journey time unit (H = hours, D = days). |
| 6 | emcsDepartureDeclarations . DeclarationData . journeyTimeAmount |
"journeyTimeAmount": { "maximum": 92, "minimum": 0, "type": "integer", "format": "int32", "nullable": true }, |
Gets the journey time amount (0-24 when journey time unit is H, 0-92 when D).", |
| 7 | emcsDepartureDeclarations . DeclarationData . invoiceNumber |
"invoiceNumber": { "maxLength": 35, "type": "string", "nullable": true }, |
Gets the invoice number. |
| 8 | emcsDepartureDeclarations . DeclarationData . invoiceDate |
"invoiceDate": { "type": "string", "format": "date-time", "nullable": true }, |
Gets the invoice date. |
| 9 | emcsDepartureDeclarations . DeclarationData . dateOfDispatch |
"dateOfDispatch": { "type": "string", "format": "date-time", "nullable": true }, |
Gets or sets the date of dispatch. |
| 10 | emcsDepartureDeclarations . DeclarationData . guarantorType |
"guarantorType": { "maxLength": 4, "type": "string", "nullable": true }, |
Gets the type of the guarantor (TC29). |
Stap 3: Afzender

| Nr. | JSON Element | Spefications | Comment |
| 1 | emcsDepartureDeclarations . consignorTrader. internalCode |
"internalCode": { "type": "string", "nullable": true }, |
Gets or sets the Internal code, set in addressbook consignor |
| 2 | emcsDepartureDeclarations . consignorTrader. exciseNumber |
"exciseNumber": { "pattern": "^[A-Z]{2}[a-zA-Z0-9]{11}$", "type": "string", "nullable": true }, |
Gets the excise number. |
We reccommend to link up the consignor to the Shipment Addressbook, using the same link to element internalCode :
"consignorTrader": { "internalCode": "STRATECH_API", "exciseNumber": "NL01000000000" },
Stap 3: Afzender, Plaats van verzending

| Nr | JSON Element | Spefications | Description |
| 1 | emcsDepartureDeclarations. PlaceOfDispatchTrader . traderName |
"traderName": { "maxLength": 182, "type": "string", "description": "Gets the name of the trader.", "nullable": true }, |
Gets the name of the trader. |
| 2 | emcsDepartureDeclarations . PlaceOfDispatchTrader . streetName |
"streetName": { "maxLength": 65, "type": "string", "nullable": true }, |
Gets the name of the street. |
| 3 | emcsDepartureDeclarations . PlaceOfDispatchTrader . streetNumber |
"streetNumber": { |
Gets the street number." |
| 4 | emcsDepartureDeclarations . PlaceOfDispatchTrader . postcode |
"postcode": { "maxLength": 10, "type": "string", "nullable": true }, |
Gets the postcode. |
| 5 | emcsDepartureDeclarations . PlaceOfDispatchTrader . city |
"city": { "maxLength": 50, "type": "string", "description": "Gets the city.", "nullable": true }, |
Gets the city. |
| 6 | emcsDepartureDeclarations . PlaceOfDispatchTrader . country. |
"Shared.Country": { "required": [ "code", "name" ], "type": "object", "properties": { "code": { "type": "string", }, "name": { "type": "string", } }, |
The code (CL248).
|
| 7 | emcsDepartureDeclarations . PlaceOfDispatchTrader . internalCode |
"internalCode": { "type": "string", "nullable": true }, |
Gets or sets the internal code for place of trader. |
| 8 | emcsDepartureDeclarations . PlaceOfDispatchTrader . referenceOfTaxWarehouse |
"referenceOfTaxWarehouse": { "pattern": "^[A-Z]{2}[a-zA-Z0-9]{11}$", "type": "string", "nullable": true } |
Gets the reference of tax warehouse. |
Stap 4: Geadresseerde
| Nr | JSON Element | Spefications | Comment |
| 1 |
consigneeTrader. |
"vatNumber": { "maxLength": 16, "type": "string", "nullable": true }, |
Gets or sets the vat number. |
| 2 |
consigneeTrader. |
"traderName": { "maxLength": 182, "type": "string", "nullable": true }, |
Gets the name of the trader. |
| 3 |
consigneeTrader. |
"streetName": { "maxLength": 65, "type": "string", "nullable": true }, |
Gets the name of the street. |
| 4 |
consigneeTrader. |
"streetNumber": { "maxLength": 11, "type": "string", "nullable": true }, |
Gets the street number. |
| 5 |
consigneeTrader. |
"postcode": { "maxLength": 10, "type": "string", "nullable": true }, |
Gets the postcode. |
| 6 |
consigneeTrader. |
"city": { "maxLength": 50, "type": "string", "nullable": true }, |
Gets the city. |
| 7 |
consigneeTrader. |
"eoriNumber": { "maxLength": 35, "minLength": 1, "pattern": "^(((?![Nn][Ll])([A-Za-z]{2})([0-9A-Za-z]{5,15}))|([Nn][Ll]([0-9]{9,10})))$", "type": "string", } |
Gets the eori number. |
Stap 4: Geadresseerde, Plaats van Levering
| Nr | JSON Element |
Spefications | Comment |
| 1 |
consigneeTrader. |
"identificationNumber": { "maxLength": 16, "type": "string", "nullable": true } |
Gets the vat number. |
| 2 |
consigneeTrader. |
"traderName": { "maxLength": 182, "type": "string", "nullable": true }, |
Gets the name of the trader. |
| 3 |
consigneeTrader. |
"streetName": { "maxLength": 65, "type": "string", "nullable": true }, |
Gets the name of the street. |
| 4 |
consigneeTrader. |
"streetNumber": { "maxLength": 11, "type": "string", "nullable": true }, |
Gets the street number. |
| 5 |
consigneeTrader. |
"postcode": { "maxLength": 10, "type": "string", "nullable": true }, |
Gets the postcode. |
| 6 |
consigneeTrader. |
"city": { "maxLength": 50, "type": "string", "nullable": true }, |
Gets the city. |
Stap 5: Transport

| Nr | JSON Element | Spefications | Comment |
| 1 |
declarationData. |
"transportModeCode": { "maxLength": 2, "type": "string", "nullable": true }, |
Gets the transport mode code (BC67). |
| 2 | declarationData.
transportMode. |
"complementaryInformation": { "maxLength": 350, "type": "string", "nullable": true } |
Gets the complementary information. |
| 3 |
declarationData. |
"competentAuthorityDispatchOfficeReferenceNumber": { "maxLength": 8, "minLength": 8, "type": "string", "nullable": true }, |
Gets the competent authority dispatch office reference number. |
| 4 |
declarationData. |
"deliveryPlaceCustomsOfficeReferenceNumber": { "maxLength": 8, "minLength": 8, "type": "string", "nullable": true }, |
Gets the delivery place customs office reference number. |
| 5 |
declarationData. |
"dispatchImportOfficeReferenceNumber": { "maxLength": 8, "minLength": 8, "type": "string", "nullable": true }, |
Gets the dispatch import office reference number. |
| 6 |
DocumentCertificate. |
"documentType": { "maxLength": 4, "type": "string", "nullable": true }, |
Gets or sets the document type (BC106) |
| 7 |
DocumentCertificate. |
"documentReference": { "maxLength": 35, "type": "string", "nullable": true }, |
Gets or sets the document reference. |
| 8 |
DocumentCertificate. |
"documentDescription": { "maxLength": 350, "type": "string", "nullable": true }, |
Gets or sets the document description. |
| 9 |
DocumentCertificate. |
"referenceOfDocument": { "maxLength": 350, "type": "string", "nullable": true } |
Gets or sets the reference of document. |
| 10 |
transportDetails. |
"transportUnitCode": { "maxLength": 2, "type": "string", "nullable": true |
Gets or sets the transport unit code (BC35). |
| 11 |
transportDetails. |
"identityOfTransportUnits": { "maxLength": 35, "type": "string", "nullable": true }, |
Gets or sets the identity of transport units. |
| 12 |
transportDetails. |
"commercialSealIdentification": { "maxLength": 35, "type": "string", "nullable": true }, |
Gets or sets the commercial seal identification. |
| 13 |
transportDetails |
"complementaryInformation": { "maxLength": 350, "type": "string", "nullable": true }, |
"Gets or sets the complementary information. |
Stap 6: Artikelen (1/2)

| Nr | JSON Element | Spefications | Comment |
|
ExciseProduct. |
"sequenceNumber": { "maximum": 999, "minimum": 1, "type": "integer", "format": "int32" }, |
Gets the sequence number. | |
| 1 |
ExciseProduct. |
"description": { "maxLength": 350, "type": "string", "nullable": true }, |
Gets the description. |
| 2 |
|
"designationOfOrigin": { "maxLength": 350, "type": "string", "nullable": true }, |
Gets the designation of origin. |
| 3 |
ExciseProduct. |
"fiscalMark": { "maxLength": 350, "type": "string", "nullable": true }, |
Gets the fiscal mark. |
| 4 |
ExciseProduct. |
"exciseProductCode": { "maxLength": 4, "minLength": 4, "type": "string", "nullable": true }, |
Gets the excise product code (BC36) |
| 5 |
ExciseProduct. |
"cnCode": { "maxLength": 8, "minLength": 8, "type": "string", "nullable": true }, |
Gets the cn code (BC37 or other value when excise product code is S500). |
| 6 |
ExciseProduct. |
"maturationPeriodOrAgeOfProducts": { "maxLength": 350, "type": "string", "nullable": true }, |
ets or sets the maturation period or age of products. |
Stap 6: Artikelen (2/2)

| Nr | JSON Element | Spefications | Comment |
| 1 |
Package. |
"kindOfPackages": { |
Gets the kind of packages (BC17). |
| 2 |
Package. |
"numberOfPackages": { |
Gets the number of packages. |
| 3 |
Package. |
"shippingMarks": { |
Gets the shipping marks. |
| 4 |
Package. |
"commercialSealIdentification": { |
Gets the commercial seal identification. |
| 5 |
Package. |
"sealInformation": { |
Gets the seal information. |
| 6 |
WineProduct. |
"wineProductCategory": { |
Gets the wine product category (TC38). |
| 7 |
WineProduct. |
"maturationPeriodOrAgeOfProducts": { |
Gets or sets the maturation period or age of products." |
| 8 |
Package. |
"thirdCountryOfOrigin": { |
Gets the third country of origin. |
| 9 |
Package. |
"otherInformation": { |
Gets the other information. |
| 10 |
Package. |
"wineOperationCode": { |
Gets the wine operation code (BC41). |


