vatnode vs VATcomply
VATcomply validates VAT numbers and returns basic rate data. vatnode returns everything your invoicing system needs — local tax name, abbreviation, all rate tiers, currency, German BZSt fallback, and granular webhook events — in a single API call.
What you get in one API call
{
"valid": true,
"vatId": "DE134214316",
"countryCode": "DE",
"countryName": "Germany",
"companyName": null,
"source": "BZST", // BZSt fallback — works even when VIES DE is down
"countryVat": {
"vatName": "Umsatzsteuer", // print on German invoices
"vatAbbr": "MwSt",
"currency": "EUR",
"standardRate": 19,
"reducedRates": [7],
"superReducedRate": null,
"parkingRate": null,
"vatNumberFormat": "DE + 9 digits",
"vatNumberPattern": "^DE\d{9}$",
"ratesUpdatedAt": "2026-03-30"
}
}Feature Comparison
| Feature | vatnode | VATcomply |
|---|---|---|
| Local VAT name in response (Umsatzsteuer, TVA, ALV…) | ||
| VAT abbreviation (MwSt, TVA, ALV…) | ||
| Super-reduced rate in response | ||
| Parking rate in response | ||
| Currency (EUR, BGN, HUF…) in response | ||
| VAT number format + regex pattern in response | ||
| German BZSt fallback (when VIES down) | ||
| Webhook: COMPANY_NAME_CHANGED | ||
| Webhook: COMPANY_ADDRESS_CHANGED | ||
| EU VAT validation (VIES) | ||
| Company name + address | ||
| Standard + reduced rates in response | ||
| HTTPS on all plans | ||
| VAT monitoring + webhooks | From €19/mo | Paid plans |
| Uptime SLA | 99.9% | Not published |
| Free tier | 20 req/mo | Limited |
| Entry paid plan | €19/mo — 1,000 req/mo | Higher pricing |
German BZSt fallback
Germany is one of the most important EU markets and one of the most problematic for VIES — the German node is frequently rate-limited or unavailable. vatnode automatically falls back to the Bundeszentralamt für Steuern (BZSt) eVatR service when the VIES DE node fails. Your integration keeps working. The response shows "source": "BZST" so you always know which authority answered.
Granular webhook events
VAT_BECAME_INVALIDCustomer's VAT registration lapsed — stop applying reverse charge immediately
VAT_BECAME_VALIDPreviously invalid number reactivated — update invoice settings
COMPANY_NAME_CHANGEDLegal name changed — update your customer records and invoices
COMPANY_ADDRESS_CHANGEDRegistered address changed — update your records for compliance
Try vatnode free — no credit card required
20 free API calls per month. See the full response schema for yourself.