Shipment

Learn all you need to know about configuring shipment providers in Omnium.

Omnium allows integration with multiple shipping providers, each configured with specific settings and shipment options.

Supported shipping providers

ProviderGateway KeyDocumentation
IngridIngridCheckout widget and booking
PostNordPostNordV2 / PostnordEDI-based booking (V2 recommended)
BringBringNordic parcel services
nShift DeliveryUnifaunFormerly Unifaun - delivery checkout
nShift ShipConsignorFormerly Consignor - shipment booking
LogistraLogistraCargonizer integration
GLSGlsParcel services (Denmark focused)
PorterbuddyPorterbuddySame-day delivery

Shipping Providers

Each shipping provider (e.g., Bring, PostNord, GLS, Consignor, Logistra) requires a set of configurations to enable shipment booking and tracking.

Shipping Provider Settings Model

PropertyTypeDescription
NamestringName of the shipping provider.
DisplayNamestringUser-friendly name displayed in Omnium.
ShippingGatewaystringShipping gateway (e.g., Bring, Consignor, PostNord).
MerchantIdstringID for authentication (if required by the provider).
MerchantSecretstringPassword for authentication (if required by the provider).
ApiTokenstringAPI token for authentication (if required by the provider).
CustomerNumberstringCustomer number required by some providers for shipment booking.
CustomerReturnNumberstringCustomer number for return booking requests (if applicable).
CustomerNamestringAccount owner name.
CustomerEmailstringAccount owner email address.
BaseUrlstringProvider API URL (test or production).
TrackingUrlstringURL for tracking shipments.
LogoUrlstringURL to the provider's logo.
VueTemplatestringInternal Omnium template.
DisplayInOmsboolDetermines if the provider is visible in the Omnium interface.
IsTestboolIndicates if the provider is in test mode (used by Bring and PostNord).
BookTransferboolUsed by Logistra for transfer booking.
ProviderSendReturnLabelOnEmailboolUsed by Logistra to send return labels via email instead of printing.
ValidOnMarketsListSpecifies the markets where this provider is valid.

Example Configurations

Logistra Shipping Provider

{
    "Name": "Logistra",
    "DisplayName": "Logistra",
    "ShippingGateway": "Logistra",
    "MerchantId": "xxxx",
    "MerchantSecret": "xxxxxxx",
    "BaseUrl": "http://cargonizer.no",
    "BookTransfer": true
}

Bring Shipping Provider

{
    "Name": "Bring",
    "DisplayName": "Bring",
    "ShippingGateway": "Bring",
    "MerchantId": "Merchant Id",
    "ApiToken": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "CustomerNumber": "PARCELS_SWEDEN-xxxxx",
    "BaseUrl": "https://api.bring.com/",
    "IsTest": false
}

PostNord Shipping Provider

{
    "Name": "Postnord",
    "DisplayName": "Postnord",
    "ShippingGateway": "Postnord",
    "MerchantId": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "ApiToken": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "BaseUrl": "https://api2.postnord.com/"
}

Shipment Options

Each shipment option represents a specific shipping service provided by the carrier (e.g., home delivery, pickup point).

Shipment Option Model

PropertyTypeDescription
ShippingMethodNamestringUnique name identifying the shipping product, matching the e-commerce platform.
ShippingMethodIdstringUnique ID for this option (if necessary).
ShippingGatewaystringProvider gateway (e.g., Bring, PostNord).
ShippingPriceGatewaystringIf prices should be calculated by the provider but booking should not be done, set this.
CountryCodestringTwo-letter country code used by providers for pickup point retrieval.
ShipmentProductstringProvider’s shipment product code (e.g., "PICKUP_PARCEL", "mypack").
ShipmentProductNamestringOptional name for the shipment product.
ProviderNotificationboolWhether the provider sends notifications (SMS/email).
ShipmentReturnProductstringReturn shipment product code (if applicable).
ShippingSubTotaldecimalDefault shipping cost, if applicable.
GetPriceFromProviderboolIf the provider should calculate shipping prices based on the order details.
AddTaxOnProviderPriceboolWhether tax should be added to the provider's shipping cost.
AdditionalCustomerPricePercentagedecimalExtra surcharge percentage on provider cost.
DiscountedPricedecimalDiscounted price for the shipment option.
DiscountLabelstringLabel for discount display.
DeliveryTimestringEstimated delivery time.
LogoUrlstringProvider logo URL.
VueTemplatestringInternal Omnium template.
DefaultPackageobjectDefault package dimensions for the provider.
NumberOfCollisMandatoryboolWhether specifying the number of packages is required.
ShipmentDeliveryTypestring"Delivery" (to customer) or "PickUp" (customer collects the package).
TranslateKeystringInternal identifier for the shipment type.
LabelstringUser-friendly name for the shipment option.
DescriptionstringDescription of the shipment option.
IsDefaultShipmentboolMarks this as the default shipping method.
ConsigneeTypestring"CONSUMER" or "BUSINESS" (as required by providers).
ConsignorTypestring"CONSUMER" or "BUSINESS" (as required by providers).
DefaultWarehouseCodestringDefault warehouse for shipments (if applicable).

NVIT (Norwegian Goods in Transit)

NVIT ("Norske varer i transitt") is a Norwegian customs requirement, effective April 1, 2026, for domestic Norwegian shipments that transit through Sweden or Finland on their way to the recipient. Affected shipments must carry a customs declaration of the goods, even though both sender and recipient are in Norway.

When NVIT data is built

Omnium builds an NVIT declaration for a shipment when both the sender's and the recipient's country are NO. The actual transit route is decided by the carrier and isn't known when the shipment is booked, so this applies to every eligible domestic shipment — a shipping provider that doesn't support NVIT simply ignores the data.

The order lines on the shipment are grouped by customs code (HS number). Each group becomes one customs goods line, and the package weight is split across the groups by their share of the total quantity. Net weight normally comes from the shipment packages the same way, but when the packages don't carry a net weight, it's instead computed by summing each order line's own weight — see Enrichment below.

If any order line on the shipment is missing a customs code, no NVIT data is sent for that shipment at all. A partial declaration would understate the total declared weight, which is worse than sending no declaration.

Order line and package fields

FieldLevelDescription
customsCodeOrder lineHS customs number, 6-10 digits (formatting such as dots is stripped). Required on every order line in the shipment for NVIT data to be built.
countryOfOriginOrder lineISO 3166-1 alpha-2 country of origin. Optional — only included when it's the same across all lines sharing a customs code.
weightOrder lineWeight of a single unit, in kg. Optional — only used as a net weight fallback when the shipment packages don't have one, and only when every line sharing a customs code has a value.
weightInKgShipment packageGross package weight in kg. Used as the basis for the declared goods weight.
netWeightInKgShipment packageNet weight of the goods in the package in kg, excluding packaging. Optional — only included when every package on the shipment has a net weight set. When it isn't, net weight falls back to order line weight instead.

Enrichment

FieldSource
customsCodeEnriched automatically from the product (variant first, falling back to the product level) by the Enrich Order from Products step. Only overwritten when the product has a value set.
countryOfOriginEnriched automatically from the product the same way as customsCode.
weightEnriched automatically from the product the same way as customsCode — but only when the order line doesn't already have a weight. Unlike customsCode/countryOfOrigin, an explicitly set value is never overwritten by enrichment.
weightInKgEnriched automatically from product colli weight when the Create Shipment Packages Based on Product Colli step is used. Otherwise it must be set through the API or GUI.
netWeightInKgThe package field itself is never enriched automatically — it must be set through the API or GUI. NVIT doesn't depend on that, though: when it's missing, the declared net weight is still populated automatically instead, by summing order line weight across the lines sharing a customs code (only when every line in that group has one).

Provider support

ProviderNVIT support
LogistraYes
BringNot yet
nShift Ship (Consignor)Not yet
PostNordNot yet
IngridNot yet
nShift DeliveryNot yet
GLSNot yet
PorterbuddyNot yet