How the tools calculate
Every tool runs in your browser. A QR image, a Facturae file you open or the data you type into the creator stay on your device: no upload, no account, no storage. The basis is the text published in the BOE (Spain’s official gazette) and the technical specifications of the Spanish Tax Agency (AEAT). Latest reading: 25 October 2026.
Dates and thresholds
The calculators read their values from a single file in which every figure carries its source and reading date. For Verifactu: systems adapted before 1 January 2027 for corporate income taxpayers and before 1 July 2027 for everyone else, under the fourth final provision of RD 1007/2023 as worded by RDL 15/2025. Before that text the dates were 1 January and 1 July 2026 (RD 254/2025). For B2B e-invoicing: 12 months (turnover above €8,000,000) or 24 months counted from the entry into force of Order HAC/1028/2026 on 6 October 2026. The resulting dates, 6 October 2027 and 6 October 2028, are our date-to-date calculation: the BOE does not spell them out.
Day-count deadlines
SII deadlines and B2B invoice status deadlines count calendar days excluding Saturdays, Sundays and national holidays. We use the national holidays common to all regions published in the Directorate-General for Labour resolutions for 2026 and 2027. For dates in other years the tool says so.
The hash
The calculator applies the algorithm in the AEAT document (version 0.1.2): a field=value string joined by “&”, values trimmed, UTF-8 encoding and SHA-256 in uppercase hexadecimal. The SHA-256 is written in plain JavaScript, independent of the browser. Automated tests check that it returns exactly the three hashes the AEAT publishes for its registration, chained registration and cancellation examples.
The QR code
The reader recognises production and test matching URLs in both variants (VERI*FACTU and non-VERI*FACTU) and checks each parameter against the QR specification (version 0.5.0): a 9-character tax ID, a series and number of up to 60 printable characters, a DD-MM-YYYY date and up to 12 digits with 2 decimals. It applies the modulo-23 check to DNI and NIE letters. A correct format does not prove the invoice exists: only the AEAT matching page can say that.
Facturae
The creator produces an unsigned Facturae 3.2.2 XML. Tests build sample invoices (to a business and to a public body with its three DIR3 codes, with and without withholding) and validate them with xmllint against the official Facturae 3.2.2 schema, downloaded from facturae.gob.es at test time and not copied into the site. The viewer recalculates sums, tax amounts and total, and says whether the file is signed; it does not validate the certificate.
Limits
The tools do not know your books or contracts. Foral territories are covered only to say that their own rules apply. No tool signs, sends records to the AEAT or replaces a compliant invoicing system. Penalties use the fixed amounts in article 201 bis; the actual decision rests with the tax authority.
Updates
We reread the BOE and the AEAT website regularly. A change goes live only once every test passes again. Report errors through the contact page; how we correct them is set out in the editorial policy.