What is NVIT?
NVIT stands for Norsk Varer i Transitt (Norwegian Goods in Transit). It’s a customs rule set by the Norwegian Customs Authority (Tolletaten) that applies when Norwegian goods are transported between two places within Norway but pass through Sweden or Finland along the way — a common route for shipments heading to Northern Norway.
Even though this is a purely domestic move in terms of where the goods start and end, because the route crosses a Schengen land border, Norwegian customs law requires a formal transit declaration.
Why it matters now
A temporary exemption that allowed shippers to bypass NVIT requirements expired on 1 April 2026. From that date, full compliance is mandatory for all affected shipments.
⚠️ Non-compliant shipments will be held or refused at the Swedish or Finnish border crossing. There is no grace period.
When does NVIT apply?
NVIT applies when all three conditions are met:
- Shipper is located in Norway
- Receiver is located in Norway (typically Northern Norway: Nordland, Troms, Finnmark)
- The physical transport route passes through Sweden or Finland
The carriers most commonly routing shipments this way are Bring and PostNord. Always confirm with the carrier whether a specific product uses this route — not all Norwegian domestic services transit via Sweden or Finland.
Required customs data
The following data must be provided per goods line on each affected shipment:
| Field | Description | Format |
| HS Code | 6-digit Harmonized System tariff code | Numeric, exactly 6 digits (e.g. 610910) |
| Goods description | Plain-language description of the goods | Free text (English or Norwegian) |
| Gross weight | Weight of the goods per line | Kilograms |
| Number of units | Quantity of items on the line | Numeric |
| Unit of measure | Unit type | Code (e.g. PCE, KG, BOX) |
At the shipment level, the following packaging information is also required:
| Field | Description |
| Packaging type | Type of package (e.g. BOX, PAL, ENV) |
| Package count | Number of packages/colli in the shipment |
ℹ️ The HS code must be exactly 6 digits. Do not use 8- or 10-digit national tariff extensions. Tolletaten requires the internationally standardised 6-digit chapter/heading format.
ℹ️ The customer does not submit to NCTS directly. nShift passes the required goods data to the carrier (Bring / PostNord); the carrier handles the NCTS filing with Norwegian Customs.
How to send NVIT data in nShift Ship
Ship transmits customs data via the DetailGroups structure in the Shipment Server API request. This is the same mechanism used for paperless invoicing on international shipments.
GroupID 1 — Article Info (one row per goods line)
| KindID | Field | Description | Required |
| 7 | Description of goods | Plain-language goods description | ✅ |
| 18 | Commodity Code | 6-digit HS code | ✅ |
| 6 | Unit Weight | Weight per unit in kg | ✅ |
| 5 | No. of units | Quantity on this line | ✅ |
| 8 | Unit of Measure | Unit code (e.g. PCE) | ✅ |
| 4 | Country of Origin | 2-letter ISO country code | Recommended |
Packaging — Lines structure
Packaging type and count are passed via the Lines structure of the shipment request (not DetailGroups). Each entry represents a physical package type:
"Lines": [
{
"GoodsTypeName": "BOX",
"Number": 3,
"PkgWeight": 5000,
"LineWeight": 5000
}
]
Minimal NVIT DetailGroups example
"DetailGroups": [
{
"GroupID": 1,
"Rows": [
{
"RowNo": 1, "LineNo": 1,
"Details": [
{ "KindID": 7, "Value": "Woollen sweaters" },
{ "KindID": 18, "Value": "610910" },
{ "KindID": 6, "Value": "2.5" },
{ "KindID": 5, "Value": "10" },
{ "KindID": 8, "Value": "PCE" }
]
}
]
}
]
Carrier notes
-
Bring (INT 442 / Bringxml NO 142): Customs data is passed via DetailGroups as above. Bring submits the NCTS declaration on the customer's behalf. Confirm with the Bring EDI coordinator (integrasjon.norge@bring.com) that your customer account is NVIT-enabled.
-
PostNord (API 956): Confirm with PostNord which product/subcarrier handles the Northern Norway via Sweden route, and whether customs fields apply to that product.
Before you go live
Before sending your first NVIT-compliant shipment, work through the following checks to make sure your setup is complete.
| # | Check | What to verify |
| 1 | HS codes are set up | Your ERP or WMS must provide a 6-digit HS code for each product line. This is typically stored in your product master — confirm it is populated and correct before shipping. |
| 2 | Goods descriptions are meaningful | Each goods line needs a clear, plain-language description in English or Norwegian. Vague entries such as "goods" or "merchandise" will be rejected by Norwegian Customs (Tolletaten). |
| 3 | Weight is available at line level | Gross weight must be provided per goods line, not just as a total for the shipment. Check that your system can supply this breakdown. |
| 4 | Packaging types are mapped | Your packaging types must be mapped to the codes expected by your carrier (e.g. BOX, PAL, ENV). Check with your nShift implementation contact if you are unsure which codes to use. |
| 5 | Your carrier account is NVIT-enabled | Contact Bring or PostNord to confirm that your account has been enabled for transit declarations. This must be set up at the carrier side before any NVIT shipments can be processed. |
| 6 | Test shipment completed | Send at least one test shipment to a Northern Norway address and confirm that your carrier accepts the declaration before going live with production shipments. |