The Windsor Framework
Overview
The Windsor Framework is a bilateral agreement between the United Kingdom (UK) and the European Union (EU) that governs the trade relationship between Great Britain (GB) and Northern Ireland (NI) following Brexit. This framework replaces the Northern Ireland Protocol and is designed to simplify customs procedures while ensuring that Northern Ireland retains access to the EU Single Market.
This document outlines the implications of the Windsor Framework on your shipping operations, the data required for creating compliant shipment labels, and the necessary steps to ensure continued compliance.
What Is the Windsor Framework?
The Windsor Framework introduces new customs and trade regulations that govern the movement of goods from Great Britain to Northern Ireland. Key aspects of the framework include:
-
Simplified Customs Procedures:
The level of customs data required depends on the trade category:
-
Business-to-Consumer (B2C),
-
Consumer-to-Consumer (C2C),
-
Business-to-Business (B2B).
-
-
Green and Red Lanes:
- Green Lane: Goods that are deemed "not at risk" of entering the EU will be subject to simplified checks and fewer customs requirements.
- Red Lane: Goods considered "at risk" of entering the EU will require a full customs declaration, including additional details to ensure compliance with EU regulations.
-
Timelines:
Initial changes were scheduled to take effect by 30 September 2024, with full compliance expected by 31 March 2025. However, timelines remain subject to UK government updates.
Please refer to the official HMRC guidance for the latest updates, UK government’s official guidance.
How the Framework Affects Your Shipping Process
When shipping from Great Britain to Northern Ireland, additional data is required in shipment label requests to ensure accurate customs declarations and correct routing. Data requirements vary between B2C/C2C and B2B shipments.
For B2C and C2C Shipments
-
Basic Consignment Data:
- Sender and recipient names, addresses, and contact details
- Parcel weight and total consignment value
- A plain English description of the shipment contents
-
Customs Formalities:
B2C shipments typically require simpler customs data when following UK Carrier Scheme guidelines, provided the goods are not at risk of entering the EU.
For B2B Shipments
B2B shipments require more detailed data so that your shipment can be classified as either “green lane” (not at risk) or “red lane” (at risk). In addition to the basic consignment data, you must provide:
-
Mandatory Fields:
- Sale Type: Specify whether the shipment is B2B or B2C
- Number of Pieces and Total Value: Comprehensive details of the goods.
- Commodity Details:
-
Commodity codes (HS codes) – 6 or 10 digits, as required.
- Descriptions, quantities, unit weights, and unit values
- Country of manufacture
-
Deferment account details (if applicable for customs charges).
-
-
UKIMS Number:
-
Either the sender’s or recipient’s UKIMS number is required.
-
If missing, the shipment defaults to B2C rules and may be considered at risk.
-
-
EORI Number:
-
The sender’s EORI number is mandatory.
-
If a recipient’s UKIMS number is provided, their EORI number must also be included.
-
-
Clearance Declaration Details:
These details differ based on the lane:- Green Lane (Not at risk): Only minimal extra data is needed when UKIMS details are included.
- Red Lane (At risk): Requires a full international dataset, similar to an H1 declaration, along with additional customs information and may be subject to EU duties.
Data Fields Required When Creating Shipping Labels
Please check the courier requirements table for the couriers that you are using to fully comply with the courier requirements for the Windsor Framework:
To ensure compliance with the Windsor Framework, the following key fields must be included in shipment label data:
Core Data Fields
-
Sale Type: Identifies whether the shipment is B2B, B2C, C2C, or C2B.
-
Commodity Details (for B2B Shipments):
-
Commodity Code (HS Code).
-
Detailed Description (quantity, unit weight, unit value, country of origin).
-
UKIMS Number (shipper and/or recipient).
-
EORI Numbers (shipper’s EORI required; recipient’s EORI required if UKIMS details are included).
-
Additional Commodity Details (as required by the carrier).
-
Our documentation will be continuously updated as new regulations emerge, including carrier-specific compliance requirements.
-
Sale Type:
Identifies whether the shipment is B2B, B2C, C2C, or C2B. -
For B2B Shipments (Customs and Declaration Data):
- Commodity Code (HS Code)
- Detailed Description: Including quantity, unit weight, unit value, and country of origin.
- UKIMS Number: For the shipper, recipient, or both.
- EORI Numbers: Always include the shipper’s EORI and, if applicable, the recipient’s EORI.
- Other Commodity Details: As required by your carrier.
Our documentation will be updated as new information emerges. We will revise the general regulation details as well as the specifics for each carrier affected by the framework.
Our documentation will be updated as new information emerges. We will revise the general regulation details as well as the specifics for each carrier affected by the framework.
Courier Requirements
Fields/Courier | RoyalMail | Whistl | RoyalMail ClickAndDrop |
Yodel |
Supported Sales Types: | B2B / B2C | B2B / B2C | B2B / B2C | B2C |
courier.sale_type | Required | Required | Required | N/A |
ship_to.ukims_number | Required for B2B shipments unless ship_from.ukims number isn't entered | N/A | Required for B2B shipments unless ship_from.ukims number isn't entered | N/A |
ship_from.ukims_number | Required for B2B shipments | N/A | Required for B2B shipments | N/A |
ship_to.eori_number | Required for B2B if ship_to.ukims number is entered for B2B | N/A | It is required for B2B if ship_to.ukims number is entered for B2B | N/A |
ship_from.eori_number | Required for B2B | N/A | Required for B2B | N/A |
item.sku | Required | Required | Required | Required |
item.quantity | Required | Required | Required | Required |
item.description | Required | Required | Required | Required |
item.value | Required | Required | Required | Required |
item.currency | Required | Required | Required | Required |
item.origin_country | Required | Required | Required | Optional |
item.hs_code | Required | Required | Required | Optional |
item.weight | Required | Required | Required | Optional |
courier.export_reason | N/A | N/A | N/A | N/A |
courier.sender_deferment_account | N/A | N/A | N/A | N/A |
Note | Either ship_to UKIMS or ship_from.ukims number is required for B2B shipments | UKIMS and EORI numbers should be configured on Whistl interface | Either ship_to UKIMS or ship_from.ukims number is required for B2B shipments |
Fields/Courier | Evri Corporate |
Hermes Corporate |
DPD UK | DPD Local | DPD Ireland |
Supported Sales Types: | B2C / C2C / C2B | B2C / C2C / C2B | B2B, B2C, C2C | B2B, B2C, C2C | B2B, B2C, C2C |
courier.sale_type | N/A | N/A | Required | Required | Required |
ship_to.ukims_number | N/A | N/A | Required for B2B shipments unless ship_from.ukims number isn't entered | Required for B2B shipments unless ship_from.ukims number isn't entered | Required for B2B shipments unless ship_from.ukims number isn't entered |
ship_from.ukims_number | N/A | N/A | Required for B2B shipments if not at-risk goods | Required for B2B shipments if not at-risk goods | Required for B2B shipments if not at-risk goods |
ship_from.vat_number | N/A | N/A | Required for B2B At Risk Goods | Required for B2B At Risk Goods | Required for B2B At Risk Goods |
ship_to.vat_number | N/A | N/A | Required for B2B At Risk Goods if ship_from.vat_number not entered | Required for B2B At Risk Goods if ship_from.vat_number not entered | Required for B2B At Risk Goods if ship_from.vat_number not entered |
ship_to.eori_number | N/A | N/A | Required for B2B if ship_to.ukims number is entered for B2B | Required for B2B if ship_to.ukims number is entered for B2B | Required for B2B if ship_to.ukims number is entered for B2B |
ship_from.eori_number | N/A | N/A | Required for B2B | Required for B2B | Required for B2B |
item.sku | Required | Required | Required | Required | Required |
item.quantity | Required | Required | Required | Required | Required |
item.description | Required | Required | Required | Required | Required |
item.value | Required | Required | Required | Required | Required |
item.currency | Required | Required | Required | Required | Required |
item.origin_country | Required | Required | Optional for B2C&C2C but Required for B2B | Optional for B2C&C2C but Required for B2B | Optional for B2C&C2C but Required for B2B |
item.hs_code | Required | Required | Optional for B2C&C2C but Required for B2B | Optional for B2C&C2C but Required for B2B | Optional for B2C&C2C but Required for B2B |
item.weight | Required | Required | Required | Required | Required |
courier.at_risk | N/A | N/A | Required | Required | Required |
courier.export_reason | N/A | N/A | N/A | TBD | |
courier.sender_deferment_account | N/A | N/A | N/A | TBD | |
Note | TBD |
Fields/Courier | RoyalMailIntersoft | ProCarrier | Hermes | DHLParcelUKCloud |
Supported Sales Types: | B2B / B2C | TBD | B2C / C2C / C2B | B2C / B2B / C2C / C2B |
courier.sale_type | Required | TBD | N/A | Required |
ship_to.ukims_number | Required for B2B shipments unless ship_from.ukims number isn't entered | TBD | N/A | Required for C2B. Required for B2B if ship_from.ukims is not entered |
ship_from.ukims_number | Required for B2B shipments | TBD | N/A | Required for B2B |
ship_to.eori_number | Required for B2B if ship_to.ukims number is entered for B2B | TBD | N/A | Required for C2B. Required if ship_to.ukims is entered |
ship_from.eori_number | Required for B2B | TBD | N/A | Required for B2B |
item.sku | Required | TBD | Required | Required |
item.quantity | Required | TBD | Required | Required |
item.description | Required | TBD | Required | Required |
item.value | Required | TBD | Required | Required |
item.currency | Required | TBD | Required | Required |
item.origin_country | Required | TBD | Required | Optional |
item.hs_code | Required | TBD | Optional | Optional |
item.weight | Required | TBD | Required | Required |
courier.export_reason | N/A | TBD | N/A | Required for B2B |
courier.sender_deferment_account | N/A | TBD | N/A | Required for B2B |
Note | Either ship_to UKIMS or ship_from.ukims number is required for B2B shipments | TBD | B2B isn't supported by Evri so there is no need for UKIMS and EORI Number |
Fields/Courier | DHLParcelUK | SecuredMail | Fedex | DPDC2C |
Supported Sales Types: | B2C / B2B / C2C / C2B | B2B / B2C / C2B | TBD | TBD |
courier.sale_type | Required | Required | TBD | TBD |
ship_to.ukims_number | Required for C2B. Required for B2B if ship_from.ukims is not entered | Required for B2B shipments unless ship_from.ukims number isn't entered or Required for C2B shipments | TBD | TBD |
ship_from.ukims_number | Required for B2B | Required for B2B shipments | TBD | TBD |
ship_to.eori_number | Required for C2B. Required if ship_to.ukims is entered | Not Required | TBD | TBD |
ship_from.eori_number | Required for B2B | Not Required | TBD | TBD |
item.sku | Required | Required | TBD | TBD |
item.quantity | Required | Required | TBD | TBD |
item.description | Required | Required | TBD | TBD |
item.value | Required | Required | TBD | TBD |
item.currency | Required | Required | TBD | TBD |
item.origin_country | Optional | Required | TBD | TBD |
item.hs_code | Required | Required | TBD | TBD |
item.weight | Required | Required | TBD | TBD |
parcel.dim_width | Not Required | Required | TBD | TBD |
dim_height | Not Required | Required | TBD | TBD |
dim_length | Not Required | Required | TBD | TBD |
dim_unit | Not Required | Required | TBD | TBD |
courier.export_reason | Required for B2B | Required | TBD | TBD |
courier.sender_deferment_account | Required for B2B | N/A | TBD | TBD |
Note | TBD | TBD |
Fields/Courier | Huxloe | DGInternational | CollectPlus | PPI |
Supported Sales Types: | TBD | TBD | TBD | TBD |
courier.sale_type | TBD | TBD | TBD | TBD |
ship_to.ukims_number | TBD | TBD | TBD | TBD |
ship_from.ukims_number | TBD | TBD | TBD | TBD |
ship_to.eori_number | TBD | TBD | TBD | TBD |
ship_from.eori_number | TBD | TBD | TBD | TBD |
item.sku | TBD | TBD | TBD | TBD |
item.quantity | TBD | TBD | TBD | TBD |
item.description | TBD | TBD | TBD | TBD |
item.value | TBD | TBD | TBD | TBD |
item.currency | TBD | TBD | TBD | TBD |
item.origin_country | TBD | TBD | TBD | TBD |
item.hs_code | TBD | TBD | TBD | TBD |
item.weight | TBD | TBD | TBD | TBD |
courier.export_reason | TBD | TBD | TBD | TBD |
courier.sender_deferment_account | TBD | TBD | TBD | TBD |
Note | TBD | TBD | TBD | TBD |
Fields/Courier | Starlinks | UPS | ArrowXL | ParcelHub |
Supported Sales Types: | TBD | TBD | TBD | TBD |
courier.sale_type | TBD | TBD | TBD | TBD |
ship_to.ukims_number | TBD | TBD | TBD | TBD |
ship_from.ukims_number | TBD | TBD | TBD | TBD |
ship_to.eori_number | TBD | TBD | TBD | TBD |
ship_from.eori_number | TBD | TBD | TBD | TBD |
item.sku | TBD | TBD | TBD | TBD |
item.quantity | TBD | TBD | TBD | TBD |
item.description | TBD | TBD | TBD | TBD |
item.value | TBD | TBD | TBD | TBD |
item.currency | TBD | TBD | TBD | TBD |
item.origin_country | TBD | TBD | TBD | TBD |
item.hs_code | TBD | TBD | TBD | TBD |
item.weight | TBD | TBD | TBD | TBD |
courier.export_reason | TBD | TBD | TBD | TBD |
courier.sender_deferment_account | TBD | TBD | TBD | TBD |
Note | TBD | TBD | TBD | TBD |
Fields/Courier | DxExpress |
Supported Sales Types: | TBD |
courier.sale_type | TBD |
ship_to.ukims_number | TBD |
ship_from.ukims_number | TBD |
ship_to.eori_number | TBD |
ship_from.eori_number | TBD |
item.sku | TBD |
item.quantity | TBD |
item.description | TBD |
item.value | TBD |
item.currency | TBD |
item.origin_country | TBD |
item.hs_code | TBD |
item.weight | TBD |
courier.export_reason | TBD |
courier.sender_deferment_account | TBD |
Note | TBD |