# Facturation électronique en Belgique (Peppol BIS)

> Statut au 21/07/2026 : périmètre livré = génération UBL variante
> `peppol-bis` (Epic 6, Story 6.1), conversion CII↔UBL, extraction UBL.

## Ce que dit la réglementation

Depuis janvier 2026, les entreprises belges assujetties doivent pouvoir
émettre et recevoir des factures électroniques structurées via le réseau
**Peppol**, dans la spécialisation **Peppol BIS Billing 3.0** (elle-même
une spécialisation d'UBL 2.1, basée sur la norme EN 16931).

## Ce que Heartwood couvre aujourd'hui

- **Génération UBL 2.1** dans la variante `peppol-bis`
  (`POST /v1/generate/ubl?variant=peppol-bis`) — même modèle pivot EN 16931
  que la génération Factur-X/CII (Epic 1).
- **Conversion** CII↔UBL (`POST /v1/convert`) — utile pour interopérer avec
  un partenaire français (CII) et un partenaire belge (UBL Peppol) sans
  ressaisie.
- **Extraction** d'un UBL reçu vers JSON normalisé
  (`POST /v1/extract`) — même schéma que pour Factur-X/CII.

## Limites connues

- **Rule pack UBL EN16931 réel depuis Story 3.8** (`ubl-en16931-1.4.0`,
  référentiel officiel FNFE-MPE) : `POST /v1/validate` vérifie réellement
  le schéma XSD OASIS UBL 2.1 **et** le schematron EN 16931 lié à UBL
  (`schematronChecked: true`, détection automatique du format). ⚠️ Ce
  n'est **PAS** une certification Peppol BIS complète : le référentiel
  FNFE-MPE couvre le socle EN16931 (dont Peppol BIS est une
  spécialisation), pas les règles **additionnelles propres au réseau
  Peppol** (ex. identifiants de point de terminaison, restrictions de
  listes de codes spécifiques à Peppol) — aucun rule pack Peppol BIS natif
  n'est intégré à ce jour.
- **Le réseau Peppol lui-même n'est pas couvert** : Heartwood génère/
  convertit/extrait des documents, mais ne transmet rien sur le réseau
  Peppol (pas un Access Point Peppol) — voir le README du projet pour le
  périmètre du produit.
- **`[ASSUMPTION]`** : les variantes `fr-socle` et `peppol-bis` partagent
  aujourd'hui exactement le même socle de champs modélisés
  (`core.Invoice`) — aucune règle spécifique à Peppol BIS (ex. codes de
  spécification de document propres au réseau) n'est encore distinguée.
