The short version
Most importers plan their shipping around ocean transit time. In practice, the last mile of customs can hold your goods longer than the whole voyage across the sea — if the paperwork is not right before the vessel berths.
Over the years, four things account for the vast majority of avoidable delays when goods enter Germany from China:
- EORI validation — done before the ship sails, not when the truck is waiting.
- Invoice and declaration consistency — one set of numbers, matching everywhere.
- Knowing who the importer of record actually is — you, your forwarder, or someone who never agreed to it.
- Declaring under ATLAS with complete data — including the commodity code.
None of this is about rates. It is about whether "arrived in Hamburg" becomes "delivered to your warehouse" or "held at customs for two weeks".
1. EORI first, everything else second
Without a valid EU EORI number, your shipment can sit at customs even after the vessel has arrived and the container has been discharged. The EORI identifies you as a trader to every customs authority in the Union — and it is issued per legal entity, not per shipment or per forwarder.
The failure mode is almost always the same: the number exists, but it does not match the entity named on the commercial invoice, or it was never activated in the destination country. Both are discoverable in minutes — before departure — and expensive to discover at the terminal.
2. One invoice, one truth
Customs compares the commercial invoice against the customs declaration. If the declared value, the HS code or the goods description does not line up, you have created the single most common trigger for physical inspection — and inspections cost time nobody planned for.
The three mismatches I see most often:
- Description drift. The invoice says "stainless steel kitchenware set"; the declaration says "household goods". Customs reads the difference as uncertainty, not as shorthand.
- Value composition. Freight, insurance and tooling costs that belong in the customs value but were invoiced separately, or discount lines that were never explained.
- HS code hopping. Suppliers re-classifying similar products under different codes from shipment to shipment, usually to smooth out duties. It works until it does not.
Ask your supplier for the commercial invoice before the goods leave the factory, and reconcile it against the packing list and your purchase order. Ten minutes of checking beats two weeks of waiting.
3. Know who the importer of record is
The importer of record is the party legally responsible for the declaration, the duty and the import VAT. Who that is depends entirely on your Incoterm — and importers routinely discover the answer at the worst possible moment.
- Under DDP, your forwarder or seller handles clearance and is effectively acting as importer. Convenient, but check that the arrangement is explicit and documented.
- Under FOB, EXW, CIF or DAP, the consignee is legally responsible for clearing the goods — whether or not they realised that when they signed the contract.
This matters beyond paperwork. The importer of record is the party that must be able to reclaim import VAT, must hold the EORI, and must be able to answer customs queries. Clarify it before booking, not during a customs hold — by then, every hour of clarification is an hour of storage.
4. Germany runs digital — and that cuts both ways
German customs processes declarations electronically through ATLAS. When the data is complete and consistent, this is fast: declarations can be cleared without a human ever touching them. When something is missing, the same system is unforgiving, because it has no way to interpret intent.
The classic missing piece is the commodity code. A declaration without a complete, specific code will wait while somebody — usually you — works out what the goods actually are. The same applies to an incomplete description, a missing preference document, or a value that the system flags as inconsistent with the declared goods.
The practical rule: treat the declaration as data entry with a deadline, not as paperwork to be fixed later. Everything the system needs should exist before the container is discharged.
The pre-arrival checklist
If you are importing from China into Germany, this is the list that prevents most clearance delays. Run it while the vessel is still at sea:
- Confirm the EORI number — valid, activated, and matching the entity on the invoice.
- Reconcile the commercial invoice against the packing list and purchase order: value, description, quantity, currency, Incoterm.
- Agree the HS code in writing with your supplier and your forwarder — one code, one description, used consistently.
- Confirm the importer of record and make sure whoever it is can act: EORI, VAT registration, and authority to clear.
- Send the full document set to your forwarder before arrival — invoice, packing list, bill of lading, any certificates, and preference evidence if you are claiming a reduced duty rate.
- Plan the inland leg — an appointment at the terminal and a truck that can collect, so clearance and haulage are not two separate waits.
Do this and customs becomes what it should be: a step in the process, not a surprise in it.
Related guides
Booked ≠ sailing: why your container can still miss the boat
Your booking is confirmed — but a mid-voyage port omission can still stop your container sailing. Learn the difference between a blank sailing and a port omissi
Read the guide →The EU ETS carbon line is now permanent on your freight quote
The EU Emissions Trading System now reaches ocean shipping, and carriers recover it as a carbon surcharge on your invoice. Here is how importers should model th
Read the guide →French port strike 30 October: reroute before the window closes
France's CGT dockers plan a nationwide strike on 30 October. Even if you don't ship to France, the spillover hits Rotterdam, Antwerp and UK gateways. Here is th
Read the guide →Let's talk
Importing from China into Germany and want a second pair of eyes on your customs setup before the next shipment? Ask me directly — no obligation.