Spain

Configuration

Install the 🇪🇸 Spanish fiscal localization package to get all the default accounting features of the Spanish localization.

Three Spanish localizations exist, each with its own pre-configured PGCE charts of accounts:

  • Spain - SMEs (2008);

  • Spain - Complete (2008);

  • Spain - Non-profit entities (2008).

To select the one to use, go to Accounting ‣ Configuration ‣ Settings and select a package in the Fiscal Localization section.

Warning

You can only change the accounting package as long as you have not created any accounting entry.

Chart of accounts

You can reach the Chart of Accounts by going to Accounting ‣ Configuration ‣ Accounting: Chart of Accounts.

Tip

When you create a new Odoo Online database, Spain - SMEs (2008) is installed by default.

Taxes

Default Spain-specific taxes are created automatically when the Spanish - Accounting (PGCE 2008) (l10n_es) module is installed, and tax reports are available when installing the module Spain - Accounting (PGCE 2008) (l10n_es_reports). Each tax impacts the Spain-specific tax reports (Modelo), available by going to Accounting ‣ Reporting ‣ Statements Reports: Tax Report.

Reports

Here is the list of Spanish-specific statement reports available:

  • Balance Sheet;

  • Profit & Loss;

  • EC Sales List;

  • Tax Report (Modelo 111);

  • Tax Report (Modelo 115);

  • Tax Report (Modelo 130);

  • Tax Report (Modelo 303);

  • Tax Report (Modelo 347);

  • Tax Report (Modelo 349);

  • Tax Report (Modelo 390).

You can access Spain-specific tax reports by clicking on the book icon when on a report and selecting its Spain-specific version: (ES).

Spain-specific tax reports.

Modelo 130

Change the percentage

If you wish to change the percentage computation of the box [04] under the I section and/or of the box [09] under the II section:

  1. Activate the developer mode, go to Accounting ‣ Reporting ‣ Tax Report, and select the report Tax report (Modelo 130).

  2. Click the (cogs) icon to the right of Report: Tax Report (Mod 130) (ES).

  3. Click the box you wish to change, and in the pop-up window, click on the percentage line. In the new pop-up window, change the value in the Formula field to the percentage you wish to apply. Repeat this action if you wish to modify the other box as well.

Report agriculture activity

If you wish to have any amount input in the II section (from boxes [08] to [11]), you must change the industry of the corresponding contact to Agriculture:

  1. Go to the contact form (Accounting ‣ Customers ‣ Customers or Accounting ‣ Vendors ‣ Vendors, for example), and select a contact.

  2. In the Sales & Purchase tab, set the Industry field to Agriculture.

Repeat this operation for all contacts related to the agriculture industry.

Veri*Factu

Note

Producers of Veri*Factu billing systems must self-certify their compliance with the regulations. Download Odoo's "declaración responsable"

Veri*Factu is an e-Invoicing system used by the Spanish Tax Agency. It is mandatory for most taxpayers in Spain, except for those who use the SII system or are under a regional tax regime (i.e., TicketBai).

Odoo allows invoices and Point of Sale orders to be automatically sent to the tax authorities.

Configuration

To enable Veri*Factu, follow these steps:

  1. Open the Settings app to make sure your company’s Country and Tax ID are correctly set in the Companies section.

  2. Install the Spain - Veri*Factu (l10n_es_edi_verifactu) module.

  3. Go to Accounting ‣ Configuration ‣ Settings, scroll to the Veri*Factu section, check the Enable Veri*Factu option, and click Manage certificates to add a certificate.

  4. In the Certificates for Veri*Factu list view, click New.

  5. Click Upload your file, then select a certificate file and enter the Password needed to open the certificate (if there is one).

Note

  • At least one certificate has to be uploaded.

  • By default Veri*Factu is in testing mode. The data is sent to test servers and is not considered official. When official data can be sent to the production servers, go to the Veri*Factu section in the Settings and disable Test Environment.

Invoices

Once an invoice is confirmed, it can be sent. In the Send window, the Veri*Factu option is available if Veri*Factu has been enabled.

Click Send to generate a JSON file containing the invoice details. This file is stored as a Veri*Factu document. In the Veri*Factu tab, all corresponding documents are listed by their creation date and current status.

Tip

To download a JSON file, click on its document in the Veri*Factu tab. Then, in the Open: Veri*Factu Documents window, click the link in the JSON field.

Note

  • The document should be sent to the AEAT immediately. However, it may be delayed due to mandatory waiting periods between submissions required by the AEAT. In such cases, the document is automatically sent the next time a scheduled action runs.

  • A Veri*Factu QR code appears on the invoice PDF. Scan this code to verify that the invoice has been received and recognized by the AEAT.

Point of sale orders

Once an order has been paid, a JSON file containing the order details is generated. This file is stored as a Veri*Factu document.

Go to Point of Sale ‣ Orders ‣ Orders. In the Orders list view, select the relevant order. In the Veri*Factu tab, all the corresponding documents are listed by their creation date and current status.

Tip

To download a JSON file, click on its document in the Veri*Factu tab. Then, in the Open: Veri*Factu Documents window, click the link in the JSON field.

Note

  • The document should be sent to the AEAT immediately. However, it may be delayed due to mandatory waiting periods between submissions required by the AEAT. In such cases, the document is automatically sent the next time a scheduled action runs.

If an invoice is generated for an order during the payment process, the Veri*Factu document is created and sent for the invoice instead.

Note

A Veri*Factu QR code appears on the order receipt, even if an invoice is created for the order. Scan this code to verify that the invoice has been received and recognized by the AEAT

TicketBAI

Ticket BAI or TBAI is an e-Invoicing system used by the Basque government and its three provincial councils (Álava, Biscay, and Gipuzkoa).

Odoo supports the TicketBAI (TBAI) electronic invoicing format for all three regions of the Basque Country. To enable TicketBAI, set your company’s Country and Tax ID under Settings ‣ General Settings in the Companies section.

Then, install the module Spain -TicketBAI (l10n_es_edi_TBAI), go to Accounting ‣ Configuration ‣ Settings, and select a region in the Spain Localization section’s Tax Agency for TBAI field.

Once a region is selected, click Manage certificates (SII/TicketBAI), then click New, upload the certificate, and enter the password provided by the tax agency.

Warning

If you are testing certificates, enable Test Mode in the Spain Localization section, which can be found under Accounting in the Settings app.

Use case

Once an invoice has been created and confirmed, a TicketBAI banner appears at the top.

TicketBAI banner at the top of the invoice once sent.

Odoo sends invoices through TicketBAI automatically every 24 hours. However, you can click Process now to send the invoice immediately.

When the invoice is sent, the status of the field Electronic Invoice changes to Sent, and the XML file can be found in the chatter. Under the EDI Documents tab, you can see the traceability of other generated documents related to the invoice (e.g., if the invoice should also be sent through the SII, it will appear here).

Note

The TBAI QR code is displayed on the invoice PDF.

QR code of the TicketBAI on the invoice.

FACe

FACe is the e-Invoicing platform used by the public administrations in Spain to send electronic invoices.

Before configuring the FACe system, install the Spain - Facturae EDI (l10n_es_edi_facturae) module and other Facturae EDI-related modules.

To configure FACe, follow these steps:

  1. Go to Accounting ‣ Configuration ‣ Certificates.

  2. Click New to create a new certificate.

  3. Complete the fields, including uploading the file of the Certificate provided by the tax agency and the provided Certificate Password.

Note

If using the Invoicing app instead of Accounting, go to Invoicing ‣ Configuration ‣ Certificates.

Use case

Once you have created an invoice and confirmed it, click Send & Print. Make sure Generate Facturae edi file is enabled, and click Send & Print again. Once the invoice is sent, the generated XML file is available in the chatter.

Warning

The file is NOT automatically sent. You have to send it yourself manually.

Tip

You can send FACe XML files in batch through the governmental portal.

Administrative centers

In order for FACe to work with administrative centers, the invoice must include specific data about the centers.

Note

Make sure to have the Spain - Facturae EDI - Administrative Centers Patch (l10n_es_edi_facturae_adm_centers) module installed.

To add administrative centers, create a new contact to add to the partner company. Select FACe Center as the type, assign one or more role(s) to that contact, and Save. The three roles usually required are:

  • Órgano gestor: Receptor (Receiver);

  • Unidad tramitadora: Pagador (Payer);

  • Oficina contable: Fiscal (Fiscal).

Administrative center contact form for public entities.

Tip

  • If administrative centers need different Codes per role, you must create different centers for each role.

  • When an electronic invoice is created using a partner with administrative centers, all administrative centers are included in the invoice.

  • You can add one contact with multiple roles or multiple contacts with a different role each.