VATComply Rates API
Free exchange rate API with no key, built on European Central Bank data, plus IP-based country detection and VAT number validation. Tested curl example.
Endpoint tested and returned HTTP 200 on 2026-08-20
What is the VATComply Rates API?
VATComply provides a free, key-free API offering foreign exchange rates sourced from the European Central Bank, alongside IP-based country detection and EU VAT number validation.
VATComply bundles three things an EU e-commerce checkout typically needs: exchange rates for price display, IP geolocation to guess the customer's country, and VAT number validation for B2B zero-rating.
The rates come from ECB reference data, which means they update once per working day and are the figures acceptable for accounting purposes — the same provenance as Frankfurter, with the VAT tooling added alongside.
Quick facts
- Base URL
https://api.vatcomply.com- Authentication
- No API key required.
- Rate limit
- No published hard limit; fair use expected.
- Pricing
- Free.
- CORS
- Not enabled — call it from your server
- Official docs
- Read the docs
How to use the VATComply Rates API
Every request below was executed against the live API on 2026-08-20, and the response shown is the real body it returned — not an illustration.
1. Fetch exchange rates
GET https://api.vatcomply.com/rates?base=USD
curl 'https://api.vatcomply.com/rates?base=USD'const res = await fetch("https://api.vatcomply.com/rates?base=USD");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);import requests
res = requests.get("https://api.vatcomply.com/rates?base=USD", timeout=20)
res.raise_for_status()
print(res.json()){
"date": "2026-08-19",
"base": "USD",
"rates": {
"EUR": 0.861698,
"USD": 1.0,
"JPY": 159.086601,
"CZK": 20.821198,
"DKK": 6.441965,
"GBP": 0.737682,
"HUF": 314.157691,
"PLN": 3.726411,
"RON": 4.52081,
"SEK": 9.511848,
"CHF": 0.810168,
"ISK": 122.533391,
"NOK": 9.401551,
"TRY": 47.934597,
"AUD": 1.41327,
"BRL": 5.204136,
"CAD": 1.387161,
"CNY": 6.738216,
"HKD": 7.84162,
"IDR": 17832.098234,
"ILS": 2.987161,
"INR": 95.757432,
"KRW": 1391.477811,
"MXN": 17.036536,
"MYR": 4.057475,
"NZD": 1.700819,
"PHP": 61.820767,
"SGD": 1.276174,
"THB": 33.065058,
"ZAR": 16.244291
}
}Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
rates | path | Optional | Exchange rates endpoint. rates |
base | string | Optional | Base currency. Defaults to EUR. USD |
date | string | Optional | Historical date as YYYY-MM-DD. 2026-01-15 |
vat | path | Optional | VAT number validation. vat?vat_number=IE6388047V |
geolocate | path | Optional | Country detection from the caller's IP. geolocate |
Response fields
datestring- Date the rates were published.
basestring- Base currency.
ratesobject- Currency code to rate mapping.
(vat) validboolean- Whether the VAT number is registered.
(vat) name / addressstring- Registered business details, where disclosed.
(geolocate) country_codestring- Detected country from IP.
What you can build with the VATComply Rates API
- Display prices in a customer's local currency at checkout
- Validate EU VAT numbers for B2B zero-rating
- Detect a customer's country to preselect currency and tax treatment
- Record accounting-grade exchange rates on invoices
Common errors and how to fix them
Rates unchanged over a weekend
ECB publishes on working days only.
Fix: Read the `date` field rather than assuming it matches your request.
VAT validation unavailable
It proxies VIES, which member states take offline for maintenance.
Fix: Distinguish unavailable from invalid — do not reject a customer on a service outage.
Wrong country from geolocate
IP geolocation is approximate.
Fix: Use it to preselect, never to enforce; let the customer correct it.
VATComply Rates API — frequently asked questions
Is VATComply free?
Yes, free with no API key for exchange rates, VAT validation and IP geolocation.
Where do the exchange rates come from?
European Central Bank reference rates, which update once per working day and are the figures generally acceptable for accounting purposes.
How does its VAT validation compare with VIES directly?
It proxies VIES, so the underlying answer is the same. Using VIES directly gives you the official response; VATComply is convenient when you want rates and validation from one API.
Why did the rates not change over the weekend?
ECB publishes on working days only, so weekend requests return Friday's rates. Always read the returned date.
Tools that pair with this API
JSON Formatter
Format, beautify and minify JSON online with 2-space, 4-space or tab indentation. Sort keys alphabetically and catch syntax errors instantly — free and private.
Percentage Calculator
Calculate what X% of a number is, what percent one number is of another, and percentage increase or decrease between two values — instantly and free.
VATComply Rates is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 2026-08-20; always check the official documentation before relying on this API in production, as terms and limits can change.