Verifactu software: the problem isn’t the invoices, it’s the data

What Verifactu is, the 2027 deadlines, whether it’s mandatory and which Verifactu software you need. The challenge isn’t the invoice: it’s the data behind it.

Illustration for “Verifactu software: the problem isn’t the invoices, it’s the data”

Verifactu software is an invoicing system that complies with Spain’s regulation on invoicing systems: it records every invoice, chains it to the previous one, adds a QR code and can send the record to the Spanish Tax Agency (AEAT). Switching to one solves the format and the submission. What it doesn’t solve is the quality of the data that reaches the invoice, and that’s where the real work is.

In many companies, an invoice is the last step in a fairly handcrafted chain. The quote was approved by email. The order lives in a spreadsheet. The customer’s tax details are in another one. At the end of the month someone pulls it all together, types it into the invoicing program and sends a PDF. It works because one person knows the way.

The two regulations on their way don’t change that last step. They change what that last step demands from every step before it.

The rules ask for structured data at the end of the chain. Whoever has it in a mess at the start will pay for it there.

What Verifactu is and when it comes into force

These are two separate obligations that are often confused. This is a summary to get your bearings, not tax advice: for the details of your case, talk to your adviser.

Verifactu. Invoicing systems must meet the requirements of Royal Decree 1007/2023. Following the extension in Royal Decree-law 15/2025, according to the Spanish Tax Agency, Corporate Income Tax payers must have them adapted before 1 January 2027, and everyone else before 1 July 2027.

Business-to-business e-invoicing. Royal Decree 238/2026, published in Spain’s Official Gazette on 31 March 2026, requires businesses and professionals to issue and receive structured electronic invoices in their dealings with other businesses. The Tax Agency’s note explains two points that matter here:

  • Whoever receives the invoice will have to report its commercial acceptance or rejection, and full payment with its dates.
  • It will apply twelve months after the implementing ministerial order comes into force for those with a turnover above €8 million, and twenty-four months after for everyone else.

In other words: issuing correctly isn’t enough. You’ll also need to know, and report, what happens to each invoice afterwards.

Verifactu software: the invoice is the last link

An adapted invoicing program handles the format, the record and the submission. What it doesn’t handle is the quality of what it receives. And that’s usually where the real problem lies:

  • Scattered customer data. The same customer appears with three company names and two tax IDs in different places.
  • Orders that don’t exist as data. What was sold lives in an email thread, not in a record.
  • Prices that change without a trace. The invoice goes out with today’s price, not the one that was agreed.
  • Statuses nobody records. Whether it was accepted, rejected or when it was paid is known by a person, not a system.

As long as everything ends in a PDF, a person can paper over those gaps by hand. When the invoice is a structured message and so are its statuses, the gaps turn into errors.

What I’ve learned building systems where data matters

I haven’t built an invoicing system, and I don’t think most companies should. But I have had to solve the same underlying problem in other contexts.

In Lantilla.com, an online photography shop I built with presentation and size variants, each order stores a snapshot of the title, variant and price at the moment of purchase. If the price of a photo changes tomorrow, yesterday’s order still says what was sold. Orders have explicit statuses, from pending to delivered or cancelled.

In Gustela CRM, a sales CRM, the compliance rules (who mustn’t receive any more messages) live on the server and are applied before anything is queued. They don’t depend on anyone remembering.

Gustela CRM send queue with the campaign, status and date of each send; leads and recipients blurred.
Gustela CRM · send queue (recipients blurred)

And at Rocio.com the first decision was to normalise before building anything on top: with 320,093 rows of metadata stored as text, any new feature would have inherited the problem.

Rocio.com events calendar with each day’s events.
Rocio.com · calendar view, on normalised data

All three ideas apply equally to invoicing: capture the data when it’s born, store what was agreed rather than what’s true today, and put the rules in the system rather than in someone’s memory.

Standard or custom Verifactu software

Invoicing is a standard process, and the sensible thing is to handle it with a good product adapted to the rules. Building it custom would be expensive and add nothing. Custom work belongs only where what sets you apart lies.

What may need work of your own is what comes before the invoice: the order, the quote, the customer record, the process a spreadsheet holds up today. Sometimes connecting what already exists is enough. Other times a small missing piece is needed to capture that data properly from the start.

There’s a different case: companies that already invoice from in-house software, a custom ERP or an old application. There’s no update to download. The AEAT is clear that if the company developed the software itself, it’s the company that has to certify it. How it’s integrated, which routes exist and who signs the declaration of conformity is covered in Verifactu API: how to integrate Verifactu into your software or ERP.

A review before 2027

Before switching programs, it’s worth answering these questions:

  1. Where does each piece of data that ends up on an invoice come from: customer, item, quantity, price?
  2. How many times is it copied by hand between its source and the invoice?
  3. Is there a single record for each customer, or several versions?
  4. Is the agreed price recorded, or recalculated at invoicing time?
  5. Who knows today whether an invoice was accepted, rejected or paid, and where do they note it down?

If the answers lead to spreadsheets and specific people, the regulatory change is a good opportunity to tidy up the process, not just to change programs.

An electronic invoice is only as good as the data that reaches it.

Verifactu FAQ

What is Verifactu?

It’s the system set out in Royal Decree 1007/2023 to make sure invoicing programs guarantee invoices aren’t altered: each invoice generates a record chained to the previous one, the invoice carries a QR code and the record can be sent to the Tax Agency. “VERI*FACTU” is also the name of the mode in which those records are sent immediately.

Is Verifactu mandatory?

For most companies and self-employed professionals in Spain who invoice with a program, yes. The Tax Agency sums it up with its “rule of the four NOs”: it applies to those who don’t invoice only by hand, aren’t on the SII, aren’t based in the Basque Country or Navarre, and have no exemption ruling.

When does Verifactu come into force?

According to the Tax Agency, after Royal Decree-law 15/2025: before 1 January 2027 for Corporate Income Tax payers and before 1 July 2027 for everyone else. The deadlines have already moved once; check the AEAT website before planning.

Which Verifactu invoicing software do I need?

If your invoicing process is standard, an adapted program from the market, which should come with its producer’s declaration of conformity. If you invoice from in-house or custom software, you either adapt and certify it yourself, or move invoicing to an adapted program and integrate it with the rest.

If your process runs on a spreadsheet or an inbox, custom web applications explains how I solve that specific bottleneck. And if the problem is manual copying between systems, process automation covers how I choose between rules, integrations and human approval.

What does your business need to solve?

Tell me the problem, the data you have, the constraints and the goal. You don’t need to know yet what has to be built.