Skip to content
UITDesk — Generate. Comply. Move Forward.
Article · Application

e-Transport Declaration Errors: 7 Reasons ANAF Rejects

The e-Transport declaration errors ANAF rejects: spaces copied from PDFs, Greece coded GR, NC codes losing a leading zero, and a code read as acceptance.

5 min readPublished 19 September 2026

The e-Transport declaration errors that get shipments rejected at ANAF almost never come from the transport. They come from how the data looks: a space copied along with text from a PDF, Greece coded GR, a tariff code that lost its leading zero in a spreadsheet, 840 kg written into a field expecting a number. And the most expensive of them produces no error message at all, because it happens after ANAF has already given you a code.

Where e-Transport declaration errors come from

Validation runs in two stages, at different moments. On upload, ANAF checks the structure of the XML file and, if it passes, returns the UIT code straight away. The content rules run afterwards, and their result is read through a separate status call. The route from data to code is described in the guide on how to get a UIT code in Romania.

That split explains the shape of everything below. Some errors fail on structure, in seconds. Some fail on content, later. One never fails, and lets you believe you declared.

Formatting errors that break an otherwise correct file

Text fields in the ANAF schema are not free strings. They are token-typed: no leading or trailing spaces, no double spaces. A single extra space, copied along with the text from a PDF or an email, invalidates the whole file. It is invisible on screen.

What you send What ANAF expects Where it comes from
Alfa SRL Alfa SRL copy-paste from a PDF or email
GR for Greece EL the ISO code used by most ERP systems
8031010 08031010 a spreadsheet read the NC code as a number
840 kg 840 the unit written into the quantity field
pcs H87 the unit in words instead of its nomenclature code
kg KGM same

Greece is worth a note of its own, because it catches exporters rather than Romanians. The country code in this system is EL, and GR does not appear in the nomenclature at all. Your invoicing system, your customs software and your carrier’s TMS all use GR. One address in Thessaloniki, and the file fails with a message about a value outside the accepted list.

Tariff codes are worth another. 08031010 becomes 8031010 as soon as the cell is formatted as a number, and nothing warns you. Any column carrying NC codes has to be text in every file it passes through, not just in the one submitted.

The error no software should fix for you

The problems above are repairable without asking anyone, because the value is recoverable. 840 kg contains exactly one number. pcs maps to exactly one code.

Net weight does not work that way. The gap between gross and net is packaging, and packaging cannot be computed from the other figures. A file carrying only gross weight cannot be completed by any tool, and one that tries produces a declaration that is plausible and false. A person has to decide.

The expensive one: a UIT code is not an acceptance

ANAF returns the UIT code at upload, before the content rules run. The declaration that received the code can be rejected a minute later, and until the status call comes back, a good declaration and a doomed one look identical.

One response is misread more often than any other: the message saying the XML has errors and was not taken over by the system is a rejection, not a pending state. The declaration never entered ANAF’s system, so it will never become accepted. Read as “still processing”, it has people polling for days about something that does not exist. Correct the cause and send a new declaration, which receives a new code.

The same caution applies to any status you do not recognise. Reading an unknown answer as success is the most costly assumption available; treat the declaration as still open and ask again.

Rules that do not exist

The last error is not in the data but in the assumptions built around it. Teams decide a customs office is mandatory for every import and export, then fill it in everywhere. The validation rule that would have required it is disabled in version 2.0.1 of the official rule file published by ANAF. The restrictions that do exist concern the border crossing point and the customs office depending on the operation type, and an address is not forbidden at any end of the route, for any operation.

Check before writing a rule into an internal procedure. An invented requirement costs time on every shipment, indefinitely.

What stays yours

Software can fix a format. It cannot know whether the goods in the truck are the goods in the file, or whether the operation type is the real one. The responsibility for the content of a declaration stays with the party required to declare, under OUG 41/2022, art. 8 to 9.

Official explanations, with examples, are in ANAF’s RO e-Transport guide (2025), and the schema, nomenclatures and rule file are on the Ministry of Finance technical information page.

Frequently asked questions

Why did ANAF reject my declaration after giving me a UIT code?

Because validation happens in two stages. ANAF checks the structure of the submitted file first and returns the UIT code if it passes. The content rules run afterwards, and their result is read through a separate status call. A code in hand means the file was well formed, not that the declaration was accepted. Always read the status before relying on the code.

Why is Greece EL and not GR in RO e-Transport?

The country nomenclature used by the system contains EL for Greece and does not contain GR at all, even though most invoicing and ERP systems use GR. A loading or unloading address in Greece coded as GR fails validation, and the error message refers to a value outside the accepted list rather than naming Greece, which makes it hard to recognise.

How do I stop Excel removing the leading zero from an NC code?

Format the column as text before typing or pasting the codes. A Combined Nomenclature code such as 08031010 becomes 8031010 the moment the cell is treated as a number, and the digit is removed without a warning. The rule applies to every file that moves between your ERP, your warehouse and whoever submits the declaration, not only the final one.

Can software fill in the net weight for me?

No, and it should not try. The difference between gross and net weight is packaging, which cannot be derived from the other figures. Good software repairs formatting problems it can resolve, such as a quantity written as 840 kg in a numeric field, and stops where a value is genuinely missing. Anything else produces a declaration that looks plausible and is wrong.

Is a customs office always mandatory for imports and exports?

Not in the way many processes assume. The rule in the official validation file that would have required a customs office for imports and exports is disabled in version 2.0.1 published by ANAF, so it does not apply. Real restrictions concern the border crossing point and the customs office depending on the operation type. An address is not forbidden at any end of the route.

Read next

Your first UIT code in 5 minutes

Account, company, ANAF authorisation with your digital certificate, first declaration. 14 days free, no card.