Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.invopop.com/llms.txt

Use this file to discover all available pages before exploring further.

Introduction

Verifying that a party is registered in the French Annuaire before issuing or receiving an invoice reduces rejections and lets you branch regulated vs. non-regulated flows correctly. This guide shows how to query the PPF Annuaire so you can:
  • Verify that a SIREN is registered as a sender or receiver in the Annuaire.
  • Resolve the electronic address used to route invoices to a given party.
  • Branch invoice and party workflows between regulated e-invoicing and the e-reporting flow.

Prerequisites

  • A live workspace (Lookup will error with 403 Forbidden in Sandbox).
  • Within Console, make sure you have connected the France app.

Console support

Add the Lookup in Directory step to your invoice, party or status workflows. In the invoice workflow, the step can be configured to lookup suppliers and customers. The job will fail if no matching entry is found, and you can handle the exception any way you want (usually routing to non-regulated flow).
Configure the Lookup in Directory step for invoices

API support

Look up by SIREN

Use this endpoint when you have the French legal identifier of a company and want to know whether it is reachable through the Annuaire. A SIREN may have multiple entries (one per registered SIRET / electronic address), so the response is always a list. An empty results array means the SIREN is not currently registered in the Annuaire. The following outcomes are possible:
StatusResultFlow typeAction
Party is registeredReturns one or more entriesRegulatedRoute via Peppol; PPF expects a copy through the PA send invoice workflow
Party is not registeredReturns an empty listNon-regulatedRoute through the e-reporting flow instead of Peppol

Look up by electronic address

Use this endpoint when you already have the electronic address (the value used to route invoices in France, typically in scheme:value form) and want to confirm it resolves to a registered entry. This is useful when a counterparty supplies their routing identifier directly rather than just a SIREN. The behaviour mirrors the SIREN lookup:
  • Identifier is registered: returns the matching entry.
  • Identifier is unknown: returns an empty list. The address cannot be used as a Peppol routing target for regulated flows.
See the API reference for lookup by electronic address for the full request and response shape.

Using lookups in workflows

The typical pattern is to call the lookup endpoint from your own systems before triggering an invoice workflow, and then choose which workflow to fire:
  • Both parties registered โ†’ run the PA send invoice workflow, which transmits over Peppol and forwards the F1 copy to the PPF.
  • One or both parties unregistered โ†’ run the e-reporting recording workflow so the transaction is reported to the PPF on the next periodic submission.
This keeps the Record Invoice step in the send workflow from rejecting non-regulated traffic.

France FAQ

Find answers to frequently asked questions about invoicing in France โ†’

Participate in our community

Ask and answer questions about invoicing in France โ†’