Summary
Add support for country-specific electronic invoice submission providers, starting with Spain's VERI*FACTU system.
The feature would allow Frappe Books to optionally submit invoices to government-mandated electronic invoicing systems while keeping the existing invoicing workflow unchanged. A provider-based architecture would also make it possible to support similar systems in other countries in the future.
What problem are you trying to solve?
Frappe Books is an excellent desktop accounting application for freelancers and small businesses. However, in Spain, businesses are moving towards mandatory compliance with the VERI*FACTU invoicing system defined by the Spanish Tax Agency (AEAT).
Without VERI*FACTU support, Spanish businesses cannot rely on Frappe Books as their primary invoicing solution once the regulation applies to them, even though the rest of the application already meets most of their needs.
Adding support for VERI*FACTU would make Frappe Books a viable option for Spanish users and could serve as the foundation for supporting similar electronic invoice reporting systems required by other countries.
OFFICIAL documentation and information about VERI*FACTU
Basic Example
A possible workflow could be:
-
The user enables an optional Invoice Submission Provider in the company settings.
-
The user selects Spain – VERI*FACTU as the provider and configures the required credentials or digital certificate.
-
The user creates the invoice normally and clicks Finalize (or Submit).
-
Before the invoice PDF is generated, Frappe Books creates the required VERI*FACTU invoice record and submits it to the Spanish Tax Agency (AEAT).
-
Once the submission succeeds (or once all required QR information is available), Frappe Books generates the final invoice PDF, automatically embedding:
- the mandatory VERI*FACTU QR code,
- the required text ("VERI*FACTU" or "Factura verificable en la sede electrónica de la AEAT"),
- and any other metadata required by the regulation.
-
The finalized PDF is stored as the official invoice and is the version delivered to the customer.
-
The invoice record stores the submission status, response identifier, and any provider-specific metadata for future verification or auditing.
-
If the submission fails, the invoice remains in a pending/error state and the final PDF is not generated until the issue is resolved or the submission is retried.
Using a provider-based architecture would also allow future support for other countries' electronic invoice reporting systems without changing the core invoicing workflow.
Drawbacks
Implementing this feature would introduce additional maintenance work because tax authority specifications can evolve over time and may require updates.
Supporting country-specific regulations also increases the scope of the project. For this reason, implementing the functionality behind a modular provider interface would help isolate country-specific logic from the core application and make future maintenance easier.
Since the feature would be optional and disabled by default, it would not affect users who do not need electronic invoice submission.
Reference Issues
No response
Summary
Add support for country-specific electronic invoice submission providers, starting with Spain's VERI*FACTU system.
The feature would allow Frappe Books to optionally submit invoices to government-mandated electronic invoicing systems while keeping the existing invoicing workflow unchanged. A provider-based architecture would also make it possible to support similar systems in other countries in the future.
What problem are you trying to solve?
Frappe Books is an excellent desktop accounting application for freelancers and small businesses. However, in Spain, businesses are moving towards mandatory compliance with the VERI*FACTU invoicing system defined by the Spanish Tax Agency (AEAT).
Without VERI*FACTU support, Spanish businesses cannot rely on Frappe Books as their primary invoicing solution once the regulation applies to them, even though the rest of the application already meets most of their needs.
Adding support for VERI*FACTU would make Frappe Books a viable option for Spanish users and could serve as the foundation for supporting similar electronic invoice reporting systems required by other countries.
OFFICIAL documentation and information about VERI*FACTU
Basic Example
A possible workflow could be:
The user enables an optional Invoice Submission Provider in the company settings.
The user selects Spain – VERI*FACTU as the provider and configures the required credentials or digital certificate.
The user creates the invoice normally and clicks Finalize (or Submit).
Before the invoice PDF is generated, Frappe Books creates the required VERI*FACTU invoice record and submits it to the Spanish Tax Agency (AEAT).
Once the submission succeeds (or once all required QR information is available), Frappe Books generates the final invoice PDF, automatically embedding:
The finalized PDF is stored as the official invoice and is the version delivered to the customer.
The invoice record stores the submission status, response identifier, and any provider-specific metadata for future verification or auditing.
If the submission fails, the invoice remains in a pending/error state and the final PDF is not generated until the issue is resolved or the submission is retried.
Using a provider-based architecture would also allow future support for other countries' electronic invoice reporting systems without changing the core invoicing workflow.
Drawbacks
Implementing this feature would introduce additional maintenance work because tax authority specifications can evolve over time and may require updates.
Supporting country-specific regulations also increases the scope of the project. For this reason, implementing the functionality behind a modular provider interface would help isolate country-specific logic from the core application and make future maintenance easier.
Since the feature would be optional and disabled by default, it would not affect users who do not need electronic invoice submission.
Reference Issues
No response