For customs, logistics & onboarding software

EORI validation API.
One key.
Clear results.

Check customs registration inside your software. Get EORI validity, the register source and a timestamp as JSON. EU VAT checks use the same key.

Start with a Free key

100 validations / month · 10 requests / minute
Shared across EORI + VAT. No card required.

Public demoNo API key needed
Public example
IT00159560366

See what your software gets

A status you can act on.

Run a real public lookup to see the validity decision, register source and check time.

This demo uses the public website lookup. Integrate with your private key at /v1/eori. Results may come from a 24h cache.

GB EORIUK HMRC

XI + EU-27 EORIEU TAXUD

EU VATEU VIES

01 / Get access

Try one check.
Then build your integration.

Use a supported identifier from your workflow. Save the new key securely, inspect the result, then check your remaining allowance. Stay on Free if it fits.

Free includes EORI + VAT validation. Recurring watches require a paid plan. Keep API keys on your server, out of browser code and recordings.

Get a free API key

100 validations/month, no card. EORI + VAT from one key. A new key is shown once; existing keys are never revealed by email lookup.

02 / Quickstart

One request.
A useful first result.

  1. 1. Save your Free key in the server environment variable EORI_API_KEY.
  2. 2. Run the EORI request. Inspect estado, fuente and checked_at.
  3. 3. Check /v1/usage. EORI and VAT consume the same allowance. For VAT, use /v1/vat?number=IE6388047V.
Full OpenAPI 3.1 specification →
Server-side only
# Set EORI_API_KEY privately in your shell first.
curl --fail-with-body 'https://eoricheck.com/v1/eori?number=IT00159560366' \
  -H "Authorization: Bearer $EORI_API_KEY"

# Same key, shared EORI + VAT allowance:
curl --fail-with-body 'https://eoricheck.com/v1/usage' \
  -H "Authorization: Bearer $EORI_API_KEY"

Customs software

Check the EORI entered on a booking; route unresolved results to review.

Supplier onboarding

Keep EORI and VAT checks separate in your decision, using one API key.

Your audit record

Store the returned status, source and UTC check time alongside your reference.

03 / Choose capacity when you need it

Start Free.
Pay for the workload you have.

Stay on Free for up to 100 shared validations per month. Evaluate Starter when you need more volume or daily EORI watches. Confirm countries, monthly volume and peak request rate before choosing.

Free / Try and keep using

100 shared validations / month

10 requests/min · No recurring watches · No card

Starter / More capacity + monitoring

5,000 shared validations / month

60 requests/min · 5 daily EORI watches

Base €19/month. Checkout confirms currency and tax.

Moving to a paid plan: receipt, key email, then usage

After purchase, check your Gumroad receipt and the key email from EORICheck. Use the delivered paid key for GET /v1/usage and confirm the tier and quota. Your original Free key stays Free. A checkout return page alone does not confirm payment or activation.

Free

Kick the tyres. No card.

€0/mo
  • 100 validations / month
  • EORI + VAT from one key
  • 10 requests / minute
  • Live HMRC + TAXUD + VIES data, 24h cache
Get free key

Starter

For a single integration.

€19/mo
  • 5,000 validations / month
  • 60 requests / minute
  • EORI + VAT from one key
  • Dated CSV export with source + UTC
  • 5 daily EORI watches + change alerts
  • Email support
Fulfillment target: key email within 10 minutes after a verified Gumroad purchase. Support response target: 2 business days.
Choose Starter
Higher volume

Growth

For a busy customs desk.

€49/mo
  • 25,000 validations / month
  • 120 requests / minute
  • Batch CSV upload + dated report
  • 50 daily EORI watches + change alerts
  • Priority email support
Fulfillment target: key email within 10 minutes after a verified Gumroad purchase. Support response target: 1 business day.
Choose Growth

Scale

For platforms and brokers.

€99/mo
  • 100,000 validations / month
  • 300 requests / minute
  • Bulk + PDF verification records
  • 250 EORI watches · checks every 6 hours
  • SLA available on request
Fulfillment target: key email within 10 minutes after a verified Gumroad purchase. Support response target: 1 business day.
Choose Scale

Base prices are in EUR. Gumroad confirms the checkout currency and applicable taxes before payment. Buttons that open Gumroad start a secure checkout. A “Request” button only sends your contact request; it does not activate a subscription or take payment. Paid plans renew monthly and can be cancelled in Gumroad; after cancellation the key returns to Free limits.

Operated by Covo Franco Digital LLC, a Wyoming limited liability company · 30 N Gould St Ste N, Sheridan, WY 82801. Contact EORICheck.

API reference

Endpoints & response handling

https://eoricheck.com
GET/v1/eori?number=IT00159560366GB → HMRC · XI / EU-27 → TAXUD
GET/v1/vat?number=IE6388047VEU VAT → VIES · same key and quota
GET/v1/usagePlan, current period, used and remaining validations
GET/v1/monitoringEORI watches and your plan allowance
POST/v1/monitoring/watchesCreate a paid-plan EORI watch with an initial register check

Read the result, not just HTTP 200

valido means valid at the check time; no_valido means not valid. Other states need review or retry. A response from kv-cache may be up to 24 hours old. Read registro when supplied for the original EORI register.

Authenticate with Authorization: Bearer <key> or x-api-key. Inspect X-Quota-* headers and /v1/usage for remaining capacity.

401

Missing or invalid key.

402

Monthly quota reached. Wait for the next period or choose more capacity.

403

Feature not included in your tier.

422

Malformed EORI or VAT number.

429

Rate limit reached. Respect Retry-After.

502

Register error. No validity decision; validation not billed.

Before you integrate

Common questions.

EORICheck is independent of HMRC, the European Commission, TAXUD and VIES.

What does an EORI validation API do?

It checks whether an EORI customs registration number is valid in the relevant register and returns a result your software can read. EORICheck returns JSON with a validity status, source and check time. A valid EORI is not a guarantee that a shipment will clear customs.

Which countries and registers are supported?

GB EORI numbers are checked through UK HMRC. XI and EU-27 EORI numbers use EU TAXUD. EU VAT validation uses VIES through a separate endpoint with the same key. EORICheck is independent of these authorities and does not provide worldwide tax-ID validation.

Is the API free, and when would I need Starter?

Free includes 100 EORI and VAT validations per month combined, at up to 10 requests per minute, with no recurring watches. Stay on Free if it fits. Starter has a base price of EUR19/month, 5,000 shared validations, 60 requests per minute and 5 daily EORI watches. Confirm your countries, monthly volume and peak rate before choosing a paid plan.

Are results always fresh?

API results may come from a 24-hour cache. Read checked_at for the time of the underlying check, fuente for the response source and registro when supplied for the EORI register. A cached response is not a new register check. Scheduled monitoring performs live checks at the plan cadence.

How should my integration handle an unavailable register?

Treat network failures, non-success HTTP responses and an error or unsupported status as no validity decision. Do not mark the number invalid. Use a bounded retry policy and review unresolved cases; respect Retry-After for rate limits.

Does Free include monitoring and alerts?

No. Starter includes up to 5 daily EORI watches, Growth up to 50 daily watches, and Scale up to 250 watches checked every 6 hours. Watch checks do not consume the API validation quota. Alerts go to one email destination when a status changes; the initial check is not a change alert.

Need a workflow around the API?

Validate a list, or check EORI status on a schedule.