Skip to main content

VAT Declaration

The VAT Declaration screen aggregates every invoice booked in a period on the lines of the French CA3 form — sales / purchases × France / intra-EU / outside-EU × VAT rate × invoice type. Each rate unfolds into its transaction types and the individual invoices that make it up, and the result exports to Excel for accounting or to a CA3-styled PDF you can hand to the accountant.

Use this page when:

  • you're preparing the monthly or quarterly VAT return and want a CA3-aligned summary built directly from the invoices already in the platform;
  • you need to reconcile a CA3 line with the underlying invoices — which buyers, which document numbers, which amounts;
  • you want a printable synthesis of the period to attach to the accounting file.

The page applies regardless of source system — JD Edwards, SAP, NetSuite or a custom ERP. The period filter is read on the invoice's issue date — the date printed on the invoice itself — so the period stays stable even if the underlying data is rebuilt later.

The matrix is served from the persisted VAT detail rows (F564234), not by re-parsing every UBL on each load — so the page opens in a couple of seconds whether the period has 2 000 invoices or 200 000. To keep it that way, leave Store VAT details on under Settings → Connectors → db-nomaubl → Tables — see Detail Storage.


At a glance​

VAT declarationThe VAT of a period in the CA3 layout: collected, deductible and net; each rate unfolds into transaction types, then invoices.MonthQuarter2026 ▾September ▾All companies ▾Exclude refused and rejectedExclude invoices not at the platformExcelPDF1 Sep 2026 – 30 Sep 2026compared with 1 Aug 2026 – 31 Aug 2026VAT COLLECTED250,631.56 €1,253,157.80 € excl. VAT · 2,361 invoices+4.2 % vs 240,524.10 €VAT DEDUCTIBLE98,412.30 €492,061.50 € excl. VAT · 418 invoices−1.8 % vs 100,216.00 €VAT DUE152,219.26 €Collected − deductible+8.6 % vs 140,308.10 €LINEBASE HTVATINVOICESSales (VAT collected)1,253,157.80250,631.562,361 France1,101,840.00220,368.002,102 ▸ 20 %1,080,000.00216,000.002,050 ▸ 10 %21,840.002,184.0052 Intra-EU151,317.8030,263.56259Purchases (VAT deductible)492,061.5098,412.30418VAT due — Collected − deductible152,219.26Month or quarterlast full month by defaultThree headline figuresvs previous month or quarterDirection, zone, ratetotals on each lineNet VATdue or creditCompanyfrom the list of companiesTwo exclusionsexplained on hoverExcel and PDFsummary + details · CA3A rate unfoldsinto types, then invoices

Filter bar​

One bar sets the period, the company and the two exclusions, as on the dashboards.

ControlEffect
Month / QuarterMonthly or quarterly declaration. The page opens on the previous full month — the one you file.
Year and month / quarterThe period: the current year and the five before it; a month name, or Q1 to Q4. The tag below the bar shows the dates and the previous period used for the changes (compared with …). The period is read on the invoice's issue date, so it stays stable even if the data is rebuilt later.
CompanyA picker of the companies (the list-companies custom list); All companies by default.
Exclude refused and rejectedOn by default. Refused (210) and rejected (213) invoices call for an internal credit note: on, all are left out; off, only those customer service marked reviewed — see Invoices left out. The explanation shows on hover.
Exclude invoices not at the platformOff by default. Also leaves out the invoices flagged to be sent whose status is still internal: validation, send or import failure, or not yet sent.
ExcelDownloads the workbook described under Excel export.
PDFDownloads the CA3-styled synthesis described under PDF export — CA3 form layout.

Headline figures​

FigureValueSub-line
VAT collectedVAT of the sales.Base excl. VAT and number of invoices.
VAT deductibleVAT of the purchases.Base excl. VAT and number of invoices.
VAT due / VAT creditCollected minus deductible; shown as VAT credit, in green, when it is negative.Collected − deductible.

Below each figure, the change from the previous month or quarter (+4.2 %) and the previous amount (vs …), computed with the same company and the same exclusions.


Invoices left out​

The declaration counts the invoices issued in the period, minus:

CaseLeft out when
Refused by the buyer (210) or rejected by the platform (213)Exclude all refused and rejected is checked (default) — or, unchecked, once customer service has marked the invoice reviewed in its window, the internal credit note being done.
To be sent, never reached the platformExclude to-send invoices not at the platform is checked: the invoice is flagged to be sent and its status is still internal (99xx other than 9906, pending at the platform, and 9911, export validated).

The two rules apply to the matrix, the unfolded invoices, the Excel export and the PDF, whose footer states the rules applied. Over the API, the same choices are the excludeMode (all or reviewed) and excludeUnsent parameters.


The CA3 matrix​

The table reads by direction, then by country group, then by rate:

RowContent
Sales (VAT collected) / Purchases (VAT deductible)The direction with its totals — taxable base (Base HT), VAT and invoice count. Sales come first; a direction without invoices is not shown.
France, Intra-EU, Outside EUEach country group once, with its subtotal.
Rate (20 %, 10 %…, No rate)One row per rate found in the group, highest first, collapsed. Its chevron opens one row per BAR routing (B2B, B2C, B2BINT, B2G…), whose chevron opens the invoices — document, type, company, base and VAT, up to 200 rows (the Excel export holds the full list).
VAT due / VAT creditThe net VAT of the period, Collected − deductible.

The amounts are not links to the Invoices list, which cannot filter by VAT rate nor apply the two exclusions: the invoices behind a figure are read by unfolding its rate and routing rows, or in the Details sheet of the Excel export. Amounts, rates and percentages follow the number format of the interface language.

Country group rules​

The classification reads from the counterparty country captured on each invoice at insert time (buyer country on sales, supplier country on purchases) and from the Sales / Purchases direction stored on the invoice (UHDRIN).

Country groupSales (issued)Purchases (received)
FranceBuyer country = FR, or unknown.Supplier country = FR, or unknown.
Intra-EUBuyer country in the 26 other EU member states.Supplier country in the 26 other EU member states.
Outside EUAny other country.Any other country.

VAT rates rolled up under Intra-EU sales and Outside-EU sales appear as exempt (—) — they do not contribute to the VAT column, only to the taxable base. Intra-EU acquisitions on the Purchases side carry self-assessed VAT and contribute to both the taxable base and the VAT amount.


When the matrix is empty​

If the database does not yet hold any VAT detail row (F564234) for the selected period — typically right after Store VAT details was turned on but before any historical data was rebuilt — the page no longer shows a misleading empty matrix. It surfaces the exact command line to run, with the dates of the selected period already filled in:

⚠ No VAT details for April 2026
The database does not hold any VAT detail row for this period. Run the rebuild command once, then reopen the page:
./nomaubl.sh backfill-vat prod 2026-04-01 2026-04-30
Safe to re-run on the same period without creating duplicates.

The command is documented under Command Line → backfill-vat. Once the rebuild has run, reopen the VAT page and the matrix is populated as expected.

A server-side failure — a database error, for instance — is never shown as an empty period: the page displays the error message, and the error is written to the server log.


Excel export​

The Excel button downloads vat-declaration-<from>-<to>.xlsx, with two sheets:

SheetContent
SummaryMirrors the on-screen matrix — sales / purchases × country group × rate × type — with subtotals per country group and per direction.
DetailsOne row per invoice contributing to the period: document number, document type, company, counterparty name, counterparty country, BAR routing, taxable base, VAT amount, currency, issue date.

Numeric cells are written as real numbers, not as text. Totals, pivot tables and downstream Excel formulas work without any clean-up.


PDF export — CA3 form layout​

The PDF button downloads a one-page synthesis styled like the official Cerfa 3310-CA3 (vat-declaration-<from>-<to>.pdf), so it can be filed alongside the rest of the accounting paperwork without re-typing. The PDF is in French whatever the interface language, with French number formats: amounts 125 315,78, rates 5,5 %, period 01/09/2026 – 30/09/2026. Its footer states the exclusion rules applied.

BlockCA3 lines
Section A — Operations realisedLine 01 (sales subject to VAT), 03 (intra-EU acquisitions), 04 (exports outside EU), 06 (intra-EU deliveries), 7B (purchases of goods and services outside the EU).
Section B — VAT brute then déductibleOne row per applicable rate: 08 (20%), 9B (10%), 09 (5.5%), 10 (2.1%) and 14 (other rates), with total 16. Then 20 (déductible VAT on goods and services) and total 23.
SoldeEither 28 (VAT à payer) when the period ends in debt, or 32 (crédit) when déductible VAT outweighs collected VAT.

The PDF is meant as a printable synthesis — not a substitute for filing on the DGFiP portal.


Note on existing data​

Invoices created before this release have no counterparty country on file. They are classified as Domestic by default until the underlying invoice is re-processed (so the country is captured from the UBL document and persisted). Any new invoice from now on lands with the correct country.

If you spot an intra-EU or outside-EU invoice still showing under Domestic, re-running it from the Invoices list (Edit → Save, or a fresh Process from Sync → Fetch Input) refreshes the country.