Guide · CRM
Enrich a CRM from VAT numbers
Your accounts were typed by people in a hurry. Their VAT numbers are enough to replace the guesswork with what the register actually holds.
What it fixes
- Duplicates. The same company sits in the base three times under three spellings. The register gives one name, so they collapse.
- Old addresses. An account captured in 2019 still bills where the company used to be.
- Dead accounts.
statussays which ones were struck off. - Missing fields. Legal form, national company id, country, all blank in most bases.
How it runs
One call per account, against the same endpoint as everything else.
curl "https://api.vatlas.dev/v1/lookup/FR68005420120" \
-H "Authorization: Bearer $VATLAS_KEY"
You get name, legalForm, status,
nationalId and an address already split into
line1, postalCode, city and country.
One field per CRM field, nothing to parse. The shape is identical for every country, so
one mapping covers the whole base.
Wherever your accounts live, the loop is the same: read the VAT number, call, write the fields back. A scheduled job, an export, a workflow step in the CRM itself, or a macro in whatever the sales team keeps on the side. For a first pass over an existing base, queue it: the asynchronous endpoint takes a batch and calls you back when it is through.
Store the meta block on the record too. It names the register that answered
and the date, which is what tells a stale field from a field nobody ever filled.
Keeping it accurate
An enriched base is accurate on the day you enrich it. Rather than re-running everything each quarter, let Vatlas watch the numbers you have already resolved and call back when a register changes its mind: see the monitor endpoint.
Enrichment is not verification. Filling a CRM field from a stored answer is fine. Deciding whether to charge VAT is a check made at that moment, with the proof kept: see verifying an invoice's VAT number.
Frequently asked
Enriching accounts from VAT numbers, in short
Does this work with my CRM?
It is an HTTPS call returning JSON, so anything that can make one will do: a scheduled script, a native workflow step, an integration platform, or a spreadsheet macro over an export. There is nothing to install.
How many accounts can I do at once?
Loop for a few hundred. Beyond that, queue the batch through the asynchronous endpoint and collect the results when it calls back.
What happens to accounts that resolve to nothing?
They come back empty rather than as an error, and that is a result worth keeping. A VAT number in your base with no company behind it is exactly what you were looking for.
Do the numbers need cleaning first?
Barely. Spaces, dots, dashes, lowercase and a missing country prefix are handled. Mixed countries in one field are fine.
Should I overwrite what a salesperson typed?
Fill empty fields outright. For fields that already hold something different, write the register value into its own column and let a human decide. A trading name is often more useful to sales than a legal one.
Keep reading
Last updated 21 September 2026.