Stripe Tax alternative: Veriport and Stripe Tax compared on price, evidence and VIES outages
Stripe Tax is not a validation API but a billing stack that validates the customer’s VAT number as it goes; this page is for the developer who needs the same VIES validation at a lower or irregular volume, wants prepaid calls instead of a subscription, or wants the degraded path (dated cached answers when a member state is down) explicit in the response. Stripe Tax’s entry paid plan is Tax Basic: 0.5 % per transaction, or $0.50 per transaction via the API (10 calculation calls included); Veriport starts at 100 free calls a month, then $9 for 2,000 prepaid calls. Prices as published on 2026-10-28; check the vendor’s page before deciding.
- Stripe Tax: Tax Basic: 0.5 % per transaction, or $0.50 per transaction via the API (10 calculation calls included); Not a per-validation price: validation comes with the customer’s tax ID in Billing or Tax per 1,000; free tier: None for Tax; a tax ID can be saved on any customer.
- Stripe Tax when VIES is down: « Stripe automatically handles VIES downtime and attempts retries »: status pending → verified / unverified / unavailable. Data residency: Stripe’s infrastructure (not stated per region on these pages).
- Veriport: 100 calls a month with a key, 20 a day without, no card, no expiry; $4.50 (2,000 pack) → $3.00 (plan) → $2.90 (10,000 pack); tax included; Yes:
requester→consultationNumberon the paid tiers, live answers only. - Veriport when VIES is down: The answer of the last 30 days, dated and marked
stale; else a 503 that is not counted; a public per-member-state record. Functions and database in Paris, France (EU); publisher in the US.
Price per 1,000 validations
Prices are what each vendor’s public page said on 2026-10-28 (linked in the sources); they exclude VAT where the vendor says so, and Veriport’s include it. Per-1,000 figures assume full use of the included volume. Nothing here is benchmarked: uptime, latency and support are not measured by us.
| Offer | Price | Included | Per 1,000 | Billing |
|---|---|---|---|---|
| Stripe Tax Basic (no-code) | 0.5 % per transaction | where you are registered to collect tax | — | Per transaction |
| Stripe Tax Basic (API) | $0.50 per transaction | 10 calculation calls included, $0.05 above | — | Per transaction |
| Stripe Tax Complete | from $90 / month | 200 transactions, 2,000 calculation calls, filings | — | Yearly contract |
| Customer tax IDs (Billing) | included | EU VAT numbers validated on VIES, retried on downtime | — | With a Stripe account |
| Veriport free tier | $0 | 100 calls a month, 20 a day without a key | — | No card |
| Veriport 2,000 pack | $9 once | 2,000 calls, 12 months | $4.50 | Prepaid, no renewal |
| Veriport 10,000 pack | $29 once | 10,000 calls, 12 months | $2.90 | Prepaid, no renewal |
| Veriport monthly plan | $15 / month | 5,000 calls + bulk | $3.00 | Subscription, cancel any time |
What is different, honestly
Stripe Tax has more: everything around the number: tax calculation, the reverse charge applied automatically, invoices and credit notes carrying the tax ID, retries on VIES downtime, and filings on the Complete plan; the validation is a by-product of the billing stack. Veriport has less, on purpose: deterministic endpoints, an OpenAPI document, prepaid calls that do not renew, and a response that states its own provenance (live, cache with stale, structure_only) so your code decides. The VAT rates table, the IBAN check and the French company registry come in the same call budget, which matters to a billing system that needs all of them. What neither can do: make VIES available. When a member state is down, Stripe Tax’s page says: « Stripe automatically handles VIES downtime and attempts retries »: status pending → verified / unverified / unavailable. Veriport serves the answer it obtained for the same number in the last 30 days, dated and marked stale, never attaches a consultation number it did not obtain live, and publishes the per-member-state record.
Consultation numbers and evidence
Stripe Tax: not mentioned; the Dashboard shows the registered name and address. Veriport: pass your own VAT number as requester on a prepaid pack or the plan and the live answer carries consultationNumber, the reference tax administrations ask for; every answer carries requestDate, source.kind and source.checkedAt, so a stored row says what was checked, when, and against what.
When to pick which
Pick Stripe Tax when you bill through Stripe already: saving the customer’s VAT number on the Customer object validates it on VIES for nothing more, and Stripe Tax applies the reverse charge from it. Pick Veriport when you want to pay for what you use (a few hundred validations a quarter is the common case for a small SaaS), need rates, IBAN and French company data in the same call budget, or want the degraded path explicit and documented. The roundup puts Vatstack, vatlayer (apilayer), Abstract API, VATSense, vatcheckapi, VIES API (viesapi.eu) in the same table.
Questions
- Is migrating from Stripe Tax hard?
- The response shapes differ; the fields you use (valid, name, address, the consultation number where the vendor returns one) exist in both. Budget an hour for a small integration. Keep your history: consultation numbers are evidence regardless of who obtained them.
- Where do these prices come from?
- Stripe Tax’s public page on 2026-10-28, linked in the sources below, and our own price table. We do not resell or benchmark their uptime; the VIES availability we publish is the Commission’s own status, measured by us.
- Which is cheaper?
- Below 100 checks a month, both are free. Between a few hundred and 2,000 a month, a prepaid pack is cheaper than any subscription that renews whether you use it or not. Above 10,000 a month every month, compare Stripe Tax’s larger tiers with the monthly plan; the roundup has the figures.
Free tier now; packs and plan when checkout opens.
See the pricingSources
- Stripe Tax pricing: Tax Basic 0.5 % per transaction (no-code) or $0.50 per transaction with 10 calculation calls included ($0.05 each above) for the API; Tax Complete from $90/month; VAT ID formatting validated, no separate price — Stripe, Inc., consulted 2026-10-28
- Stripe docs — Customer tax IDs: EU VAT numbers validated with VIES, « Stripe automatically handles VIES downtime and attempts retries »; verification status pending / verified / unverified / unavailable; registered name and address shown in the Dashboard; validation not repeated over time; the reverse charge applied on the format regardless of the verification result — Stripe, Inc., consulted 2026-10-28
- VIES REST API — check-vat-number, check-status (technical information) — European Commission, DG TAXUD, consulted 2026-10-24
- VIES — help page: what the consultation number proves, member-state availability — European Commission, DG TAXUD, consulted 2026-10-24