Submit arrival declaration
curl --request POST \
--url https://devapi.eazecustoms.com/staging/v1/declarations/transit \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"type": "<string>",
"companyId": 123,
"procedureType": "<string>",
"commercialReference": "<string>",
"mrn": "<string>",
"destinationOffice": "<string>",
"countryOfDestination": "<string>",
"goodsLocationType": "<string>",
"goodsLocationAddressType": "<string>",
"goodsLocationAddress": {},
"Principal": {},
"Authorisations": [
{}
]
}
'import requests
url = "https://devapi.eazecustoms.com/staging/v1/declarations/transit"
payload = {
"type": "<string>",
"companyId": 123,
"procedureType": "<string>",
"commercialReference": "<string>",
"mrn": "<string>",
"destinationOffice": "<string>",
"countryOfDestination": "<string>",
"goodsLocationType": "<string>",
"goodsLocationAddressType": "<string>",
"goodsLocationAddress": {},
"Principal": {},
"Authorisations": [{}]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
type: '<string>',
companyId: 123,
procedureType: '<string>',
commercialReference: '<string>',
mrn: '<string>',
destinationOffice: '<string>',
countryOfDestination: '<string>',
goodsLocationType: '<string>',
goodsLocationAddressType: '<string>',
goodsLocationAddress: {},
Principal: {},
Authorisations: [{}]
})
};
fetch('https://devapi.eazecustoms.com/staging/v1/declarations/transit', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://devapi.eazecustoms.com/staging/v1/declarations/transit",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'type' => '<string>',
'companyId' => 123,
'procedureType' => '<string>',
'commercialReference' => '<string>',
'mrn' => '<string>',
'destinationOffice' => '<string>',
'countryOfDestination' => '<string>',
'goodsLocationType' => '<string>',
'goodsLocationAddressType' => '<string>',
'goodsLocationAddress' => [
],
'Principal' => [
],
'Authorisations' => [
[
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://devapi.eazecustoms.com/staging/v1/declarations/transit"
payload := strings.NewReader("{\n \"type\": \"<string>\",\n \"companyId\": 123,\n \"procedureType\": \"<string>\",\n \"commercialReference\": \"<string>\",\n \"mrn\": \"<string>\",\n \"destinationOffice\": \"<string>\",\n \"countryOfDestination\": \"<string>\",\n \"goodsLocationType\": \"<string>\",\n \"goodsLocationAddressType\": \"<string>\",\n \"goodsLocationAddress\": {},\n \"Principal\": {},\n \"Authorisations\": [\n {}\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://devapi.eazecustoms.com/staging/v1/declarations/transit")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"type\": \"<string>\",\n \"companyId\": 123,\n \"procedureType\": \"<string>\",\n \"commercialReference\": \"<string>\",\n \"mrn\": \"<string>\",\n \"destinationOffice\": \"<string>\",\n \"countryOfDestination\": \"<string>\",\n \"goodsLocationType\": \"<string>\",\n \"goodsLocationAddressType\": \"<string>\",\n \"goodsLocationAddress\": {},\n \"Principal\": {},\n \"Authorisations\": [\n {}\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://devapi.eazecustoms.com/staging/v1/declarations/transit")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"type\": \"<string>\",\n \"companyId\": 123,\n \"procedureType\": \"<string>\",\n \"commercialReference\": \"<string>\",\n \"mrn\": \"<string>\",\n \"destinationOffice\": \"<string>\",\n \"countryOfDestination\": \"<string>\",\n \"goodsLocationType\": \"<string>\",\n \"goodsLocationAddressType\": \"<string>\",\n \"goodsLocationAddress\": {},\n \"Principal\": {},\n \"Authorisations\": [\n {}\n ]\n}"
response = http.request(request)
puts response.read_body{
"declarationId": 105,
"status": "processing"
}
Transit Declarations
Submit arrival declaration
Submit a transit arrival declaration (type: ARRIVAL).
POST
/
v1
/
declarations
/
transit
Submit arrival declaration
curl --request POST \
--url https://devapi.eazecustoms.com/staging/v1/declarations/transit \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"type": "<string>",
"companyId": 123,
"procedureType": "<string>",
"commercialReference": "<string>",
"mrn": "<string>",
"destinationOffice": "<string>",
"countryOfDestination": "<string>",
"goodsLocationType": "<string>",
"goodsLocationAddressType": "<string>",
"goodsLocationAddress": {},
"Principal": {},
"Authorisations": [
{}
]
}
'import requests
url = "https://devapi.eazecustoms.com/staging/v1/declarations/transit"
payload = {
"type": "<string>",
"companyId": 123,
"procedureType": "<string>",
"commercialReference": "<string>",
"mrn": "<string>",
"destinationOffice": "<string>",
"countryOfDestination": "<string>",
"goodsLocationType": "<string>",
"goodsLocationAddressType": "<string>",
"goodsLocationAddress": {},
"Principal": {},
"Authorisations": [{}]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
type: '<string>',
companyId: 123,
procedureType: '<string>',
commercialReference: '<string>',
mrn: '<string>',
destinationOffice: '<string>',
countryOfDestination: '<string>',
goodsLocationType: '<string>',
goodsLocationAddressType: '<string>',
goodsLocationAddress: {},
Principal: {},
Authorisations: [{}]
})
};
fetch('https://devapi.eazecustoms.com/staging/v1/declarations/transit', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://devapi.eazecustoms.com/staging/v1/declarations/transit",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'type' => '<string>',
'companyId' => 123,
'procedureType' => '<string>',
'commercialReference' => '<string>',
'mrn' => '<string>',
'destinationOffice' => '<string>',
'countryOfDestination' => '<string>',
'goodsLocationType' => '<string>',
'goodsLocationAddressType' => '<string>',
'goodsLocationAddress' => [
],
'Principal' => [
],
'Authorisations' => [
[
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://devapi.eazecustoms.com/staging/v1/declarations/transit"
payload := strings.NewReader("{\n \"type\": \"<string>\",\n \"companyId\": 123,\n \"procedureType\": \"<string>\",\n \"commercialReference\": \"<string>\",\n \"mrn\": \"<string>\",\n \"destinationOffice\": \"<string>\",\n \"countryOfDestination\": \"<string>\",\n \"goodsLocationType\": \"<string>\",\n \"goodsLocationAddressType\": \"<string>\",\n \"goodsLocationAddress\": {},\n \"Principal\": {},\n \"Authorisations\": [\n {}\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://devapi.eazecustoms.com/staging/v1/declarations/transit")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"type\": \"<string>\",\n \"companyId\": 123,\n \"procedureType\": \"<string>\",\n \"commercialReference\": \"<string>\",\n \"mrn\": \"<string>\",\n \"destinationOffice\": \"<string>\",\n \"countryOfDestination\": \"<string>\",\n \"goodsLocationType\": \"<string>\",\n \"goodsLocationAddressType\": \"<string>\",\n \"goodsLocationAddress\": {},\n \"Principal\": {},\n \"Authorisations\": [\n {}\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://devapi.eazecustoms.com/staging/v1/declarations/transit")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"type\": \"<string>\",\n \"companyId\": 123,\n \"procedureType\": \"<string>\",\n \"commercialReference\": \"<string>\",\n \"mrn\": \"<string>\",\n \"destinationOffice\": \"<string>\",\n \"countryOfDestination\": \"<string>\",\n \"goodsLocationType\": \"<string>\",\n \"goodsLocationAddressType\": \"<string>\",\n \"goodsLocationAddress\": {},\n \"Principal\": {},\n \"Authorisations\": [\n {}\n ]\n}"
response = http.request(request)
puts response.read_body{
"declarationId": 105,
"status": "processing"
}
Submit a transit arrival declaration to Union Transit.
Request Body
string
required
The type of declaration. Must be set to
ARRIVAL.integer
required
The unique ID of the company submitting the declaration.
string
required
The transit procedure type code. Allowed values:
D1, D2, D3, D4.string
required
Commercial reference identifier.
string
required
Movement Reference Number for the arrival/unloading.
string
required
Office of destination code (e.g.
NL000567).string
required
The country code of the destination (e.g.
NL).string
required
The type identifier for the location of the goods.
string
required
The type identifier for the address layout of the goods location.
object
required
The physical address or authorization details where the goods are located.
object
required
The principal party details.
array
List of authorisations reference documents.
Examples
Request Payload
{
"companyId": 1,
"type": "ARRIVAL",
"procedureType": "D1",
"commercialReference": "ARR-2026-00001",
"mrn": "25NL715L00002CNWJ3",
"destinationOffice": "NL000567",
"countryOfDestination": "NL",
"goodsLocationType": "B",
"goodsLocationAddressType": "T",
"goodsLocationAddress": {
"authorizationNo": "NLACENL000567-2025-D-FAJ159847",
"customsOffice": "NL000567"
},
"Principal": {
"eoriNo": "NL865986952",
"name": "Nordic Living Imports B.V.",
"countryCode": "NL"
},
"Authorisations": [
{
"documentCategory": "Authorisation",
"typeCode": "C521",
"description": "NLACENL000567-2025-D-FAJ159847",
"isRequestedFromCustoms": false
}
]
}
{
"declarationId": 105,
"status": "processing"
}
⌘I