<!-- md-source: 51e79266ab8c FactoorSharpWeb/wwwroot/de/Home/PeppolDotNet.md -->

# Peppol BIS Billing 3.0 avec .NET et C#

> Version Markdown de <https://www.factoorsharp.de/fr/Home/PeppolDotNet> pour les agents IA.
> Langues : [Deutsch](https://www.factoorsharp.de/de/Home/PeppolDotNet.md) ·
> [English](https://www.factoorsharp.de/en/Home/PeppolDotNet.md) ·
> [Français](https://www.factoorsharp.de/fr/Home/PeppolDotNet.md)

Peppol BIS Billing 3.0 est un CIUS (Core Invoice Usage Specification) fondé sur
EN 16931 – techniquement la même structure UBL que XRechnung, distinguée par
l'identifiant de spécification BT-24. Avec FactoorSharp, les deux sortent du même modèle
de facture, en C# et en VB.NET.

**Périmètre :** cette page traite du niveau document – créer, lire, identifier. L'envoi
sur le réseau Peppol (AS4) relève d'un Access Point ; voir la section « Là où
FactoorSharp s'arrête ».

## Créer une facture Peppol

```csharp
FacturXInvoice.SetLicense("VOTRE-CLE-DE-LICENCE");

var invoice = FacturXInvoice.CreateInvoice(
    "RE-2025-0042",
    new DateTime(2025, 9, 3),
    CurrencyCodes.EUR);

invoice.SetSeller("BikeTech GmbH", "10115", "Berlin", "Radweg 12", CountryCodes.DE);
invoice.SetBuyer("City Bikes AG", "20457", "Hamburg", "Hafenstraße 45", CountryCodes.DE);

// identifier la facture comme Peppol BIS Billing 3.0 au lieu d'une XRechnung (BT-24)
invoice.SpecificationIdentifier = SpecificationIdentifiers.PeppolBisBilling30;

// Peppol ne connaît pas la syntaxe CII : UBL est donc indiqué explicitement
invoice.Save("peppol-invoice.xml", ZUGFeRDVersion.Version25, Profile.XRechnung, ZUGFeRDFormats.UBL);
```

## XRechnung ou Peppol BIS Billing 3.0 ? Même socle, identifiant différent

Les deux sont des CIUS fondés sur EN 16931 et utilisent la même structure UBL. Ce qui
les distingue est l'identifiant de spécification BT-24, présent dans le XML sous la
forme `cbc:CustomizationID`. Si vous produisez déjà des XRechnung, Peppol ne demande ni
second modèle de facture ni seconde bibliothèque – seulement un autre identifiant à
l'enregistrement.

BT-24 n'est pas une liste de codes fermée : les CIUS d'autres États membres peuvent
également être posés via `SpecificationIdentifier` sous forme d'URN.

```csharp
// Le même modèle de facture, trois formats cibles – distingués par le seul BT-24 :

// 1. XRechnung (valeur par défaut du profil XRechnung, identifiant posé automatiquement)
invoice.Save("xrechnung.xml", ZUGFeRDVersion.Version25, Profile.XRechnung);

// 2. XRechnung avec l'extension KoSIT
invoice.SpecificationIdentifier = SpecificationIdentifiers.XRechnung30Extension;
invoice.Save("xrechnung-extension.xml", ZUGFeRDVersion.Version25, Profile.XRechnung);

// 3. Peppol BIS Billing 3.0
invoice.SpecificationIdentifier = SpecificationIdentifiers.PeppolBisBilling30;
invoice.Save("peppol-invoice.xml", ZUGFeRDVersion.Version25, Profile.XRechnung, ZUGFeRDFormats.UBL);
```

## Ce que Peppol exige en plus

L'identifiant de spécification ne suffit pas à transformer une XRechnung en facture
Peppol valide. Deux éléments facultatifs dans une XRechnung simple sont obligatoires
pour Peppol BIS Billing 3.0 :

- **Identifiants de participant (BT-34 / BT-49) :** le vendeur et l'acheteur doivent
  chacun disposer d'une adresse électronique avec son schéma – c'est ainsi que le
  Service Metadata Publisher (SMP) trouve le destinataire.
- **Référence de l'acheteur ou référence de commande (BT-10 / BT-13) :** au moins un des
  deux champs doit être renseigné. Pour les XRechnung adressées aux acheteurs publics
  allemands, BT-10 contient généralement déjà le Leitweg-ID.

```csharp
// Identifiants de participant du vendeur et de l'acheteur (BT-34 / BT-49).
// On utilise couramment le numéro de TVA (schéma 9930 pour l'Allemagne) ou un GLN (schéma 0088).
invoice.SetSellerElectronicAddress("DE123456789", ElectronicAddressSchemeIdentifiers.GermanyVatNumber);
invoice.SetBuyerElectronicAddress("DE987654321", ElectronicAddressSchemeIdentifiers.GermanyVatNumber);

// Peppol BIS Billing 3.0 exige qu'au moins un de ces deux champs soit renseigné
invoice.ReferenceOrderNo = "PROJ-4711"; // référence de l'acheteur, BT-10
// ou bien :
invoice.OrderNo = "PO-2026-0042";       // référence de commande, BT-13
```

Le processus métier BT-23 est posé automatiquement à l'enregistrement, car XRechnung
comme Peppol BIS Billing l'exigent.

## Traiter les factures Peppol entrantes

La lecture fonctionne exactement comme pour ZUGFeRD et XRechnung. Le référentiel employé
par l'émetteur figure dans BT-24 ; les identifiants de participant sont portés par les
parties. Les adresses électroniques ne se limitent pas au vendeur et à l'acheteur – le
modèle de données en prévoit sur 19 termes métier.

```csharp
var invoice = FacturXInvoice.Load("peppol-invoice.xml");

// Quel référentiel a été utilisé ? BT-24 figure comme cbc:CustomizationID dans le document.
if (invoice.SpecificationIdentifier == SpecificationIdentifiers.PeppolBisBilling30)
{
    var sellerEndpoint = invoice.Seller.ElectronicAddress;   // BT-34
    var buyerEndpoint = invoice.Buyer.ElectronicAddress;     // BT-49
}
```

## Là où FactoorSharp s'arrête : l'Access Point

Peppol comporte deux volets que l'on confond souvent : le **document** et le **réseau**.
FactoorSharp couvre le premier. Le transport sur le réseau Peppol via AS4 relève d'un
Access Point.

| Avec FactoorSharp | Ce pour quoi un Access Point est nécessaire |
|---|---|
| Créer et lire du Peppol BIS Billing 3.0 (UBL) | Envoi et réception sur le réseau Peppol (AS4) |
| Poser et exploiter l'identifiant de spécification BT-24 | Enregistrement en tant que participant Peppol |
| Processus métier BT-23 (posé automatiquement) | Recherche du destinataire via SMP et SML |
| Identifiants de participant BT-34 / BT-49 avec schéma EAS | Certificats et accusés de réception |
| Renseigner les champs obligatoires BT-10 / BT-13 | |
| ZUGFeRD, Factur-X et XRechnung à partir du même modèle | |

## Cas d'usage typiques

- Facturer des partenaires ailleurs dans l'UE qui reçoivent via Peppol
- Alimenter un Access Point existant en documents
- Étendre une intégration XRechnung existante à Peppol
- Traiter les factures UBL entrantes issues du réseau Peppol

## Questions fréquentes

**FactoorSharp peut-il envoyer des factures Peppol ?**
Non. FactoorSharp travaille au niveau du document : il crée, lit et valide des documents
Peppol BIS Billing 3.0. L'envoi sur le réseau Peppol passe par AS4 et suppose un Access
Point ainsi qu'un enregistrement en tant que participant Peppol.

**Quelle est la différence entre XRechnung et Peppol BIS Billing 3.0 ?**
Les deux sont des CIUS fondés sur EN 16931 et utilisent la même structure UBL. Ce qui
les distingue est BT-24 (`cbc:CustomizationID`). XRechnung est la norme allemande pour
les acheteurs publics, Peppol BIS Billing 3.0 le référentiel des échanges sur le réseau
Peppol. Peppol exige en outre des identifiants de participant pour les deux parties
(BT-34 / BT-49) et au moins un des champs BT-10 ou BT-13.

**FactoorSharp prend-il en charge UBL ?**
Oui. Outre la syntaxe CII, FactoorSharp produit également de l'UBL – via
`ZUGFeRDFormats.UBL` à l'enregistrement. Pour Peppol, c'est indispensable, car Peppol
BIS Billing 3.0 ne connaît pas la syntaxe CII.

**Quels identifiants de participant sont pris en charge ?**
L'adresse électronique est posée avec un schéma issu de la liste de codes EAS, par
exemple le numéro de TVA allemand (schéma 9930) ou un GLN (schéma 0088). Les constantes
correspondantes se trouvent dans `ElectronicAddressSchemeIdentifiers`.

**Dois-je remanier mon modèle de facture existant pour Peppol ?**
Non. Si vous créez déjà des documents ZUGFeRD ou XRechnung avec FactoorSharp, Peppol se
résume à poser l'identifiant de spécification et à enregistrer en UBL. Lignes, taxes et
parties restent inchangées.

**Existe-t-il une licence d'essai gratuite ?**
Oui, 30 jours avec toutes les fonctionnalités, sans information de paiement.

## Pages associées

- [Aperçu du produit](https://www.factoorsharp.de/fr/Home/Index.md) – fonctionnalités,
  tarifs, questions fréquentes
- [ZUGFeRD .NET et ZUGFeRD C#](https://www.factoorsharp.de/fr/Home/ZugferdDotNet.md) –
  aperçu compact pour les projets .NET
- [Pour commencer](https://www.factoorsharp.de/fr/Home/GettingStarted.md) – installation
  et première facture Factur-X
- [Inscription](https://www.factoorsharp.de/account/SignUp?culture=fr) – essai gratuit de 30 jours
