Romania e-TVA Reconciliation
ANAF e-TVA pre-filled VAT return reconciled against the Odoo D300 — box-by-box, with a ready conformance-response draft
Romania's e-TVA mechanism has ANAF pre-fill a VAT return for every taxpayer from the data it already holds — e-Factura, e-Transport, SAF-T D406 and the cash registers. You receive a notificare de conformare and must reconcile it against your own D300 (decont de TVA) and respond to every material difference. This app does the reconciliation inside Odoo: it rebuilds the D300 boxes from your posted moves, fetches the ANAF pre-fill through your own SPV credentials, and flags each gap.
D300 box engine
Rebuilds the Romanian VAT-return boxes from your posted customer and vendor moves: collected VAT at 19% / 9% / 5%, intra-Community acquisitions and domestic reverse charge (taxare inversa), zero-rated and exempt supplies, and deductible VAT — grouped by the standard D300 row numbers with base and tax per box. Rate-driven, so it survives VAT reforms.
ANAF e-TVA pre-fill fetch (BYOK)
Pulls the pre-filled return for a fiscal period over the documented ANAF SPV REST API using your own OAuth2 access token — the same credential as e-Factura. Test and production hosts default to the published ANAF endpoints but stay fully editable. Nothing is bundled.
Reconciliation algorithm
Box-by-box comparison with a configurable rounding tolerance and a signed VAT difference, classified MATCH / ROUNDING / UNDER / OVER / ONLY IN ODOO / ONLY AT ANAF, plus an overall net-VAT delta and a materiality flag for the whole return.
Difference report & response draft
A reconciliation record with one colour-coded line per VAT box — the ANAF figure, the Odoo figure and the gap — and a generated conformance-response text that lists each material difference for your reply to ANAF, with a per-line note you edit before lodging.
Built on Romania e-Factura
Reuses the official ANAF CUI/CIF control-digit validator (key 753217532) and the SPV connection from the e-Factura module, so a single set of SPV credentials drives both e-Factura submission and e-TVA reconciliation. An optional daily cron refreshes the pre-fill and re-runs the comparison for open periods, with full transport logging.
Compatibility & data handling
Compatible with Odoo 18 and Odoo 19. This module transmits only the fiscal-period query to the ANAF SPV endpoint you configure and reads back the pre-filled return. Your OAuth2 token and fiscal code are stored solely on your own database and are never sent anywhere else.
Screenshots
E Tva Reconciliation D300 Bo
E Tva Reconciliations List P
Update date: 2026-07-02