Jsonpage · SIREN and SIRET API

Find your suppliers' SIREN numbers from a file

A supplier file often contains abbreviated names, VAT numbers without the prefix or mistyped SIREN numbers. Finding the right SIREN for each row makes payments, e-invoicing and reminders more reliable.

01 / FILE

What a supplier file contains

This article shows how to match a whole file: by VAT number, by an almost correct number, then by name with the postcode, setting doubtful cases aside.

The export from a small business's accounting software mixes every entry habit: "BOUL. DES HALLES" instead of "Boulangerie des Halles", a VAT number copied without the FR prefix, an 8-digit SIREN because a zero dropped out, a space or a dot in the middle of the digits. The same supplier sometimes appears twice, under two spellings.

Finding each row's SIREN serves three purposes: paying the right supplier (see IBAN fraud), putting the right number on received and issued invoices under e-invoicing, and chasing the right contacts. The method always follows the same order, from most to least reliable.

The principle to rememberAn empty row can be fixed later, a wrong SIREN spreads through payments and invoices. When in doubt, do not choose: set the row aside with its candidates.
02 / VAT

First lead: the VAT number

A French VAT number is written FR, a 2-digit key, then the 9 digits of the SIREN. When a row holds a VAT number, the SIREN follows directly: it is the last 9 digits. Two frequent cases:

  • the prefix is missing: 11123456782 has 11 digits, it is a French VAT number without the FR. The SIREN is 123456782;
  • the VAT number is in the SIREN column: the SIREN is extracted from the last 9 digits.

The key can be recalculated: (12 + 3 × (SIREN modulo 97)) modulo 97. For 123 456 782, the formula gives a key of 11. If the key in the file is wrong but the SIREN is valid, the key was copied wrongly: correct it. A VAT number that starts with a country other than FR has no SIREN: see the intra-EU VAT number.

03 / KEY

Second lead: the SIREN check digit

A SIREN has 9 digits, the last of which is a check digit (Luhn algorithm). To compute it: from the right, double every second digit starting with the second; if the result exceeds 9, subtract 9; add everything up. The sum must end in 0.

Fictitious example: 123 456 782 gives 2 + 7 + 7 + 3 + 5 + 8 + 3 + 4 + 1 = 40: the number is consistent. 123 456 783 gives 41: it is not, it is a typo. A consistent number is not necessarily an assigned one: you still have to check that the company exists and is active, see how to check a SIRET number.

04 / ALMOST

Third lead: an almost correct number

When the check digit is wrong, usually one digit is wrong or two neighbouring digits are swapped. You can test the variants: for 302 547 899, changing the last digit to 8 gives a consistent SIREN, 302 547 898.

But several variants of the same number are often valid: changing a single digit of 123 456 783 gives nine consistent SIREN numbers. The check digit alone settles nothing. Each candidate must be compared with what the file knows about the row: its name, its city, its postcode. A candidate with a close name in the same city is probable. The others are discarded.

05 / NAME

Fourth lead: the name and the postcode

With no number at all, the name is left. Normalise it first: capitals, accents removed, legal forms (SARL, SAS) and abbreviations expanded ("BOUL." into "BOULANGERIE"). Then search for the company with the company search, adding the postcode: with equal names, the address settles most cases.

Keep the same caution as for an almost correct SIREN: a single active candidate with a close name in the right postcode is probable; several candidates or a name that is too short are ambiguous cases. To find a SIREN from a name, see also find a company's SIREN by its name. You rely on the company, never on the names of individuals.

06 / EXAMPLE

Before and after: a file of four suppliers

Four rows of a fictitious file, matched with the method above. Names and numbers are invented.

Supplier (fictitious)In the fileAfter matchingMethod
Atelier LumièreVAT: 11123456782SIREN 123 456 782, VAT FR11123456782VAT number without prefix: the FR prefix is added, the key is right, the SIREN follows.
Transports du MidiSIREN 302 547 899, ToulouseSIREN 302 547 898, VAT FR59302547898Last digit wrong: a single valid neighbour has a close name, to confirm with the city.
BOUL. DES HALLESNo number, 75001SIREN 200 000 081, VAT FR62200000081Matched by name and postcode: a single candidate.
Services Rhône EntretienNo number, 69003To confirm (several candidates)Several companies with a close name in the same postcode: set aside.

Note the last row: it is not resolved, and that is intended. Keep for it the list of candidates, with their name, address and status, and ask your contact at the supplier to confirm its SIREN. An invoice or a transfer should never leave on an uncertain match.

For a customer file, the Customer file service follows the same logic of checks: SIREN check digit, VAT number, closed company.

07 / FREQUENTLY ASKED QUESTIONS

Frequently asked questions

Can a SIREN be found from a French VAT number?+

Yes: a French VAT number is FR, a 2-digit key, then the SIREN. The last 9 digits are the SIREN. The key can be recalculated to check that the number is well formed.

What should I do with a number whose check digit is wrong?+

Test the one-digit variants and the swapped neighbouring digits, then compare each candidate with the name and city of the row. If several remain, ask the supplier to confirm.

Is the name enough to find a SIREN?+

Rarely on its own. With the postcode and a normalised name, a single candidate often stands out. Several candidates call for confirmation.

How should ambiguous cases be handled?+

Set them aside with their candidates, without choosing. An empty row can be fixed later, a wrong SIREN spreads.

Does a valid SIREN prove that the supplier exists?+

No. The check digit only proves that the number is well formed. You still have to check that the company exists and is active.

08 / RELATED RESOURCES

Keep reading

TRY IT

Try the method on a file

Drop a file of companies on the Customer file page: the diagnosis is free, with no account.