French BODACC Announcements

Read a French company's BODACC announcements by SIREN, including insolvency proceedings, sales and registration changes.

Pay by wallet (x402) fr-bodacc-lookup

Example

Input
{
  "siren": "552049447"
}
Answer
{
  "siren": "552049447",
  "data_source": "BODACC (Bulletin Officiel des Annonces Civiles et Commerciales)",
  "announcements": [
    {
      "id": "B202101671375",
      "url": "https://www.bodacc.fr/pages/annonces-commerciales-detail/?q.id=id:B202101671375",
      "city": "Saint-Denis",
      "date": "2021-08-27",
      "court": "GREFFE DU TRIBUNAL DE COMMERCE DE BOBIGNY",
      "family": "modification",
      "judgment": null,
      "entity_name": "Société nationale SNCF",
      "postal_code": "93200",
      "family_label": "Modifications diverses"
    }
  ],
  "insolvency_count": 0,
  "total_announcements": 72,
  "has_insolvency_filing": false,
  "most_recent_insolvency": null,
  "most_recent_announcement_date": "2021-08-27"
}

Inputs

FieldTypeRequiredWhat it is
limitintegerNoOptional max number of announcements to return (default 50, max 200).
sirenstringNo9-digit French SIREN (with or without spaces). Canonical input.
since_datestringNoOptional ISO date (YYYY-MM-DD) to filter announcements published on or after this date.
company_namestringNoOptional fallback input — company name to search BODACC if no SIREN is known. Resolves to SIREN internally.

Output fields

How reliably each field appears in a successful answer.

FieldTypeAppears
sirenstringAlways (present in every successful answer)
data_sourcestringAlways (present in every successful answer)
announcementsarrayAlways (present in every successful answer)
insolvency_countintegerAlways (present in every successful answer)
total_announcementsintegerAlways (present in every successful answer)
has_insolvency_filingbooleanAlways (present in every successful answer)
most_recent_insolvencyobject or nullUsually (present for most inputs)
most_recent_announcement_datestring or nullUsually (present for most inputs)

How to call it

The same tool through each route. MCP clients reach it through Strale’s server at https://api.strale.io/mcp; the call below is what the agent sends.

# Needs an API key. max_price_cents caps what this call may cost.
curl -X POST https://api.strale.io/v1/do \
  -H "Authorization: Bearer $STRALE_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
    "capability_slug": "fr-bodacc-lookup",
    "inputs": {
      "siren": "552049447"
    },
    "max_price_cents": 5
  }'

Limitations

  • Coverage limited to French registered entities

    BODACC only contains announcements for entities registered in the French commercial register (RCS). Foreign entities operating in France without RCS registration are not covered. SIREN is the unique identifier — entities without a SIREN cannot be looked up.

  • Annual-accounts deposits ("dpc") dominate the corpus

    The most common announcement type is "Dépôts des comptes" (annual accounts deposit) — these are routine compliance filings, not risk signals. Use has_insolvency_filing or insolvency_count to isolate the litigation/bankruptcy signal.

  • Recovery from insolvency is not auto-detected

    has_insolvency_filing is true if any procédure collective announcement exists in history. It does not distinguish active proceedings from closed/recovered ones. Inspect most_recent_insolvency.judgment_nature to read the latest court action (e.g. "Jugement de clôture" indicates closure).

    What to do instead: Read most_recent_insolvency.judgment_nature and judgment_date to determine current status.