Royal Mail validation rules

To support seamless parcel shipping and delivery, Royal Mail has implemented a set of validation rules that ensure all required data is accurately provided to the carrier.

These validation rules are defined in the Royal Mail Master Data File (MDF), which lists all the available services , destination coverage, and mandatory data fields for each destination. Required fields include—but are not limited to shipment content, business transaction type, and item information.

When creating a shipment, these validation rules verify that all necessary information is present and correctly formatted for each shipping scenario, reducing errors and streamlining the delivery process.

Scope of validations

The following sections summarises the MDF validation rules, their respective shipment scenarios, and the mandatory fields for each rule. The field are mapped to their typical names for clarity and reference.

All domestic DOX, NDX, and international DOX shipments

Scenario description: Domestic DOX, NDX, and international DOX shipments.

API objectMandatory fields
Shipper > AddressContactName
Line 1
Town
Postcode
CountryCode
Destination > AddressContactName
Line 1
Town
CountryCode
International NDX shipments with DDU incoterm

Scenario description: International non-document (NDX) shipments using DDU incoterm.

API objectMandatory fields
Shipper > AddressContactName
Line 1
Town
PostCode
CountryCode
Destination > AddressContactName
Line 1
Town
CountryCode
ItemsQuantity
Description
Value
Weight
International NDX shipment with DDU incoterm and additional item information

Scenario description: International non-document (NDX) shipments using DDU incoterm, with additional item information.

API objectMandatory fields
Shipper > AddressContactName
Line 1
Town
PostCode
CountryCode
Destination > AddressContactName
Line 1
Town
CountryCode
ItemsQuantity
Description
Value
Weight
HSCode
CountryOfOrigin
International NDX shipment with DDU incoterm, customs data, and mandatory receiver contact details

Scenario description: International non-document (NDX) shipments using DDU, with extra customs data and mandatory receiver contact details.

API objectMandatory fields
Shipper > AddressContactName
Line 1
Town
PostCode
CountryCode
Destination > AddressContactName
Line 1
Town
CountryCode
ContactEmail
ContactPhone
ItemsQuantity
Description
Value
Weight
HSCode
CountryOfOrigin
International NDX shipment with DDP incoterm and ROW destination

Scenario description: International non-document (NDX) shipments using DDP incoterm, sent to non-EU destinations, that is Rest of the World (ROW).

API objectMandatory fields
Shipper > AddressContactName
Line 1
Town
PostCode
CountryCode
Destination > AddressContactName
Line 1
Town
CountryCode
ContactEmail
ContactPhone
ItemsQuantity
Description
Value
Weight
HSCode
CountryOfOrigin
CustomsQuotedLandedCost
International NDX shipment with DDP incoterm to EU destination

Scenario description: International non-document (NDX) shipments using DDP incoterm, sent to EU destinations.

API objectMandatory fields
Shipper > AddressContactName
Line 1
Town
PostCode
CountryCode
ShipperEoriNumber
Destination > AddressContactName
Line 1
Town
CountryCode
ContactEmail
ContactPhone
ItemsQuantity
Description
Value
Weight
HSCode
CountryOfOrigin
CustomsQuotedLandedCost
International NDX shipment with IOSS information to EU destination

Scenario description: International non-document (NDX) shipments with an IOSS Pre-registration number, shipped to EU destinations.

API objectMandatory fields
Shipper > AddressContactName
Line 1
Town
PostCode
CountryCode
Destination > AddressContactName
Line 1
Town
CountryCode
ContactEmail
ContactPhone
ItemsQuantity
Description
Value
Weight
HSCode
CountryOfOrigin
CustomsPreRegistrationNumber populated with the IOSS number
PreRegistrationType defined as IOSS
International NDX shipment with Pre-registration number

Scenario description: International non-document (NDX) shipments with Pre-registration number.

API objectMandatory fields
Shipper > AddressContactName
Line 1
Town
PostCode
CountryCode
Destination > AddressContactName
Line 1
Town
CountryCode
ContactEmail
ContactPhone
ItemsQuantity
Description
Value
Weight
HSCode
CountryOfOrigin
CustomsPreRegistrationNumber
PreRegistrationType
International B2B shipment

Scenario description: Shipment with B2B business transaction type.

API objectMandatory fields
ShipperContactName
Line 1
Town
PostCode
CountryCode
DestinationContactName
Line 1
Town
ItemsQuantity
Description
Value
Weight
HSCode
CountryOfOrigin
International NDX shipment with DDP incoterm and Importer details

Scenario description: International non-document (NDX) shipments using DDP incoterm, with importer details required.

API objectMandatory fields
Shipper > AddressContactName
Line1
Town
PostCode
CountryCode
ShipperEoriNumber
Destination > AddressContactName
Line 1
Town
CountryCode
ContactPhone
DestinationEoriNumber
ItemsQuantity
Description
Value
Weight
HSCode
CountryOfOrigin
CustomsQuotedLandedCost
CarrierSpecifics > Importer > AddressContactName
Line1
Town
CountryCode