CompanyBelgium

Intégrer l'API BCE/KBO avec votre ERP ou CRM

Guide pratique pour connecter l'API BCE/KBO à vos outils métier : Odoo, SAP, Salesforce, HubSpot et autres ERP/CRM.

1 mars 20267 min de lecture

En bref

Connecter l'API BCE/KBO à votre ERP ou CRM automatise l'enrichissement des fiches clients et fournisseurs : dénomination officielle, numéro TVA, forme juridique, adresse du siège et statut actif/cessé. Un middleware Node.js ou Python suffit pour faire le pont entre votre outil métier (Odoo, Salesforce, HubSpot, SAP) et les données de la Banque-Carrefour des Entreprises.

Pourquoi intégrer l'API avec votre ERP/CRM ?

L'intégration de l'API BCE/KBO avec vos outils métier permet de :

  • Enrichir automatiquement les fiches clients/fournisseurs
  • Valider les numéros BCE/TVA à la saisie
  • Vérifier le statut des entreprises partenaires
  • Mettre à jour les adresses et informations légales

Architecture d'intégration

Code
1
2
3
4
┌─────────────┐     ┌──────────────┐     ┌────────────┐
│  ERP / CRM  │────▶│  Middleware   │────▶│  API BCE   │
│  (Odoo,SAP) │◀────│  (votre API) │◀────│  /KBO      │
└─────────────┘     └──────────────┘     └────────────┘

Exemple avec Node.js (middleware)

TypeScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import express from class="code-string">'express';

const app = express();

class="code-comment">// Endpoint pour enrichir une fiche client
app.get(class="code-string">'/api/enrich/:bceNumber', async (req, res) => {
  const { bceNumber } = req.params;

  const response = await fetch(
    class="code-string">`https:class="code-comment">//companybelgium.be/api/companies/${bceNumber}`,
    {
      headers: {
        class="code-string">'X-API-Key': process.env.BCE_API_KEY!,
        class="code-string">'X-API-Secret': process.env.BCE_API_SECRET!,
      },
    }
  );

  if (!response.ok) {
    return res.status(404).json({ error: class="code-string">'Entreprise non trouvée' });
  }

  const company = await response.json();

  class="code-comment">// Format pour votre ERP/CRM
  res.json({
    name: company.name,
    vatNumber: class="code-string">`BE${bceNumber.replace(/\./g, class="code-string">'')}`,
    legalForm: company.juridicalForm,
    address: company.address,
    status: company.status,
    activities: company.activities,
  });
});

Intégration Odoo

Pour Odoo, créez un module personnalisé qui appelle votre middleware :

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
class="code-comment"># odoo/addons/bce_integration/models/partner.py
from odoo import models, fields, api
import requests

class ResPartner(models.Model):
    _inherit = class="code-string">'res.partner'

    bce_number = fields.Char(class="code-string">'Numéro BCE')

    def action_enrich_from_bce(self):
        response = requests.get(
            fclass="code-string">'http://middleware:3000/api/enrich/{self.bce_number}'
        )
        if response.ok:
            data = response.json()
            self.write({
                class="code-string">'name': data[class="code-string">'name'],
                class="code-string">'vat': data[class="code-string">'vatNumber'],
                class="code-string">'street': data[class="code-string">'address'],
            })

Intégration Salesforce / HubSpot

Pour les CRM cloud, utilisez les API REST ou les webhooks :

  • Créez un Flow (Salesforce) ou Workflow (HubSpot)
  • Déclenchez sur la création d'un nouveau contact/compte
  • Appelez votre middleware via HTTP callout
  • Mettez à jour les champs enrichis
  • Bonnes pratiques

    • Cache les résultats pour réduire les appels API
    • File d'attente pour les enrichissements en masse
    • Logs de toutes les synchronisations
    • Fallback si l'API est temporairement indisponible

    Conclusion

    L'intégration de l'API BCE/KBO avec votre ERP ou CRM automatise l'enrichissement de données et assure la fiabilité de vos informations commerciales. Pour aller plus loin, consultez le guide d'intégration Node.js/TypeScript de l'API BCE, le guide sur l'automatisation de la vérification des fournisseurs, l'article sur le traitement par lots avec l'API BCE/KBO et la référence des endpoints REST de l'API BCE.

    Questions fréquentes

    Comment enrichir automatiquement les fiches clients dans mon CRM avec les données BCE belges ?

    Créez un middleware entre votre CRM et l'API BCE/KBO : lorsqu'un nouveau client est ajouté, votre système appelle l'endpoint /companies/{bceNumber} pour récupérer la dénomination officielle, l'adresse, la forme juridique et le statut actif. Vous mappez ensuite ces champs vers les colonnes correspondantes de votre CRM via son API REST ou ses webhooks.

    Puis-je valider les numéros TVA belges via l'API BCE/KBO lors de la saisie dans mon ERP ?

    Oui. L'API BCE/KBO retourne le numéro de TVA associé à chaque entreprise. Vous pouvez créer un trigger côté ERP (par exemple un module Odoo ou un workflow Salesforce) qui appelle le middleware à la saisie du numéro BCE, vérifie que l'entreprise est active et récupère son numéro TVA officiel pour pré-remplir le champ correspondant.

    Comment synchroniser régulièrement les données BCE dans mon ERP pour garder les fiches à jour ?

    Mettez en place une tâche planifiée (cron job) qui appelle l'API BCE pour chaque entreprise de votre portefeuille et compare les données retournées avec celles stockées dans votre ERP. En cas de divergence (changement d'adresse, cessation d'activité), mettez à jour la fiche et envoyez une notification à l'équipe concernée.

    Quelle architecture recommandez-vous pour connecter l'API BCE/KBO à Salesforce ou HubSpot ?

    Déployez un middleware Node.js ou Python exposant un endpoint REST sécurisé. Dans Salesforce, créez un Flow avec un appel HTTP callout vers ce middleware. Dans HubSpot, utilisez un Workflow avec l'action Webhook. L'avantage du middleware est de centraliser la logique de cache, de retry et de mapping, sans dépendre des capacités natives de chaque CRM.

    Prêt à commencer ?

    Créez votre compte gratuitement et obtenez vos clés API en quelques minutes.

    Commentaires

    Chargement des commentaires…

    Laisser un commentaire

    Non publié — sert uniquement à vous notifier.

    Les commentaires sont modérés avant publication.

    Articles similaires