The SPFE in Spain's e-invoicing system is the free public platform the AEAT will run for mandatory B2B invoicing. It stores faithful copies, connects trading parties, and tracks payment status. This guide breaks down how it works, the format it uses, and where it sits next to FACe and Verifactu.
Key takeaways
- The SPFE is the AEAT-run public platform for the Spain B2B e-invoice exchange. Private platforms sit beside it in a hybrid model, so you can use one, the other, or both.
- Large firms with turnover above €8 million start from 1 October 2027. Everyone else follows from 1 October 2028.
- The Spain public electronic invoicing solution runs on UBL 2.5, aligned to EN 16931:2026. Facturae does not work here.
- Silence on a received invoice counts as acceptance. SPFE invoice status reporting in Spain is tax data now, not private commercial chatter.
- FACe still covers B2G. Verifactu is a separate software layer. Neither one replaces the SPFE.
The SPFE (Solución Pública de Facturación Electrónica) is the free public rail the AEAT built for mandatory B2B e-invoicing. It does three jobs at once: it lets small businesses issue invoices directly, it acts as the universal repository for a copy of every invoice, and it reports payment status.
The legal chain is short. Crea y Crece (Ley 18/2022), then Royal Decree 238/2026, then a draft Ministerial Order that sets the technical detail. On 1 June 2026 the AEAT published two documents, one functional and one technical, that finally show how the AEAT e-invoicing platform in Spain will actually run.
One caveat to hold onto. The order is still a draft. Dates can move before they hit the BOE.
Every date below counts from the order's entry into force, set at 1 October 2026 in the draft.
Date | Who | What applies |
| 1 Oct 2027 | Large taxpayers (turnover above €8M) | E-invoice issuance and payment status reporting become mandatory |
| 1 Oct 2028 | Everyone else, including SME legal entities and autónomos above scope | E-invoicing and payment status reporting become mandatory |
| 1 Oct 2029 | Self-employed traders under the income allocation regime (IRPF attribution) (turnover €8M or below) | Invoice status reporting begins after the relief period |
Issuance comes first, sorted by size. Status reporting follows. The smallest taxpayers get the longest runway, which is fair but easy to misread as "not my problem yet".
The platform wears four hats:
The AEAT is blunt about what it is not. Not an ERP module. Not a backup for your private platform. Not free cloud storage. It is a regulated public utility, and treating it as anything else will bite you later.
Spain chose a hybrid model on purpose. You issue directly through the SPFE, or through a private platform, or you mix both.
Here is the rule people miss. Even when an invoice travels over a private platform, a faithful copy (copia fiel) must reach the SPFE at the same moment. The copy must be identified as such in a dedicated field of the UBL invoice. If you issue directly on the SPFE, no separate copy is needed. The invoice already lives inside the system.
Validation runs in two layers, and you should build both into your own stack:
The AEAT will not host a live online validator. It publishes the Schematron files, XSD schemas, and sample invoices instead. So you validate before you transmit, or you find out the hard way after rejection.
Each invoice carries a unique code built from the issuer's NIF, series and number, and issue date. That makes deduplication automatic, and the system blocks a second submission of the same code. An accepted invoice cannot be overwritten. If an original electronic invoice turns out to be invalid because it does not correspond to the documented transaction, the invoice and its certified copy may be removed from the SPFE, and the removal itself is traceable. On acceptance, the SPFE returns a Secure Verification Code (CSV) as your acknowledgement.
Different platforms, different jobs. Do not confuse them.
Aspect | FACe | SPFE |
| Covers | B2G (invoices to public bodies) | B2B (business to business) |
| Live since | January 2015 | Phased from October 2027 |
| Format | Facturae XML | UBL 2.5 (EN 16931:2026) |
| Run by | Public administration | AEAT |
If you already send invoices to a ministry or a council through FACe, that workflow does not change. The SPFE is a separate obligation for your private-sector customers.
The SPFE runs on UBL syntax aligned to EN 16931. The wider Spanish B2B system also tolerates CII at the EN 16931 layer, but the public solution narrows to one syntax for simplicity. Facturae stays valid for B2G through FACe, and it may travel between private platforms, but it cannot be submitted to the SPFE.
The AEAT has indicated it will use UBL 2.5 / the 2026 revision of EN 16931. EN 16931-1:2026 was rebuilt for B2B complexity and ViDA-era reporting. Since those versions natively support Spanish requirements (retenciones, recargo de equivalencia, corrective invoices). Final technical specifications will be published on the AEAT portal.
They get mixed up constantly, so let me be clear. Verifactu (RD 1007/2023) governs your invoicing software. It forces hash-chained records, QR codes, and optional real-time reporting to the AEAT. It is a link between your software and the tax authority.
The SPFE governs the exchange of an invoice between two businesses. One is about the integrity of your billing records. The other is about how the document travels. You will likely need both, and they do not substitute for each other.
Thin pass-through platforms are finished. Spain's e-invoicing interoperability rules for private platforms leave no room for invoice-by-invoice routing.
Miss the apoderamiento step and you can send on a client's behalf but cannot pull anything back for them. That gap surprises teams during onboarding, not before.
The two AEAT documents do not change Spain's direction, they remove the guesswork about the SPFE. Firms that treat October 2027 as a build deadline now, rather than a 2027 problem, are the ones who will not be scrambling later.