CIIFragments Studio is CII-accredited: recover up to 20% of your software development spendLearn more

API integration for Pappers

We build your Pappers connector

Your application queries the Pappers API to assemble a company file in a single call: legal identity, directors, beneficial owners, official documents.

  • Senior product team
  • company data connectors in production
  • from scoping to monitoring
In short

What does the Pappers API provide and why use it to enrich company data?

Pappers is a French aggregator of legal and financial data on companies. Its API returns a consolidated record from a SIREN number: identity, executives, beneficial owners, annual accounts, collective proceedings, BODACC publications and official documents. You integrate it to automate client or prospect record enrichment at name entry, perform KYC checks during onboarding, or monitor the legal and financial health of a partner portfolio. Credit-based billing makes it suitable for both occasional use and daily data flows.

Use cases

What our clients build on the Pappers API

01

Client onboarding files

Type the SIREN, retrieve the legal identity, the directors, the beneficial owners and the extract, with the file assembled and no document requested.

02

Risk checks before signature

An automatic block on insolvency proceedings in progress and an alert on strike-off, at the moment you open credit or sign a contract.

03

Annual accounts without chasing

Filed accounts feed your internal scoring or a financing file, without asking the company for yet another document.

04

Portfolio watch by alert

A watchlist replaces the manual quarterly review: proceedings opened, a director changed, a strike-off, and you are notified.

For you

What it changes in your files

Engineering in service of a measurable outcome: fewer documents requested, risk seen in time, a cost you control.

One file instead of three circuits

Identity, directors, owners and documents arrive together. You stop stitching together Sirene, the business register, BODACC and the court registry.

Risk seen before the exposure

Insolvency proceedings in progress are no longer discovered after delivery. The check becomes automatic at every sensitive step.

No more documents to chase

Extracts, articles of association and annual accounts come through the API. A credit or vendor onboarding file gets shorter by that much.

A cost you can see coming

Every call is priced in credits and instrumented. You know what a lookup costs before opening it to your whole team.

Method

How we ship your Pappers connector

01

Scoping

Which fields, what volume, what credit budget. We price the cost per call before writing a line of code, not after the first invoice.

02

Development

A typed connector that admits nullable fields, a credit counter per call, a cache aligned on real freshness, the key in a managed secret.

03

Acceptance testing

Replay on your real data, a test on a company under partial disclosure, and a check that the 206 and truncated lists are handled.

04

Monitoring

A threshold alert on the credit balance, an application circuit breaker, a log of calls and their cost. Budget failure is visible before the stop.

The API

What the Pappers API allows

A consolidated company record
Identity, court registry, RCS and RNE status, verifiable intra-community VAT, insolvency proceedings and a consolidated status, in one call.
Directors and beneficial owners
Representatives and beneficial owners, plus detection of the same director sitting behind several companies in your portfolio.
Documents and annual accounts
Deeds, articles of association, annual accounts, extracts and INSEE situation notices, pulled by API instead of requested from a registry.
Watchlists and autocomplete
Watchlists with event-driven alerts, and a suggestions route usable from the browser for your public-facing forms.
Glossary

The vocabulary of the Pappers API

Credit
The billing unit. A company record costs 1 credit, a search result 0.1, a document 3, a scoring report 30. That grid has to be laid out before you code, not after the first invoice.
champs_supplementaires
The parameter that adds fields billed individually. The same request goes from 1 to 31 credits if it carries a financial score. Every field requested must be an explicit decision, not a copy and paste.
statut_consolide
A summary field valued active, inactive or ceased, aggregating the INSEE, RNE and RCS statuses. This is the one you show a business user, rather than three statuses that can contradict each other.
HTTP 206
Partial result: at least one upstream source did not answer in time. Testing status equals 200 treats that as an error, testing status below 300 records an incomplete file as if it were complete. Both are wrong.
diffusable
The flag marking a company under partial disclosure. Around fifteen fields then become nullable, including the company name and the address. A TypeScript client that types them as non-null breaks in production.
opposition_utilisation_commerciale
The field stating that the company objects to commercial use of its data. Reading it and honouring it is not optional: it is the objection mechanism provided by the commercial code, exposed here as a boolean.
Good to know

The real constraints of the Pappers API

01

The bill hides in the extra fields

A company record costs 1 credit, the same request with a financial score costs 31. Without a cost counter instrumented inside the application, the drift only shows up on next month's invoice.

02

Credits expire, and the API stops

On monthly and annual plans, unused credits are lost at the end of the period, and the API stops answering once the balance is empty. That is a functional outage no standard HTTP monitoring sees coming.

03

A 206 is neither success nor failure

It signals an incomplete record because an upstream source did not answer. It has to be handled as a third state, the record pushed back into the queue, and a missing field never read as negative information.

04

One API account per company

Pappers states that it removes multiple accounts that were not cleared in advance. The pattern of one key per environment, or one key per end customer, therefore needs an explicit commercial agreement before the architecture is designed.

Pappers or Sirene

Pappers or the Sirene API?

Two ways to get a French company record. The right one depends on what you have to do with it, not on the sticker price.

CriterionPappersPaid aggregatorINSEE / SireneOfficial source
AccessSubscription, cost per creditINSEE account, free key
PerimeterIdentity, directors, deedsIdentification, location
Official documentsArticles, accounts, extractsNot covered
Insolvency proceedingsA ready-made flagNot covered
RateDepends on your plan30 calls per minute
Failure modeCredit balance exhaustedService unavailability
The right caseBuild a KYC fileVerify and prefill a SIRET

We recommend a two-tier architecture: Pappers for the enrichment that carries value, a public source for basic identification and as a fallback.

Our expertise

What we measure on a Pappers integration

15 d
first Pappers flow in production
1
credit per company record looked up
24 h
cache aligned on the source's freshness
4
senior developers on the project

We combine Pappers with

The stack that surrounds Pappers on our projects.

  • PostgreSQL
  • Redis
  • Yousign
  • HubSpot
  • Node.js
FAQ

Pappers integration: your questions

Three steps. Create an API account and collect the key, which goes in the api-key header and never in the URL. Then build a server-side connector that calls the company record by SIREN, typing the fields as nullable for companies under partial disclosure and treating the 206 code as a third state, neither success nor failure. Finally, add a cache aligned on the real freshness of the source, which is refreshed once a day, and a credit counter per call. Only the suggestions route can be called from the browser: everything else goes through your server.

Billing is per credit, on a public grid: a company record costs 1 credit, a search result 0.1, a PDF or XLSX document 3, a financial score 30. The entry plan recorded in August 2026 is 500 credits a month for 30 euros, with tiers up to 100,000 credits, a discount on annual commitment and a Pay As You Go option with no expiry. The real cost driver is not the price list, it is the number of calls: a decent cache and extra fields requested deliberately cut the bill in half.

It depends on what you have to do with the data. To verify a SIRET and prefill a form, the INSEE Sirene API is enough and it is free. To build a compliance or onboarding file, Sirene is not enough: it holds no directors, no beneficial owners, no deeds and no accounts. Pappers aggregates those sources and delivers the documents as well. We often recommend a two-tier architecture, with the public source for basic identification and as a fallback, and the aggregator for the enrichment that carries value.

Annual accounts, yes, through the API, as PDF, XLSX, text or JSON, each billed according to the credit grid. Beneficial owners require formal clearance, and their most sensitive named fields, such as full date of birth, nationalities or home address, require an additional clearance and a dedicated parameter. In other words, nobody can promise a complete compliance module without settling that point up front. We check it during scoping, before pricing it.

The API stops answering. It is not a technical outage, so no standard HTTP monitoring anticipates it, and on monthly or annual plans unused credits are lost at the end of the period. We systematically wire up balance supervision with a threshold alert and an application circuit breaker, plus a fallback on a free public source for basic identification: the signup form has to keep working even mid-month with the budget spent.

A Pappers integration project?

Let's talk. 30 minutes to scope your need, project your credit consumption and tell you honestly what is feasible.

Discuss my Pappers project
Discuss my Pappers project