Your Luxembourg VAT return follows a precise calendar, tied to your turnover, and must go through an eCDF file. Here is how Odoo prepares it, on which deadlines, and where the errors that end in a correction slip in.

In short. In Luxembourg, how often you file a VAT return depends on your annual turnover excluding tax: annual filing up to 112,000 €, quarterly between 112,000 € and 620,000 €, monthly above 620,000 €. Under the annual regime, the return is due by 1 March of the following year. Under the monthly or quarterly regime, an annual recapitulative return is added to the periodic ones and is due by 1 May. Every return is filed on the eCDF platform, either through the online form or by uploading an XML file. Odoo produces the VAT report and the data to upload, provided the rates and fiscal positions were set up correctly beforehand.

The question isn't whether Odoo "does" Luxembourg VAT: its localization handles it. The real question, the one that comes back every month or every quarter, is more down to earth. How often must you file, which file do you produce, and how do you generate it from Odoo without re-keying anything? Here is the actual path of a VAT return, from closing the period to filing on eCDF.

How often must you file VAT in Luxembourg?

Your VAT filing frequency depends on your annual turnover excluding tax. Three regimes exist. Monthly filing is the regime provided by default, and it is the authorities who determine which one applies to you, then notify you of it.

Annual turnover (excl. tax)Filing frequencyAnnual deadline
Up to 112,000 €Annual, with no interim periodic returnBy 1 March of the following year
From 112,000 € to 620,000 €Quarterly, by the 15th of the month following the quarterRecapitulative return by 1 May
Above 620,000 €Monthly, by the 15th of the following monthRecapitulative return by 1 May

Under both the monthly and the quarterly regime, an annual recapitulative return consolidates the year and is due by 1 May of the following year. It is not a mere formality: it reconciles any gaps between your periodic returns and the actual accounting of the year, and it does not replace the December or fourth-quarter return. An SME that crosses the 620,000 € threshold switches to monthly filing, and the Odoo setup has to follow that change of rhythm, otherwise you produce the right file on the wrong frequency.

How Odoo prepares your VAT return

In Odoo, the return is not keyed in: it is generated from the period's entries. The Accounting module aggregates the VAT collected on your sales and the deductible VAT on your purchases, then shows the balance in a VAT report. In practice, the flow is always the same.

  1. Close the period. You check that every sales and purchase invoice for the period has been recorded and validated. One forgotten invoice and the return is wrong from the start.
  2. Run the VAT report. Odoo breaks it down by rate (17%, 14%, 8%, 3%) and by transaction type, with the balance to pay or to reclaim.
  3. Generate the file for eCDF. The Luxembourg localization lets you export the data in the format the platform expects. You then log in to eCDF (www.ecdf.lu) with your LuxTrust electronic certificate and either upload the XML file or carry the values into the online form.

One point to clear up a common misunderstanding: Odoo prepares the return, it does not transmit it to the authorities on its own. The final submission is still an action you, or your accounting firm, perform on eCDF. Once the submission is validated, the return is made available to the AED with no further step. What Odoo saves you is the whole upstream work of calculation and formatting, provided the initial configuration is correct.

A useful clarification, because the two State portals are often mixed up. VAT returns are filed on eCDF. MyGuichet.lu serves other steps of the VAT cycle: the initial registration with the AED and viewing your VAT account through the eTVA-C application.

The deadlines to meet, and what missing them costs

Under the monthly and quarterly regimes, the return and the payment are in principle due by the 15th of the month following the period filed. A late filing or payment exposes you to late interest and, depending on the case, administrative fines. The useful habit is not to memorize an amount, which changes, but to hold the calendar: closing the books in Odoo a few days before the deadline leaves time to check the report rather than send it in a rush.

This is where accounting kept up to date in Odoo really pays off. If invoices are recorded as they come in, the return is just an end-of-period export. If they pile up, every deadline becomes a sprint, with the error risk that comes with it.

The mistakes that distort a VAT return in Odoo

Rates are rarely the problem: they are pre-configured. Errors almost always come from fiscal positions, the mechanism that automatically decides which account and which box of the return apply depending on the customer or supplier.

Three cases account for most of the gaps. An intra-EU sale to a business customer in another member state must go out without Luxembourg VAT and feed the right line: if the customer's fiscal position isn't set, Odoo applies local VAT and the return is distorted. The reverse charge on services received from abroad follows the same logic in mirror. Both mechanisms, and the recapitulative statements they trigger, are covered in our guide to intra-EU VAT in Luxembourg. Finally, the transaction date matters: an invoice attached to the wrong period shifts the VAT by a month or a quarter. These settings are not improvised the night before the deadline; they are validated once, at configuration, then checked by sampling. Setting up that foundation is covered in our guide to setting up Luxembourg accounting in Odoo. And if your intra-EU goods trade crosses STATEC's thresholds, those same fiscal positions feed another monthly obligation: the Intrastat declaration in Luxembourg.

This is exactly where Advena's perspective makes the difference. An Odoo integrator knows how to switch on the VAT module; an accountant knows the boxes of the eCDF return and the treatment of intra-EU transactions. Few master both at once. A fiscal position that is technically valid can be fiscally wrong, and the error only shows up at an audit or at the annual recapitulative return. Bringing the tool and Luxembourg compliance under one roof is precisely what lets you test a return on a real period before it goes to the authorities.

Frequently asked questions

How often do you file VAT in Luxembourg?

The frequency depends on annual turnover excluding tax: annual filing up to 112,000 €, quarterly between 112,000 € and 620,000 €, monthly above 620,000 €. Under the annual regime, filing is due by 1 March of the following year. Under the monthly or quarterly regime, an annual recapitulative return is added, due by 1 May.

How do you generate the VAT return in Odoo?

You validate the period's invoices, run the VAT report in the Accounting module (broken down by rate and transaction type), then export the data in eCDF format. The report is built from the entries: nothing to re-key if the bookkeeping is current.

Does Odoo file the return directly on eCDF?

No. Odoo prepares the return and the data file, but the submission happens on the eCDF platform, after logging in with a LuxTrust electronic certificate. The tool automates the calculation and formatting, not the final transmission.

Are VAT returns filed on MyGuichet.lu?

No. VAT returns are filed exclusively through eCDF (www.ecdf.lu), either through the online form or by uploading an XML file. MyGuichet.lu is used for VAT registration and for viewing the VAT account through eTVA-C.

Which VAT rates does Odoo apply in Luxembourg?

The four rates in force in 2026: 17% (standard), 14% (intermediate), 8% (reduced) and 3% (super-reduced), completed by fiscal positions for intra-EU transactions, reverse charge and exports.

What happens if you file late?

Under the monthly and quarterly regimes, the return and payment are due by the 15th of the month following the period. A delay exposes you to late interest and, depending on the situation, administrative fines. Better to close the books in Odoo a few days before the deadline to keep time to check.

Why Advena?

  • Finance and digital under one roof: the VAT return is handled inside the Odoo project, not pushed onto a third party.
  • Compliance tested on your real data: fiscal positions and eCDF export validated on a first period before go-live.
  • Clear packages, no hourly billing: you know what you pay, right from the start.
  • Direct access to the founders: it's the partners who work with you, not a junior.

Going further: Setting up Luxembourg accounting in Odoo: PCN, FAIA and eCDF · Intrastat declaration in Luxembourg: thresholds, deadlines and preparing it from Odoo · E-invoicing in Luxembourg: obligations, Peppol and Odoo · Odoo in Luxembourg: is it the right ERP for your SME?

Want Luxembourg VAT that files without stress from Odoo?

Book a free diagnostic