If you ship 10–30 pallets abroad each day and your CMR and packing list are being retyped in Word from the sales order — then every day you're burning two to three hours of someone's work on something your ERP could generate in a minute. And worse: every day you're also generating typos that later cost you an hour of calls with the carrier, customs or the customer.
We often talk to manufacturers and distributors shipping to Germany, Czechia or Slovakia. The sales order lands in the ERP (Comarch Optima, enova365, Microsoft Dynamics AX, Subiekt — split roughly equally). But everything that happens on the shipping-document side lives outside the ERP: a CMR template in Word, a separate Excel for the packing list, an export invoice generated from the ERP but with the item description translated into German by hand, a certificate of origin attached from a separate folder. Eight places where someone can mistype a line item, a CN code or a weight.
We handle the technical cleanup, but the first problem is always process: nobody in the company actually knows which set of documents is "official" for a given shipment. Every forwarder wants a slightly different pack, and the warehouse has three versions of the templates in a drawer because somebody tweaked something a year ago.
What actually needs to agree
Export documents live as an ecosystem: each one rests on the same data, but shows it differently. If one of them lies, the rest do too — you just don't know yet.
- Export invoice — invoice number, currency, exchange rate, line items with CN code, country of origin, net weight, gross weight, Incoterms, customer order number. Item descriptions must match the packing list and the CMR.
- Packing list — quantities, batch numbers, pallet or carton numbers, dimensions, gross weight per pallet, totals. This is the document the carrier/consignee opens first.
- CMR (consignment note) — shipper, consignee, loading and unloading addresses, description of goods, weight, vehicle details, signatures. The CMR number has to tie back to the invoice and the goods issue note in the ERP.
- Certificate of origin / EUR.1 — where required. For most intra-EU shipments a formula on the invoice is enough; for countries with preferential trade agreements (Switzerland, UK) you need EUR.1.
- Item description in the recipient's language — Germany, Austria and Switzerland want German; Czechia and Slovakia often accept English. This is not an on-demand translation; it's a stable field on the product record.
Every one of these documents has to say exactly the same thing about the same line. If the packing list says "18 pallets, 7,420 kg" and the CMR says "18 pallets, 7,480 kg" — that's a customs problem. That kind of error costs a day or two of delay, sometimes a call with the customer asking why their goods didn't arrive.
What to do on the ERP side
Good news: 90% of this can be solved with templates and one proper pass over the product record. Bad news: this project usually gets postponed because "it's just paperwork, the lady in the office handles it". Until the lady in the office takes two weeks off and it turns out nobody else can produce a CMR to Germany.
In one project we did this cleanup for a 25-person upholstered-furniture manufacturer in Wielkopolska, shipping 15–20 pallets a day to Germany. They ran on Microsoft Dynamics AX. Before cleanup: export invoice generated from AX, packing list typed into Excel from the goods issue note, CMR written by hand in Word from the forwarder's template, German item description copy-pasted from a "translations.xlsx" file. Two warehouse people spent 2–3 hours a day total on documents; 3–4 times a month shipments came back for correction because of CN-code typos or weight mismatches.
After the project: four fields added to the product record — description_de, cn_code, country_of_origin, net_weight_per_piece. Packing list and CMR templates generated from the sales order with one click — AX pulls the German description, gross weight is calculated from pallet weight + net weight × quantity, the CMR number is drawn from an ERP sequence linked to the goods issue note. Time to produce a complete document set: 10–15 minutes a day, 95% drop in typos, zero weight corrections in the last 6 months.
Technical details that turned out to matter:
- One source of truth for the German description. On the product record, not in a Word template. Change it once, it's changed everywhere.
- CN code as a required field on the product record for export items. Without it the line can't be added to an export order — brutal but effective.
- CMR numbers from an ERP sequence, not from a paper pad in the warehouse. This lets you link documents in one click and keeps an auditable trail.
- PDF templates, not Word. PDF generated straight from the ERP, no Word in the middle "helping" with formatting.
- Gross weight calculated, not typed in. Pallet weight + net weight × quantity. If someone has to key in the weight, sooner or later they'll key it in a kilo short.
What not to do
There are three classic traps SMEs fall into when they try to clean this up on their own.
- Buying dedicated shipping software that "does everything". For 15–30 pallets a day most shipping systems are overkill. The full document pack can be done inside the ERP you already have, as long as somebody sets up the templates properly and fills in the records.
- Keeping the German description in a separate Excel. This works for six months, then the Excel drifts out of sync with the product record and nobody knows which version is current. The foreign-language description lives on the product record or nowhere.
- Letting it stay "one person's knowledge". Export documents have to be something that can be produced in her absence. If her stand-in needs two days to figure out her Word templates — that's not a process, that's operational risk.
Most firms we work with close this area out in 3–4 weeks: templates in the ERP, product records filled in, procedure written down on two A4 pages. After that it stops breaking. If you're spending two hours a day on this today and every third shipment comes back for correction — let's talk; the first call is free and takes half an hour.
Export documents aren't a shipping problem or an accounting problem — they're a product-record problem. Clean that up once and the rest takes care of itself.