Sylius18 min

Sylius 2.0 et E-Facture : Preparer Votre E-Commerce a la Reforme de Septembre 2026

Par Pierre-Arthur Demengel
SyliusE-FactureFactur-XPeppolSymfonyE-CommerceConformite

La reforme de la facturation electronique entre en vigueur le 1er septembre 2026 en France. Si vous operez un e-commerce Sylius en B2B, votre systeme de facturation doit etre conforme dans moins de 4 mois. En Belgique, l'obligation Peppol est deja en vigueur depuis janvier 2026. Voici comment preparer votre boutique Sylius 2.0 a ces deux obligations.

Le calendrier legal : ce que vous devez savoir

France : la reforme e-facture

La loi de finances 2024 (article 91) instaure l'obligation de facturation electronique pour toutes les transactions B2B domestiques :

  • 1er septembre 2026 : reception obligatoire pour toutes les entreprises. Emission obligatoire pour les grandes entreprises (GE) et entreprises de taille intermediaire (ETI).
  • 1er septembre 2027 : emission obligatoire pour les PME et micro-entreprises (TPE).

Les formats acceptes sont Factur-X (PDF/A-3 + XML), UBL (Universal Business Language) et CII (Cross-Industry Invoice). Les factures transitent obligatoirement par une Plateforme de Dematerialisation Partenaire (PDP) immatriculee par l'administration fiscale, ou par le Portail Public de Facturation (PPF) Chorus Pro.

Les sanctions : 15 EUR par facture non conforme (plafonné a 15 000 EUR par an), plus le risque de rejet par vos clients GE/ETI des septembre 2026.

Belgique : Peppol obligatoire

Depuis le 1er janvier 2026, toute entreprise assujettie a la TVA en Belgique doit emettre et recevoir des factures electroniques structurees via le reseau Peppol. La periode de tolerance a pris fin en mars 2026. Le format impose est Peppol BIS Billing 3.0 (UBL conforme EN 16931).

Les amendes en cas de non-conformite :

  • 1 500 EUR pour la premiere infraction
  • 3 000 EUR en cas de recidive
  • 5 000 EUR pour les infractions repetees

L'etat des lieux technique dans Sylius

SyliusInvoicingPlugin : la base

Le SyliusInvoicingPlugin officiel genere des factures PDF a partir des commandes Sylius. Il couvre :

  • Generation automatique de facture a la validation de commande
  • Numerotation sequentielle conforme
  • Template PDF personnalisable (Twig + wkhtmltopdf ou Gotenberg)
  • Stockage des factures dans le filesystem ou un object storage (S3, etc.)

Ce qu'il ne fait pas nativement :

  • Generer du XML EN 16931 (Factur-X/UBL/CII)
  • Produire un PDF/A-3 avec XML embarque (norme Factur-X)
  • Se connecter a un reseau Peppol ou a une PDP
  • Gerer le e-reporting (transmission des donnees de transaction a l'administration)

Architecture cible pour la conformite

L'approche que je recommande et que j'implemente dans mes missions de migration Sylius 2.0 :

Sylius 2.0
  |
  +-- SyliusInvoicingPlugin (generation facture)
  |     |
  |     +-- Event: invoice.generated
  |           |
  |           +-- Listener: FacturXGenerator
  |           |     - Convertit la facture en XML CII (profil EN16931)
  |           |     - Embarque le XML dans le PDF via FPDI + ZUGFeRD-PHP
  |           |     - Produit un PDF/A-3 conforme Factur-X
  |           |
  |           +-- Listener: PdpTransmitter
  |                 - Envoie la facture a la PDP via API REST
  |                 - Gere le cycle de vie (deposee, acceptee, rejetee)
  |                 - Stocke l'accuse de reception
  |
  +-- Peppol Gateway (Belgique)
        - Access Point Peppol certifie (ex: Billit, Hermes, CodaBox)
        - Convertit la facture UBL EN 16931
        - Transmet via le reseau Peppol AS4

Implementation technique : Factur-X dans Sylius 2.0

Voici les briques techniques necessaires :

1. Generation du XML CII

// src/Invoice/FacturXGenerator.php
use Easybill\ZUGFeRD\Builder;
use Easybill\ZUGFeRD\Model\Trade\TradeParty;

class FacturXGenerator
{
    public function generateXml(InvoiceInterface $invoice): string
    {
        $builder = Builder::create(Builder::PROFILE_EN16931);

        $builder->setDocumentInformation(
            $invoice->getNumber(),
            'COMMERCIAL_INVOICE',
            $invoice->getIssuedAt(),
            'EUR'
        );

        // Vendeur
        $builder->setSellerTradeParty(
            (new TradeParty())
                ->setName('Votre Societe')
                ->setPostalAddress(/* ... */)
                ->addTaxRegistration('VA', 'FR32930538111')
        );

        // Acheteur
        $builder->setBuyerTradeParty(/* ... */);

        // Lignes de facture
        foreach ($invoice->getLineItems() as $item) {
            $builder->addTradeLineItem(/* ... */);
        }

        return $builder->getXml();
    }
}

2. Embarquement dans le PDF/A-3

// Le XML est embarque comme piece jointe dans le PDF
// conformement a la norme Factur-X (ISO 19005-3)
use Horstoeko\ZugFerd\ZugFerdDocumentPdfMerger;

$merger = new ZugFerdDocumentPdfMerger(
    $xmlContent,
    $pdfContent
);
$merger->generateDocument();
$facturXPdf = $merger->downloadString();

3. Transmission a la PDP

// src/Invoice/PdpTransmitter.php
// Chaque PDP expose une API REST specifique
// L'interface commune :
interface PdpClientInterface
{
    public function deposit(string $facturXPdf, array $metadata): DepositReceipt;
    public function getStatus(string $invoiceId): InvoiceStatus;
    public function listRejections(): array;
}

// Implementations : Chorus Pro, Cegid, Sage, Yooz, etc.

Points de vigilance lors de la migration

Sylius 1.x vers 2.0 + e-facture : les pieges

Si vous etes encore sur Sylius 1.x avec le SyliusInvoicingPlugin, la migration cumule deux chantiers :

  1. Migration Sylius 2.0 : le plugin doit etre mis a jour pour etre compatible avec les Twig Hooks, Symfony 7.x, et la nouvelle architecture frontend. Utilisez Sylius Upgrade Analyzer pour auditer automatiquement la compatibilite.
  2. Mise en conformite e-facture : la couche de generation XML et la connexion PDP doivent etre ajoutees au-dessus du plugin mis a jour.

Mon conseil : ne faites pas les deux en meme temps. Migrez d'abord vers Sylius 2.0, stabilisez, puis ajoutez la couche e-facture. Tenter de faire les deux simultanement multiplie les risques de regression.

Le piege du e-reporting

Au-dela de la facturation electronique, la reforme francaise impose le e-reporting : la transmission des donnees de transaction a l'administration fiscale pour les operations B2C et internationales. Si votre e-commerce Sylius fait du B2C, vous etes concerne. Les donnees a transmettre incluent le montant HT, la TVA, la date, et le type d'operation. Cette transmission passe aussi par la PDP.

Checklist de conformite pour un e-commerce Sylius

  1. Verifier que votre version Sylius est 2.0+ (ou planifier la migration)
  2. Mettre a jour SyliusInvoicingPlugin vers la derniere version compatible
  3. Choisir votre PDP (France) ou votre Access Point Peppol (Belgique)
  4. Implementer la generation XML EN 16931 (Factur-X CII ou UBL)
  5. Generer des PDF/A-3 conformes avec XML embarque
  6. Mettre en place la transmission automatique via API PDP
  7. Gerer le cycle de vie des factures (deposee, acceptee, rejetee)
  8. Implementer le e-reporting si vous faites du B2C (France)
  9. Tester en environnement de pre-production avec votre PDP
  10. Former les equipes a la consultation des factures electroniques

Pourquoi faire appel a un expert ?

La combinaison "migration Sylius 2.0 + conformite e-facture" est un chantier technique majeur. Les enjeux sont a la fois technologiques (nouvelle architecture Sylius, nouvelles librairies, API PDP) et reglementaires (sanctions financieres, rejet de factures par vos clients). J'accompagne les e-commercants et les agences sur les deux volets : migration technique avec audit automatise via Sylius Upgrade Analyzer, et integration de la facturation electronique conforme. Contactez-moi pour un audit gratuit de votre situation.

Questions fréquentes

13 projets livresGrand-Est & BelgiqueLighthouse >90Disponible immédiatement

Un projet en tete ?

Discutons de votre site web. Réponse garantie sous 24h.

Ou appelez directement :06 95 41 30 25

WhatsApp
Appeler