Equivalence surcharge (recargo de equivalencia)
When to add equivalence_surcharge_rate on B2B lines, the surcharge values BeeL. accepts and their periods, and how the line is sent to AEAT.
Recargo de equivalencia is a special IVA regime for retailers (minoristas) who sell unmodified goods. The supplier (you) adds the surcharge to the standard IVA on every line sold to a retailer who has opted into the regime; the retailer then doesn't file their own IVA returns.
When you add the surcharge
You add it only if the buyer has declared themselves a retailer under the equivalence surcharge regime. The buyer must inform you in writing — you don't infer it from anything in their fiscal data.
If the buyer hasn't declared the regime, you invoice them with normal IVA and no surcharge.
Accepted surcharge values
A request's equivalence_surcharge_rate is one of 0, 0.26, 0.5, 0.62, 1, 1.4, 1.75 or 5.2, each paired to a specific IVA rate and, for the temporary rates, to a period:
| Value | Pairs with IVA rate | Accepted on operations dated |
|---|---|---|
0 | — | Any: surcharge disabled on that line |
0.5 | 4 % | Any |
1.4 | 10 % | Any |
5.2 | 21 % | Any |
1.75 | 21 % | Any (tobacco products) |
0.5 | 5 % | 2022-07-01 to 2022-12-31 |
0.62 | 5 % | 2023-01-01 to 2024-09-30 |
0.26 | 2 % | 2024-10-01 to 2024-12-31 |
1 | 7.5 % | 2024-10-01 to 2024-12-31 |
Pairing is strict: a line with main_tax.percentage: 10 must use 1.4, never 0.5 or 5.2. A combination outside the table is rejected with INVALID_IVA_SURCHARGE_PAIR, and a pair outside its period with 422 SURCHARGE_RATE_NOT_ACCEPTED_ON_DATE. The date judged is the invoice's operation_date, or the issue date when there is none. List tax types publishes every pair with its valid_from / valid_until; the same surcharge can appear twice (0.5 with 4 % and with 5 %), so key them by surcharge and VAT rate together.
When a line omits equivalence_surcharge_rate and the company is in the regime, the surcharge is derived from the line's VAT on the operation date: with VAT at 5 %, 0.5 up to 2022-12-31 and 0.62 from 2023-01-01.
The 5 % surcharge is 0.62: 0.625 is not accepted in a request. An invoice issued with 0.625 keeps it when you read it. A draft saved with 0.625 that could not be recalculated is rejected at issue with 422 SURCHARGE_RATE_REQUIRES_RECALCULATION: edit its lines and issue it again.
The regime goes with it: a line with a surcharge must carry main_tax.regime_key: "18", and a line under regime "18" must carry a surcharge (see below).
How to set it in the API
Add equivalence_surcharge_rate to the line and set main_tax.regime_key: "18":
curl -X POST "https://app.beel.es/api/v1/companies/{company_id}/invoices" \
-H "Authorization: Bearer $BEEL_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"type": "STANDARD",
"recipient": {
"legal_name": "Tienda de Electrónica López",
"nif": "B12345674",
"address": {
"street": "Calle Comercio",
"number": "56",
"postal_code": "08001",
"city": "Barcelona",
"province": "Barcelona",
"country": "España"
}
},
"lines": [
{
"description": "Producto vendido a minorista en RE",
"quantity": 1,
"unit": "unit",
"unit_price": 200,
"discount_percentage": 0,
"main_tax": { "type": "IVA", "percentage": 21, "regime_key": "18" },
"equivalence_surcharge_rate": 5.2
}
]
}'BeeL. submits the right clave_regimen: "18" and AEAT codes to VeriFactu on your behalf.
What's incompatible with the surcharge
| Setting | Reason |
|---|---|
exemption_reason: ISP_ART_84_2_* | ISP shifts liability to the buyer; surcharge doesn't apply |
Any exemption_reason: EXENTA_* / NO_SUJETA_* | Exempt and not-subject lines don't carry IVA → no surcharge |
Any main_tax.regime_key other than "18" | The surcharge is only compatible with regime 18 (SURCHARGE_REQUIRES_REGIME); the reverse also holds, regime 18 without a rate is rejected (REGIME_REQUIRES_SURCHARGE) |
Lines on a simplified (type: SIMPLIFIED) invoice | F2 is for B2C; retailers buy under F1 |
BeeL. rejects these combinations at issuance with a descriptive error.
For the exemption_reason values referenced here, see Tax classification per line.
The surcharge is per-line, not per-invoice
You can mix lines with and without the surcharge in the same invoice. Common case: the retailer buys some goods (surcharge applies) and you also charge them a transport fee that is a separate service (no surcharge, regime general).
{
"lines": [
{
"description": "Mercancía minorista",
"quantity": 1,
"unit_price": 200,
"discount_percentage": 0,
"main_tax": { "type": "IVA", "percentage": 21, "regime_key": "18" },
"equivalence_surcharge_rate": 5.2
},
{
"description": "Transporte",
"quantity": 1,
"unit_price": 30,
"discount_percentage": 0,
"main_tax": { "type": "IVA", "percentage": 21, "regime_key": "01" }
}
]
}Related
Regime keys
The catalogue of VeriFactu regime codes BeeL. supports, when each one is required, and how it pairs with `exemption_reason`.
Disbursements (suplidos)
Bill back amounts you paid in the client's name with `line_type: SUPLIDO`: they stay out of the taxable base, VAT and VeriFactu, and add to `total_to_pay`.