About the service
This service is used for digital presentation of consignments. All goods filed in ICS2 are obligated to be presented upon arrival with a message to this API. From March 2023, this includes all consignments transported by air from third countries, and from June 3, 2024, it also applies to maritime consignments. Third countries in this context means countries outside the EU security zone (EU, Switzerland, Liechtenstein and Norway, excluding Svalbard). The same service can be used for joint presentation according to Entry Summary Declaration (ICS2) and Notification and Disclosure of Information (Melde- og opplysning) obligations. Presentation can be done by sending an Entry Summary Declaration (ENS), receptacle or individual house consignments. If a receptacle or an Entry Summary Declaration is presented, all individual consignments within will be considered presented. Furthermore, the party who has presented the consignments must use the routing service before the consignments eventually may enter. When presenting ICS2 consignments, only routing of house consignment is relevant (for some parties, the service for routing at transport level may be relevant in relation to the Notification and Disclosure of Information obligation). Based on the result of the routing, the consignments that have received TO_CONTROL signal must be delivered to the agreed place of control. Consignments can not be released before TO_ENTRY signal has been received.
More background information on ICS2:
- ICS2 at toll.no
- Guidance documents from the EU
- Regulations concerning importation and exportation of goods (Movement of Goods Regulations)
Workflow
The presentation services should be called as soon as the consignment has arrived. By including the requestId in every call, you as the consumer can ensure that a consignment is presented only once. Reusing the same requestId will result in validation errors. This is only a technical identification of each service call. The status of all requests can be retrieved by using the validation-status service.
Once a consignment has been correctly presented, the control direction signal can be retrieved from the routing service. This signal provides information on whether the consignment needs to be delivered for inspection or if it can be cleared and released to the recipient when other customs procedures are fulfilled. Control direction is performed at the individual consignment level (house consignment). When presenting at the receptacle or ENS (Entry Summary Declaration) level, the result for all individual consignments pre-notified within the respective receptacle or ENS must be retrieved. By using a marker as input, you can easily retrieve changes since the last call.
Interface Description
The services are made available over HTTPS, with authentication via Maskinporten.
POST https://<env>/api/movement/presentation/v1/house-consignment POST https://<env>/api/movement/presentation/v1/master-consignment POST https://<env>/api/movement/presentation/v1/container POST https://<env>/api/movement/presentation/v1/receptacle POST https://<env>/api/movement/presentation/v1/entry-summary-declaration GET https://<env>/api/movement/presentation/v1/validation-status GET https://<env>/api/movement/routing/v1/house-consignment
where
-
<env> is replaced with
- api.toll.no for production
- api-test.toll.no for playground (testing environment)
- {requestId} is replaced with the reference returned by POST/PUT/DELETE calls
- {MRN} is replaced with the reference returned from ".../validation-status..." endpoints.
The API is under development in line with the needs of the Norwegian Customs' digitalization program, so that we will eventually have a complete presentation service for all obligations upon the arrival of goods. We will make changes backward compatible as much as possible, but if there are non-compatible changes, the service will be versioned and the change communicated to consumers. Backward compatible changes will be added without version updates or notifications.
If you have questions or feedback about the API, we would love to hear from you at digitoll@toll.no.
API Documentation
Code Lists
Customs Office of Presentation CL141
Customs Office of Presentation is validated according to the EU code list Reference Data & Customs Offices List (europa.eu)
Transport document type CL754
Authentication – Data exchange between businesses and Norwegian Customs
Our APIs use Maskinporten for identity and access management. On the page Maskinporten - Norwegian Customs you will find information about
- how to get started with integration via Maskinporten if you have not done so before, including the registration form for access at Norwegian Customs
- access management for our APIs
- how to set up a client to authenticate via Maskinporten
- operation and monitoring/troubleshooting.
The scope used for this API is toll:movement/entry.
Testing
For testing, the playground environment can be used.
The validation of submitted messages includes a check that the provided references to "Entry Summary Declaration", receptacle, and waybill exist. In the playground environment, we do not have integration with other systems, so the content is validated against a static list containing a few values.
(The table is wide, you may need to scroll to view all)
Entry Summary Declaration MRN | Receptacle ID | TransportDocumentHouseLevel – documentNumber | TransportDocumentHouseLevel – type | ContainerId | Routing |
---|---|---|---|---|---|
23NO00000000000001 |
GBASFZMLBKONAUN30001001019999 |
NO100000001MU |
N750 |
– |
TO_CONTROL |
23NO00000000000002 |
GBASFZMLBKONAUN30001001019999 |
NO100000002MU |
N750 |
– |
TO_ENTRY |
23NO00000000000003 |
– |
HC001 |
N740 |
– |
TO_ENTRY |
23NO00000000000003 |
– |
HC002 |
N740 |
– |
TO_CONTROL |
23NO00000000000004 |
– |
HC001 |
N703 |
– |
TO_CONTROL |
23NO00000000000004 |
– |
HC002 |
N703 |
– |
TO_ENTRY |
23NO00000000000005 |
– |
HC003 |
N714 |
JARU0000010 |
TO_CONTROL |
23NO00000000000005 |
– |
HC004 |
N714 |
JARU0000026 |
TO_ENTRY |
The routing signals retrieved in the playground environment are also a static list and will be based on the same values. Other values will result in validation errors upon submission.
Feedback and Contact
If you have questions or feedback about the API, we would love to hear from you at ics2-kontakt@toll.no.