Facturexa Creator

Créer des factures Factur-X en C# : des factures électroniques conformes directement depuis votre logiciel

Le Creator représente une facture sous forme de modèle objet .NET typé et la sérialise en XML Factur-X/ZUGFeRD (CII) conforme aux normes officielles – de MINIMUM à EXTENDED, y compris la XRechnung allemande.

  • .NET Framework 4.8
  • .NET 8
  • .NET 10
  • ZUGFeRD 2.5.2 / Factur-X 1.09.2
  • XRechnung 3.0 (CII & UBL)
Facturexa.ZugferdCreator
dotnet add package Facturexa.ZugferdCreator
Install-Package Facturexa.ZugferdCreator
📐

Modèle typé

EInvoice avec des méthodes Set/Add explicites pour les parties, les lignes, les taxes, les conditions de paiement, les remises/frais et les documents de référence – chaque champ est documenté avec son terme métier (BT) de l’EN 16931.

🧩

Listes de codes complètes

Pays, devises, catégories de TVA, moyens de paiement, unités (UN/ECE Rec. 20/21) et autres listes de codes officielles sont disponibles sous forme d’énumérations typées – fini la recherche manuelle des codes.

🔍

Contrôle préalable intégré

InvoiceValidator.Validate(...) vérifie l’objet facture selon le profil choisi avant l’écriture – les erreurs apparaissent à la création, pas chez le destinataire.

Couverture

Tous les profils de MINIMUM à EXTENDED ainsi que XRechnung – générés en CII.

Profil Description Validator Creator
MINIMUM Données d’en-tête, pas un format de facture électronique valable à lui seul ✔ Oui ✔ Oui
BASIC WL Données d’en-tête sans lignes de facture ✔ Oui ✔ Oui
BASIC Informations essentielles, lignes de facture comprises ✔ Oui ✔ Oui
EN 16931 / COMFORT Norme européenne de base – format de facture électronique valable ✔ Oui ✔ Oui
EXTENDED Jeu de données étendu ; à partir de Factur-X 1.09.2 / ZUGFeRD 2.5.2 avec sous-lignes, kits et lots ✔ Oui ✔ Oui
XRechnung 3.0 (CIUS) Variante allemande B2G (secteur public), en deux étapes EN 16931 + CIUS ✔ Oui (CII + UBL) ✔ Oui (CII)
Génération UBL Produire la XRechnung en UBL plutôt qu’en CII n/a (la validation est déjà assurée) Prévu

Une intégration simple

Renseigner les données de la facture, ajouter lignes et taxes, choisir un profil, enregistrer – l’exemple ci-dessous utilise uniquement l’API publique réelle de la bibliothèque.

C# – Creator.cs
using Facturexa.ZugferdCreator;

// Une fois au démarrage de l’application.
ZugferdCreatorLicense.RegisterLicense("…");

var invoice = new EInvoice
{
    InvoiceNumber = "FA-2026-0001",
    InvoiceDate = DateTime.Today,
    Currency = InvoiceCurrencyCode.EUR
};

invoice.SetSellerTradeParty("Exemple SAS", "75001", "Paris", "1 rue de l’Exemple", CountryID.FR);
invoice.AddSellerSpecifiedTaxRegistration("FR12345678901", TaxRegistrationSchemeID.VA);

invoice.SetBuyerTradeParty("Client SARL", "69002", "Lyon", "2 place du Client", CountryID.FR);

invoice.AddIncludedSupplyChainTradeLineItem(
    name: "Prestation de conseil",
    netUnitPrice: 100.00m,
    unitCode: UnitCode.C62,
    billedQuantity: 3m,
    lineTotalAmount: 300.00m,
    taxPercent: 20m);

invoice.AddApplicableTradeTax(
    basisAmount: 300.00m, percent: 20m, taxAmount: 60.00m,
    typeCode: TaxTypeCode.VAT, categoryCode: TaxCategoryCode.S);

invoice.LineTotalAmount = 300.00m;
invoice.TaxBasisAmount = 300.00m;
invoice.TaxTotalAmount = 60.00m;
invoice.GrandTotalAmount = 360.00m;
invoice.DuePayableAmount = 360.00m;

// Facultatif : contrôler selon le profil avant l’écriture.
var findings = InvoiceValidator.Validate(invoice, InvoiceProfile.Comfort);

using var xmlStream = new MemoryStream();
invoice.Save(xmlStream, InvoiceProfile.Comfort);
// xmlStream est ensuite prêt en position 0, p. ex. pour l’incorporation PDF/A-3.

Validator et Creator dans une seule licence

Valider et créer des factures électroniques – pour les factures reçues comme émises. Le Reader est gratuit.

à partir de 500 EUR HT / an
les entreprises hors d’Allemagne reçoivent un devis sur demande