What is the UK Customs Declaration Service (CDS)?
Sending a declaration is a message. Assembling one is not. Almost everything HMRC asks for arrives on somebody else’s paperwork: an invoice from the seller, a packing list from the factory, a licence from a regulator.
This guide sets out what HMRC requires, in HMRC’s own words. What CDS is now that CHIEF has closed, who needs access, the eight groups of data a declaration carries, and why declarations come back rejected.
The Customs Declaration Service is HMRC’s system for import and export declarations on goods moving into and out of the UK. It took over from CHIEF, which is closed. To use it you need a GB EORI number, a Government Gateway account, a CDS subscription and declaration software. This guide explains the process. It is not legal advice.
What is the Customs Declaration Service, and has CHIEF gone?
HMRC describes it in one line. The Customs Declaration Service supports making import and export declarations when moving goods into and out of the UK.
Before it there was CHIEF, the Customs Handling of Import and Export Freight system. HMRC moved traders across in stages, and it took longer than the first announcement said.
- 01HMRC announced in August 2021 that import declarations would close on CHIEF on 30 September 2022, and exports on 31 March 2023;
- 02in August 2023 HMRC replaced that export date with a phased plan, moving selected high-volume declarants by 30 November 2023 and all other businesses by 30 March 2024; and
- 03HMRC’s notice to exporters set 4 June 2024 as the point after which an electronic export declaration would need to be submitted on CDS.
So there is one platform now, for imports and for exports. A procedure that still speaks in CHIEF boxes is describing a system that is not there.
One boundary. Northern Ireland movements have their own HMRC guidance and their own EORI prefix, and are not covered here.
Who needs access, and what does HMRC ask for before it grants it?
Access is a short stack, and every layer belongs to the business that trades. It starts with an EORI number. HMRC says you need one to make customs declarations and to use customs systems such as the Customs Declaration Service. Where a business cannot apply itself, HMRC says the person it appoints gets the number instead.
Then you subscribe. HMRC asks for the sign in details used for the business or organisation, and for:
- the EORI number, which starts with GB or XI;
- the Unique Taxpayer Reference;
- the address for the business that HMRC holds on its customs records;
- the National Insurance number, for an individual or sole trader; and
- the date the business started.
HMRC says access arrives within 2 hours, or 5 working days where it needs more checks. The address must be the one HMRC already holds.
Once subscribed, HMRC says you can submit declarations using software, get postponed import VAT statements, pay Customs Duty and import VAT, and set up a Direct Debit for a duty deferment account. Declaring for somebody else needs one more thing. HMRC says whoever you hire cannot act without written instructions showing whether the agent acts directly or indirectly.
- HMRC’s platform for import
- and export declarations
Every one of these belongs to the business that trades, not to a software vendor.
FreighAI does not make this filing. Direct customs filing stays in the system you already use for it, with the people authorised to do it.
What data does a CDS declaration actually need?
HMRC’s guidance on a full import declaration gives the short version. You need the customs procedure code, the commodity code and your declaration unique consignment reference. Alongside those it lists the departure point and destination, the consignee and consignor, the type, amount and packaging of the goods, the transport methods and costs, and certificates and licences.
The long version is organised differently. In the UK Trade Tariff completion guide every data element belongs to one of eight numbered groups.
| Data group | What sits in it | Where the answer comes from |
|---|---|---|
| 1 · Message Information (including Procedure Codes) | The kind of declaration, and the procedure code for it. | The customer’s instructions, and the regime agreed with them. |
| 2 · References of Messages, Document, Certificates and Authorisations | The consignment reference, previous documents, certificates, licences. | The regulator that issued the licence, and your authorisation numbers. |
| 3 · Parties | Who is who. HMRC’s example is DE 3/16, Importer Identification Number. | The EORI numbers on file, and the instructions appointing you. |
| 4 · Valuation Information and Taxes | What the goods are worth, how valued, and the duty and VAT. | The commercial invoice, the freight charges, the incoterm. |
| 5 · Dates, Times, Periods, Places, Countries and Regions | Origin, dispatch and destination, and the places goods pass through. | The bill of lading or air waybill, and the origin declaration. |
| 6 · Goods Identification | The commodity code, description, packages and weights. | The packing list, and the classification the customer holds. |
| 7 · Transport Information (Modes, Means and Equipment) | How the goods travel, on what, in which container or trailer. | The carrier’s booking, and the container or trailer number. |
| 8 · Other Data Elements (Statistical Data, Guarantees and Tariff Related Data) | Statistical detail, guarantees and tariff information held nowhere else. | The deferment or guarantee reference, and any preference claimed. |
- 1 · Message Information (including Procedure Codes)
- What sits in it
- The kind of declaration, and the procedure code for it.
- Where the answer comes from
- The customer’s instructions, and the regime agreed with them.
- 2 · References of Messages, Document, Certificates and Authorisations
- What sits in it
- The consignment reference, previous documents, certificates, licences.
- Where the answer comes from
- The regulator that issued the licence, and your authorisation numbers.
- 3 · Parties
- What sits in it
- Who is who. HMRC’s example is DE 3/16, Importer Identification Number.
- Where the answer comes from
- The EORI numbers on file, and the instructions appointing you.
- 4 · Valuation Information and Taxes
- What sits in it
- What the goods are worth, how valued, and the duty and VAT.
- Where the answer comes from
- The commercial invoice, the freight charges, the incoterm.
- 5 · Dates, Times, Periods, Places, Countries and Regions
- What sits in it
- Origin, dispatch and destination, and the places goods pass through.
- Where the answer comes from
- The bill of lading or air waybill, and the origin declaration.
- 6 · Goods Identification
- What sits in it
- The commodity code, description, packages and weights.
- Where the answer comes from
- The packing list, and the classification the customer holds.
- 7 · Transport Information (Modes, Means and Equipment)
- What sits in it
- How the goods travel, on what, in which container or trailer.
- Where the answer comes from
- The carrier’s booking, and the container or trailer number.
- 8 · Other Data Elements (Statistical Data, Guarantees and Tariff Related Data)
- What sits in it
- Statistical detail, guarantees and tariff information held nowhere else.
- Where the answer comes from
- The deferment or guarantee reference, and any preference claimed.
The numbering follows the group. HMRC explains that each data element begins with the number of the group it belongs to, so the Importer Identification Number sits under group 3, Parties, as DE 3/16. Once you know that, an error code stops being a riddle.
There is no single list of required fields
Which elements are required depends on the movement type and the declaration category. HMRC points declarants at Appendix 21, Declaration Category Data Sets, for the specific elements needed for each category.
Inside a data set HMRC marks every element with a letter. A is mandatory, always required. C is optional, and HMRC says it is up to the trader to choose whether to provide it. D is dependent, required depending on the circumstances involved. Further columns say whether the element is declared at header level or item level.
So “what does the declaration need” has no general answer. It has an answer per shipment, and the letter D is where most of the chasing lives.
What software submits to CDS, and what is a community system provider?
A declaration is not typed into a public website. HMRC’s toolkit says that if you submit declarations yourself you will need specialist software to interact with HMRC systems.
HMRC publishes a list of software developers providing customs declaration support, and is careful about what that list is. HMRC cannot recommend or endorse any one product or service over another. It groups providers by what their software supports: CDS imports, CDS exports, simplified declarations, and customs warehouse. Beyond that HMRC does not describe what the software must do, so neither does this guide.
There is a second connection. Where goods sit in a temporary storage facility, HMRC says that to link your computerised inventory system to HMRC systems you will need to join an approved community systems provider. HMRC names Cargo Community Systems UK, Community Network Services, Maritime Cargo Processing, DHL and Pentant. You can use as many as you need, but only one can be the facility stock account.
So a forwarder clearing at an inventory-linked location runs two arrangements at once: software talking to CDS, and an inventory system talking to the port. A delay can come from either, and the emails land in the same mailbox.
What changes on a roll-on roll-off movement?
Accompanied trailer traffic runs on a second HMRC service. HMRC says to register for the Goods Vehicle Movement Service to get your goods through customs if you move them through a UK border location that uses it.
Who registers is broader than people assume.
- HMRC says you need to register if you import into or export from the UK through a port which uses the service;
- HMRC says a customs agent can register on your behalf; and
- to register you need an EORI number starting GB.
The output is a goods movement reference. HMRC’s description is the whole point: it links together all the declarations which have been submitted for the goods before they reach their destination. To create one you need:
- a reference for all goods in the vehicle, trailer or container, which for an EU to Great Britain import is the movement reference number from CDS;
- a vehicle registration number, if the movement is accompanied; and
- the trailer or container reference number, if it is unaccompanied.
The reference is presented at the port being left from, and HMRC says the carrier will allow you to embark if it is valid. HMRC also warns of a penalty where goods are imported at locations requiring pre-lodgement and move without enough evidence that a declaration has been made.
- 01Register for GVMSA customs agent can register on your behalf, with a GB EORI number.
- 02Declarations submittedThe declarations made for the goods before they reach their destination.
- 03Reference createdIt links those declarations together, from the vehicle, trailer or container references.
- 04Presented at the portThe reference is presented at the port being left from.
- 05Carrier allows embarkingHMRC says the carrier will allow you to embark if it is valid.
Read that backwards and the effect on the desk is obvious. The declaration references must exist before the movement reference can be built, and that before the driver leaves. A missing licence number stops being a customs problem at the border and becomes a haulage problem hours earlier.
When is the declaration due, and what happens after it goes in?
The import clock depends on where the goods sit. HMRC says a full import declaration must be submitted within 90 days where temporary storage is used, and otherwise within the timescale set by the operator of the location. It may go in up to 30 days early, and is accepted only when the goods arrive.
The export clock depends on the mode. HMRC sets pre-departure timings from at least 30 minutes for air to as much as 24 hours for sea cargo that is not containerised.
After acceptance, HMRC says you will be sent a message through the Customs Declaration Service when customs have cleared the goods, and that duty must be paid before release. An export has a tail. HMRC needs a departure message to say the goods have left, which happens automatically at locations using inventory-linked systems, the Goods Vehicle Movement Service or approved loaders. Everywhere else somebody reports it.
- 01Documents inInvoice, packing list, transport document, licences.
- 02Data assembledProcedure code, commodity code, reference, parties, values.
- 03Gaps chasedDependent elements go back to the seller or the customer.
- 04Declaration lodgedSent to CDS inside the location’s timescale.
- 05HMRC validatesAn error code comes back for anything failing validation.
- 06Duty paidHMRC says duty is paid before the goods can be released.
- 07HMRC clearsA message arrives when customs have cleared the goods.
Why do declarations get rejected?
HMRC’s answer for a pre-lodged import declaration is short. They can be rejected if there are errors in your declaration.
What comes back is an error message, DMSREJ, with specific error codes for the parts that failed validation. HMRC publishes the full list of Customs Declaration Service error codes and their descriptions, last updated on 23 June 2026.
The consequence is heavier than a resubmission. HMRC says you cannot amend a rejected declaration and must submit a new one with the errors corrected. The goods are moved to an inland border facility and released only when the new declaration is presented and cleared. The original goods movement reference stays on hold, moves to complete status after 7 days, and cannot take the new one.
HMRC does not publish a ranking of causes, so nobody honest can give you one. What it does publish is the shape of the failure: a code names a data element that did not validate. Go back through the eight groups and ask which elements depend on an answer somebody else owes you.
- a commodity code nobody confirmed, so group 6 is filled in from a description;
- a licence or certificate reference that never arrived, leaving group 2 short;
- a procedure code chosen for a regime the customer has since changed;
- a valuation built from an invoice that was superseded after the entry was drafted; and
- an EORI, authorisation or container number that moved since the last shipment.
Every one of those is a data element that failed. Every one of them started as an email answered late, answered by the wrong person, or not answered at all.
So what changes on the forwarder’s desk?
Read back through the eight groups and count how many are decisions your team makes. Very few. The rest are answers other people owe you. What the goods are, what they are worth, which licence covers them, which container they went into.
The transmission takes seconds, through software HMRC has already listed. The assembly takes days, across time zones, and is usually held together by one person remembering who has not replied.
FreighAI does not submit declarations to CDS or to any other customs system. It works on the assembly around them. Spots what is missing in an enquiry and drafts the email asking for it. Follow-ups, chasers and reminders happen on their own, on the same conversation.
The entry is still prepared and checked by the person accountable for it, and still reaches HMRC through your own software or your own broker. Two questions are worth putting to any supplier who says it helps here:
- 01Show us an import instruction with a commodity code and a licence missing. What does the system send, who does it go to, and when does it ask again?
- 02When the answer arrives four days later on a different thread, who is told, and what does a person still have to copy across by hand?
Common questions
Does FreighAI submit our CDS declarations?
No. Direct customs filing stays in the system you already use for it. FreighAI works on what comes before the entry, which is getting the commodity codes, licences, valuations and references out of customers, sellers and carriers.
We are the customs agent. Are we liable for the declaration?
It depends on the representation. HMRC requires written instructions showing whether the agent acts directly or indirectly, and says that where someone represents a trader directly using their own authorisation, they will not be held jointly liable. The trader is still responsible for due diligence on its declarations.
Our pre-lodged import declaration was rejected on arrival. Can we correct it?
Not that one. HMRC says you cannot amend a rejected declaration and must submit a new one with the errors corrected. The goods move to an inland border facility and are released when the new declaration is presented and cleared.
Which CDS software does HMRC recommend?
None. HMRC publishes a list of software developers providing customs declaration support and states that it cannot recommend or endorse any one product or service over another.
Can we still file anything on CHIEF?
No. HMRC closed CHIEF for import declarations on 30 September 2022, moved exports across in phases through 30 November 2023 and 30 March 2024, and its notice to exporters set 4 June 2024 as the point after which an electronic export declaration would need to be submitted on CDS.
- HMRC news story, 3 August 2021: CHIEF closes for import declarations on 30 September 2022 and for export declarations on 31 March 2023verified 2026-09-03
- HMRC — Customs Declaration Serviceverified 2026-09-03
- HMRC — Subscribe to the Customs Declaration Serviceverified 2026-09-03
- HMRC — Phased approach to CDS export migration announcedverified 2026-09-03
- HMRC — NTE 2024/12: export declarations move from CHIEF to CDSverified 2026-09-03
- HMRC — Making a full import declarationverified 2026-09-03
- HMRC — UK Trade Tariff (CDS) volume 3: import declaration completion guideverified 2026-09-03
- HMRC — CDSSG07010: Declaration Category Data Setsverified 2026-09-03
- HMRC — Software developers providing customs declaration softwareverified 2026-09-03
- HMRC — Setting up your temporary storage facility’s inventory systemverified 2026-09-03
- HMRC — Get a goods movement referenceverified 2026-09-03
- HMRC — What to do if a pre-lodged import declaration is rejected on arrivalverified 2026-09-03
- HMRC — Get someone to deal with customs for youverified 2026-09-03
Bring one entry that came back rejected
Pick a job where the file was short of one answer. We will trace which data element it fed, who owed it to you, and how many emails it took to arrive.