BODACC iGaming Signal Workflow
Signal-based outbound workflow that monitors French public legal data (BODACC) for corporate transformation events at iGaming B2B vendors, scores companies by transformation intensity, enriches decision-maker contacts, and generates personalized cold emails in French referencing real legal events.
The brief
French iGaming B2B vendors — payment processors, compliance tools, platform suppliers, marketing agencies serving ANJ-licensed operators — go through constant corporate restructuring. Regulatory pressure from the July 2025 tax increase and pending casino legalization drives capital raises, director appointments, and legal form transformations. These events are published in the BODACC (Bulletin Officiel des Annonces Civiles et Commerciales), a government gazette that has existed since 1955.
Nobody pipes this data through a scoring model for outbound. The goal was to build a workflow that monitors BODACC events, scores companies by transformation intensity over a rolling window, enriches only the companies that earn it, and generates cold emails in French that reference the exact legal events the recipient has never been pitched on before.
The target universe is narrow on purpose: 33 French-registered iGaming entities after cleaning. I spent 15 years in the iGaming industry before moving to GTM engineering, which makes the targeting and copy credible in ways a generic agency could not replicate.
Architecture overview
Four Clay tables connected via Route Row actions, built programmatically using Rex (a Python SDK for Clay's internal API). The data pipeline runs through Python scripts that call external APIs, score events, and push results into Clay. The key design constraint is credit conservation: the free data layer (BODACC via OpenDataSoft) handles all monitoring and scoring. Paid enrichment (Pappers API) only fires when a company crosses the score threshold.
Table 1: SIREN Master List — Static base list of 33 verified iGaming companies. Built from Pappers autocomplete search filtered by NAF codes and iGaming keywords, cleaned of false positives, and enriched with company metadata.
Table 2: BODACC Events — Populated via Python script calling the BODACC OpenDataSoft API per SIREN. One row per scored event, linked to Table 1 via Lookup column. 20 scored events from a 180-day backfill.
Table 3: Scored Companies — Aggregates events per SIREN over a 180-day window. Applies compound multipliers for clustered events. Triggers Pappers API enrichment only when the composite score crosses the threshold. 7 scored companies.
Table 4: People + Outreach — One row per contact. Receives data from Table 3 via Route Row when a company is ready for outreach. Contains the personalized email generated from fixed templates based on which events fired. 4 unique qualified leads with verified emails.
Table 1: SIREN Master List
The starting list of companies to monitor. Each row contains a company name, SIREN (the 9-digit French company identifier), NAF code, domain, tier assignment, notes from Pappers enrichment, and a last_enriched date.
The list was initially built by querying Pappers autocomplete with company names from the iGaming ecosystem — operators, platform providers, payment processors, and affiliates. NAF codes served as a secondary filter: 9200Z (gambling and betting), 6201Z (software publishing), 6202A (IT consulting), 6311Z (data processing), 7311Z (advertising agencies).
The raw autocomplete results returned significant noise — searching "IGT" returned tapestry installers, searching "PMU" returned leather goods companies, searching "FDJ" returned youth hostels. A whitelist-based cleanup removed 70+ false positives, leaving 33 verified iGaming companies.
Known anchor companies seeded the list: Sportradar AG France, Honoré Gaming / Sportytote, Betclic Everest Group, and Winamax. The rest came from Pappers search results and industry knowledge. Each company was enriched with activity descriptions and last_enriched dates via the Pappers API.
Table 2: BODACC Events
Data source
A Python script queries the BODACC OpenDataSoft API per SIREN from Table 1:
GET https://bodacc-datadila.opendatasoft.com/api/explore/v2.1/catalog/datasets/annonces-commerciales/records
?where=registre LIKE '{siren}' AND dateparution>='{since_date}'
&order_by=dateparution DESC
&limit=100
The BODACC API publishes roughly 27,000 events per day across all French companies. The per-SIREN query approach avoids scanning the full daily feed — with 33 target companies, the script makes 33 API calls and completes in under a minute. The API is free with no authentication required.
The registre field returns a two-element array: the clean 9-digit SIREN and a space-formatted version. The first element is used for matching.
Event classification
A Python function classifies each event based on the familleavis_lib field (event family) and modificationsgenerales.descriptif (event details):
- Ventes et cessions → Cession de fonds de commerce (+9)
- Modifications diverses → differentiated by descriptif:
- Contains "capital" → Augmentation de capital (+8)
- Contains "forme juridique" or "transformation" → Transformation juridique (+7)
- Contains "administration", "nomination", or "dirigeant" → Nomination dirigeant (+6)
- Contains "siège" or "transfert" → Transfert siège social (+4)
- Immatriculations or Créations → Nouvelle immatriculation (+5)
- Procédures collectives → Procédure collective (-5)
- Dépôts des comptes → Filtered out (lowest signal value, represents the bulk of daily events)
Results
180-day backfill across 33 companies produced 20 scored events. Companies with BODACC activity included Winamax (4 events), Sportytote (6 events), Betclic Everest Group (3 events), Betclic 2 (2 events), Betclic Overseas (1 event), and PMU (1 event).
Table 3: Scored Companies
Scoring model
Each event type carries a weight calibrated for the iGaming vertical:
| Event | Weight | Rationale |
|---|---|---|
| Cession de fonds de commerce | +9 | New operator needs every service from scratch |
| Augmentation de capital | +8 | Fresh budget, growth spend imminent |
| Transformation de forme juridique (SARL→SAS) | +7 | Almost always precedes fundraise or scale |
| Nomination de dirigeant | +6 | New DG did not choose incumbent vendors — 30-60 day window |
| Nouvelle immatriculation | +5 | Brand new entity, everything to buy |
| Transfert de siège social | +4 | Relocation often accompanies restructuring |
| Procédure collective | -5 | Credit risk, deprioritize |
Compound multiplier: If three or more events occur within 30 days, a 1.5x multiplier applies to the total score. A cluster of events in a compressed timeframe signals active transformation rather than routine filings.
Threshold: A composite score of 6 or higher triggers Pappers enrichment. The original design specified a threshold of 12, but the 180-day backfill across 33 companies produced only 2 companies above 12 (Winamax at 30 and Betclic Everest at 18). The threshold was lowered to capture all companies with meaningful BODACC activity.
Pappers enrichment
When a company crosses the threshold, a Python script calls the Pappers REST API (GET https://api.pappers.fr/v2/entreprise?api_token=KEY&siren={siren}) and extracts:
- Company capital and legal form
- Current dirigeants (name, role, appointment date) — the script prioritizes executive roles (Président, Directeur Général, Gérant)
- Revenue from financial statements (chiffre d'affaires)
- Headcount tier
The enrichment is gated by the score threshold condition. Each API call costs 1 Pappers credit. Total credits consumed for 7 companies: 7 credits.
A ready_for_outreach flag combines three checks: the score threshold is met, Pappers enrichment is complete, and a dirigeant name exists. Only rows passing all three flow to Table 4.
Scored companies
| Company | Score | Events |
|---|---|---|
| Sportytote | 40.0 | 6 events — Nomination dirigeant, Augmentation de capital |
| Winamax France | 30.0 | 4 events — Cession, Nouvelle immatriculation, Augmentation de capital |
| Winamax (SA) | 26.0 | 3 events — Cession, Augmentation de capital |
| Betclic Everest Group | 18.0 | 3 events — Nomination dirigeant |
| Betclic 2 | 12.0 | 2 events — Nomination dirigeant |
| Betclic Overseas | 6.0 | 1 event — Nomination dirigeant |
| PMU Pari Mutuel Urbain | 6.0 | 1 event — Nomination dirigeant |
Table 4: People + Outreach
Contact enrichment
Dirigeant names come from Pappers API enrichment in Table 3. For contacts where Pappers returned an empty name (Sportytote, Winamax SA, Betclic 2, Betclic Overseas), Clay's contact enrichment MCP was used to find executives by title at the company domain.
Email addresses were found through Clay's email enrichment:
- Cyrille Giraudat (PMU, Directeur Général since Jan 2026):
cyrille.giraudat@pmu.fr - Nicolas Béraud (Betclic Everest, Président since Jan 2026):
n.beraud@betclicgroup.com - Christophe Casanova (Sportytote / Honoré Gaming, CEO & Founder):
christophe.casanova@honore-gaming.com - Alexandre Roos (Winamax, Président):
alexandre.roos@winamax.fr— inferred from verified email pattern (firstname.lastname@winamax.fr confirmed via 4 other Winamax employees)
After deduplication (Nicolas Béraud appeared across 3 Betclic entities, Alexandre Roos across 2 Winamax entities), the final output is 4 unique contacts.
Template selection
The AI does not free-write emails. It selects from fixed templates based on which combination of BODACC events fired for each company:
- V1 — New director only (Peter Drucker quote)
- V2 — Capital increase only (Warren Buffett quote)
- V4 — Capital increase + new director (Buffett snowball quote)
Each template follows the same structure: open with the specific events stated as bare facts, include a relevant quote from a business thinker, and close with a signature. The tone is calm, precise, and slightly disarming. All quotes have been verified against primary sources.
Subject line generation
Subject lines reference the company name and the most significant events. Maximum 8 words. No emojis, no clickbait.
Examples from actual output: "PARI MUTUEL URBAIN, nouveau dirigeant" and "WINAMAX FRANCE, augmentation de capital et cession"
Credit conservation strategy
| Step | Credit gate |
|---|---|
| BODACC event polling | Always runs — free API, no authentication |
| Event scoring | Python script — zero cost |
| Pappers enrichment | Only if composite score ≥ 6 (7 credits consumed) |
| Clay contact enrichment | Only for contacts missing from Pappers (Clay credits) |
| Email enrichment | Only for contacts with LinkedIn profiles found |
| Email generation | Python template engine — zero cost |
| CSV export | Python script — zero cost |
The design principle is that free data does the filtering. Paid enrichment only fires on companies that earned their way into the pipeline through scoring. Total Pappers credits consumed: 7 out of 500 available.
Results
Starting from 33 companies monitored over 180 days of BODACC data:
- 33 verified iGaming companies in the SIREN master list (cleaned from 103 initial autocomplete results)
- 20 scored BODACC events across 7 companies
- 7 companies entered the enrichment pipeline
- 4 unique qualified contacts with verified emails and personalized cold emails
- Composite scores ranging from 6.0 to 40.0
Low volume. High precision. Every row earned its place.
What makes this different
The email that comes out of this pipeline references facts the recipient has never been pitched on before. The sentence "Vous venez de prendre vos fonctions de Directeur Général" appears because a government gazette published the appointment — not because a LinkedIn scraper detected a job change.
The compound scoring model is new. Individual BODACC events are monitored by tools like Mixdata and Prospkt, but scoring across event types with cluster multipliers and using the composite score to gate enrichment spend is an approach that does not exist in any current tool.
Two public data sources. Zero proprietary data. RGPD-compliant by design. Native French copy that is not translated English, targeting an industry vertical where 15 years of context makes the difference between credible outreach and noise.
Tools used
- Rex (Python SDK for Clay) — programmatic table creation, column management, record operations
- Clay Pro — table infrastructure, Route Row connections, contact enrichment via MCP
- BODACC OpenDataSoft API — event monitoring (free, no authentication)
- Pappers API v2 — company enrichment (API key, credit-gated)
- Python — scoring engine, event classification, email template selection, CSV export
- Claude Code — build orchestration, debugging, data cleanup