The AEAT's SII, sent straight from your Dolibarr invoices
Register, modify and cancel issued and received invoices in the Immediate Supply of Information (SII) with your digital certificate, and check on the invoice itself what the AEAT has on record. No file exports, no other software in between.
|
2 ledgers
issued and received
|
A0 · A1 · A4
registration, modification and cancellation
|
50
NIFs checked per batch
|
V16 – V21
PHP 7.4 – 8.2
|
The problem it solves
If your company is in the SII, every invoice has to reach the AEAT within four days, not counting Saturdays, Sundays or national holidays. Doing it outside Dolibarr means copying the same data twice, and the costly mistakes are the ones the AEAT accepts without saying anything.
| What you run into |
What it costs you |
| Invoices are uploaded one by one in the AEAT portal or with other software |
Hours of repeated work every week, and data that lives in two places and ends up not matching |
| An intra-EU purchase, a disbursement (suplidos) or an equivalence surcharge is declared with the wrong amount |
The AEAT accepts it without warning; the mismatch shows up when you close Form 303 or in an official request |
| You don't know what the AEAT has on record for each invoice |
Duplicate submissions, or invoices left out without anyone noticing |
| The AEAT rejects the record with a code (1219, 1314, 1328...) |
You have to work out which field caused it and redo the submission by hand |
What goes to the AEAT comes from the same invoices you already have in Dolibarr: one set of data, in one place, with the AEAT's response stored on the invoice.
NEW
Several companies in the same Dolibarr, each with its own certificate
With the multicompany module, each entity has its own filer, NIF (VAT number), certificate and test or live environment. In an entity where you disable the module, none of its screens open, not even for an administrator, and the certificate password is no longer visible anywhere: not when you type it and not in the settings.
How you work with it
Screenshots of the module in a test Dolibarr, with demo data.
Issued invoices: tick the ones you want and send them all at once. Each shows its SII status and the CSV the AEAT returned.
The AEAT tab on each invoice: on the left what the AEAT has on record, on the right what the module would send today.
A purchase from an EU supplier already sent: key 09 and input VAT calculated by the module, without touching the invoice.
Ledger query at the AEAT by period, NIF or invoice number, linked to the Dolibarr invoice.
The setup fits on one screen: filer, environment, certificate and the products that count as disbursements.
Compared to doing it by hand
| Task |
AEAT portal or spreadsheet |
ATSII |
| Sending invoices |
One by one, copying the data |
From the list, several at once, or from the invoice itself |
| Intra-EU transactions |
You choose the ID type and the key, and calculate the VAT amount yourself |
Detected from the VAT number (NIF-IVA): IDType 02, key 09 on purchases, E5 on sales and input VAT calculated |
| Disbursements |
Subtract them from the taxable base by hand |
Products marked as disbursements add nothing to the taxable base or the declared total |
| Corrective invoices |
Fill in the block for the corrected invoice |
R1 to R5, by differences or by substitution, with the original invoice linked |
| Seeing what is registered |
Log in to the portal and search invoice by invoice |
The AEAT response in the invoice tab, plus the ledger queries and the aggregated Form 303 ledgers |
| Third-party NIF |
Not available |
Verification against the AEAT taxpayer register and against VIES, with a warning on the third-party record |
What's included
Both ledgers, without leaving Dolibarr
Issued and received invoices: registration (A0), modification (A1) and cancellation (A4), invoice by invoice from its tab or in batches from the list. A received invoice is identified by the supplier's reference and date.
Every case, declared the way the AEAT requires
Intra-EU transactions, exemptions E1 to E6, scheme keys from lists L3.1 and L3.2, cash accounting scheme, equivalence surcharge, simplified invoices F2, reverse charge, corrective invoices R1 to R5 and disbursements kept out of the taxable base.
You know what the AEAT has
Status and CSV stored on each invoice, queries of the issued and received ledgers, and the aggregated Form 303 ledgers with the period's output VAT and deductible VAT.
Third parties with the right NIF
NIF verification against the AEAT taxpayer register and NIF-IVA verification against VIES, one at a time or up to 50 per batch. If the name doesn't match, a button corrects it with the official one.
Who it's for
- Companies with turnover above €6,010,121.04, required to use the SII.
- Companies registered in the REDEME (monthly VAT refund register) and VAT groups.
- Companies that join the SII voluntarily.
- Groups with several companies in the same Dolibarr with multicompany, each with its own certificate.
Getting started
1
Install the module and enable it in Setup → Modules. It creates only the fields it needs on invoices and third parties.
2
Upload your .pfx or .p12 certificate and fill in the filer's name and NIF.
3
Send your first invoices to the AEAT test environment and check the response in the invoice tab.
4
Switch the environment to live in the settings and start sending. No files to edit.
Requirements
| Dolibarr |
V16 – V21 |
| PHP |
7.4 – 8.2, with the soap and openssl extensions |
| Certificate |
Digital certificate of the company or its representative (FNMT or another authority recognised by the AEAT), as .pfx or .p12 |
| Connection |
Outbound HTTPS from the server to the AEAT web services |
| Updates |
365 days of access to updates |
Before you buy
Can I adapt it to my case?
Yes. You get the full source code and can read, modify and adapt it without asking permission.
How do I test it without sending anything real?
With the AEAT test environment, which is selected by default: what you send there has no legal effect. You switch to the live environment when you're ready, from the settings.
What if something doesn't fit my installation?
Write to us at
info@easysoft.es before buying and we'll look into it with you. We'd rather tell you it doesn't fit than sell you something you can't use.
What happens when the 365 days are over?
The module keeps working exactly the same: it doesn't expire or lock. What expires is access to new versions, on Dolistore and in the built-in updater. If you want to keep receiving them, you renew.
Actively maintained
Version 1.2.10, October 2026. Every version passes a suite of automated browser tests against a server that responds like the AEAT, is installed from the published package before release, and notifies you by itself when a new version is available. The changes in each version are listed in the module's own changelog.
|
31
modules published on Dolistore
|
100 %
full source code
|
9
interface languages
|
365
days of updates
|
Does it fit what you need?
Tell us your case and we'll say whether ATSII works for you. And if it doesn't, we'll say that too.
info@easysoft.es www.easysoft.es