À partir de 2026, la Direction Générale des Impôts (DGI) déploie au Maroc un modèle de facturation électronique par clearance : chaque facture doit être validée en temps réel par la plateforme xHub avant d'être légalement transmise au client. Cet article explique concrètement comment fonctionne xHub, quels champs sont vérifiés, quels rejets à éviter, et comment préparer votre entreprise — que vous soyez café, restaurant, salon, boutique retail, cabinet ou industrie.
L'essentiel en 30 secondes
- xHub = plateforme centrale de la DGI qui reçoit chaque facture émise sous format UBL / CII XML et la valide en temps réel avant qu'elle circule vers le client.
- Le modèle est "clearance" : sans validation xHub, la facture n'existe pas juridiquement — le client ne peut pas la déduire pour la TVA.
- Calendrier des paliers : grandes entreprises à partir de janvier 2026, moyennes à partir de juillet 2026, TPE/PME (CA > 500 000 DH) à partir de janvier 2027. Dates finales dépendantes du décret d'application.
- Les rejets typiques viennent des ICE clients manquants ou invalides, des ruptures de séquence de numérotation, ou des taux TVA incorrects.
- Votre caisse ou votre logiciel de facturation doit savoir communiquer avec xHub avant l'échéance qui vous concerne.
Qu'est-ce que xHub
xHub est le nom de la plateforme technique centrale que la Direction Générale des Impôts (DGI) déploie pour la facturation électronique obligatoire au Maroc. Elle joue trois rôles principaux :
- Réception : chaque facture émise au Maroc par un contribuable soumis à l'obligation est transmise à xHub sous format XML structuré (UBL 2.1 ou CII).
- Validation : xHub contrôle en temps réel que la facture respecte les normes techniques (structure XML), les règles fiscales (TVA correctement calculée, mentions obligatoires présentes) et les règles de cohérence (ICE valide, numérotation continue, montants cohérents).
- Autorisation : une fois validée, la facture reçoit un identifiant unique xHub qui la rend légalement valide. Elle peut alors être transmise au client.
Sans passage par xHub et sans identifiant retour, la facture n'a pas d'existence juridique — même si vous la remettez au client en papier ou en PDF.
Le modèle de clearance en pratique
Le Maroc a choisi un modèle de clearance stricte — parmi les plus exigeants au monde. Voici le circuit type d'une facture B2B après entrée en vigueur :
Étape 1 — Émission côté commerçant
Votre logiciel de caisse ou de facturation prépare la facture au format UBL 2.1 XML. Doivent y figurer :
- Vos identifiants entreprise (ICE, IF, RC)
- L'ICE du client (obligatoire pour B2B)
- Le numéro de facture (chronologique, sans rupture)
- La date d'émission
- Le détail des lignes (produits/services, quantités, prix unitaires HT, taux TVA)
- Les totaux (HT, TVA par taux, TTC)
- Toutes mentions légales requises (référence commande, conditions de paiement, etc.)
Étape 2 — Transmission à xHub
Votre système envoie automatiquement le XML à xHub via une API sécurisée dès la validation en caisse. Le temps de transmission est de quelques centaines de millisecondes en conditions normales.
Étape 3 — Validation xHub
xHub effectue en temps réel :
- Contrôles techniques : structure XML conforme, signature électronique valide.
- Contrôles fiscaux : ICE reconnus, taux TVA cohérents avec les catégories de produits, calculs corrects.
- Contrôles de cohérence : numéro chronologique respecté, montants cohérents, pas de doublon.
Résultat retourné : VALIDÉE avec identifiant unique, ou REJETÉE avec code de rejet.
Étape 4 — Circulation ou correction
- Si validée → votre système imprime le ticket / envoie le PDF avec l'identifiant xHub. Le client peut déduire la TVA.
- Si rejetée → votre système affiche l'erreur, vous corrigez, vous re-soumettez.
Dans le cas d'un ticket B2C simple (client particulier), les règles peuvent être allégées — mais toute vente à un professionnel doit passer par xHub.
Quels champs sont contrôlés (et où les commerces se plantent)
D'après les communications techniques publiques de la DGI et l'expérience des pays voisins ayant déployé des systèmes similaires (Turquie, Italie, Portugal), voici les principaux motifs de rejet attendus au Maroc :
ICE client manquant ou invalide
C'est le motif de rejet numéro 1. La facture B2B sans ICE client valide sera rejetée immédiatement. Beaucoup de commerces marocains saisissent l'ICE au feeling ou l'oublient carrément sur les factures — ce qui passait avant l'ère électronique ne passera plus.
À faire : votre caisse doit imposer la saisie de l'ICE au moment de la facturation B2B, avec vérification de format (15 chiffres) et idéalement vérification en ligne quand la DGI ouvrira son service de lookup ICE.
Rupture de séquence de numérotation
Chaque facture doit avoir un numéro chronologique sans trou. Si vous éditez la facture 100 puis la 102 (en oubliant la 101), xHub détecte le trou et pose problème.
À faire : votre logiciel doit gérer une séquence automatique avec verrou sur l'incrément — pas de saisie manuelle.
Taux TVA incorrect
Le Maroc a plusieurs taux (20%, 14%, 10%, 7%, 0%). Chaque produit ou service doit être associé au bon taux. Une baguette à 20% de TVA (au lieu de 10%) sera rejetée. Un service traiteur à 7% (au lieu de 10%) idem.
À faire : configurer votre catalogue produits avec les taux corrects une fois pour toutes, plutôt que de choisir au moment de la vente.
Format XML non conforme
Le format UBL 2.1 est strict. Un champ manquant, un attribut mal placé, une balise inconnue = rejet.
À faire : ne pas essayer d'émettre du XML "à la main". Utiliser un logiciel de caisse ou de facturation qui a validé sa conformité UBL avec la DGI (idéalement testé sur la sandbox xHub avant la production).
Signature électronique manquante ou expirée
Chaque facture doit être signée électroniquement (identité + intégrité). Si votre certificat expire, toutes les factures suivantes sont rejetées jusqu'au renouvellement.
À faire : suivre le calendrier de renouvellement du certificat électronique dès l'inscription.
Le calendrier — quand ça vous concerne
Le déploiement de xHub suit un calendrier par paliers définis par le décret d'application (en cours de finalisation à la date de rédaction de cet article) :
| Palier | Cible | Date probable |
|---|---|---|
| Palier 1 | Grandes entreprises soumises à l'IS | À partir du 1er janvier 2026 |
| Palier 2 | Entreprises moyennes | À partir du 1er juillet 2026 |
| Palier 3 | TPE / PME (CA > 500 000 DH), auto-entrepreneurs concernés | À partir du 1er janvier 2027 |
Détails plus complets dans notre guide DGI 2026-2027 pour TPE/PME et le guide complet DGI facturation électronique.
Important : même si vous êtes TPE (échéance janvier 2027), vos clients B2B grandes entreprises peuvent vous imposer la conformité plus tôt — ils ne pourront pas déduire la TVA sur vos factures non conformes dès leur propre échéance.
Comment se préparer — checklist en 5 étapes
1. Auditer votre logiciel de caisse actuel
Question à poser à votre éditeur (par écrit) : "Votre logiciel émet-il des factures électroniques au format UBL 2.1 conformes DGI et transmet-il à xHub ? Si non, à quelle date la mise à jour est-elle prévue et à quel coût pour moi ?"
Trois cas :
- Cas A : votre éditeur confirme la roadmap avec date + coût → notez-le, prévoyez la bascule.
- Cas B : votre éditeur ne sait pas répondre ou vous dit qu'il y réfléchira → alarme rouge, cherchez une alternative dès maintenant.
- Cas C : vous utilisez un cahier papier, Excel ou un logiciel non DGI-ready → migration obligatoire vers un outil conforme.
2. Nettoyer votre catalogue produits et TVA
Assurez-vous que chaque produit ou service dans votre système est associé au bon taux de TVA. C'est un travail de 2-4 heures pour un commerce moyen, à faire une fois pour toutes.
3. Nettoyer votre fichier clients
Vérifiez que chaque client B2B a son ICE saisi et valide. Faites-le avant l'entrée en vigueur — pendant, ce sera un enfer.
4. Tester en sandbox xHub
La DGI ouvre une plateforme de test (sandbox) avant chaque palier. Votre éditeur doit y tester la conformité de son intégration. Demandez-lui la preuve du test.
5. Former votre équipe
Vos caissiers doivent comprendre :
- Que la facture est différente du ticket (règles plus strictes).
- Comment saisir l'ICE client au comptoir.
- Que faire en cas de rejet xHub (rare mais possible — la vente doit-elle attendre ? offrir un ticket provisoire ? etc.).
Voir notre guide de préparation en 6 mois pour TPE/PME.
Ce qui peut mal tourner (et comment s'y préparer)
La connexion internet tombe pendant une vente
Le service xHub nécessite une connexion. En cas de coupure :
- Certains logiciels gèrent un mode hors-ligne temporaire — la facture est stockée localement et transmise à xHub dès la reconnexion. C'est ce que fait Caissa.
- D'autres bloquent la vente jusqu'au retour de connexion.
À demander à votre éditeur : quel est le comportement en cas de coupure ?
xHub tombe (panne côté DGI)
C'est possible. Dans ce cas, aucun système ne peut plus émettre. La DGI publiera généralement des règles d'exception (facturation papier temporaire acceptée, avec régularisation ultérieure). Suivez les communications officielles.
Un rejet en boucle
Si une facture est rejetée systématiquement pour un même motif que vous n'arrivez pas à corriger, contactez votre éditeur et parallèlement l'assistance DGI. Ne restez pas bloqué — chaque jour de blocage = ventes perdues.
FAQ
xHub est-il obligatoire pour toutes les entreprises ?
Progressivement, oui. Le calendrier par paliers déploie l'obligation entre janvier 2026 (grandes entreprises IS) et janvier 2027 (TPE/PME au CA > 500 000 DH). Les auto-entrepreneurs en dessous du seuil et les tickets B2C simples pourraient être exemptés selon le décret final.
Qui construit la connexion technique à xHub ?
Votre éditeur de caisse ou de logiciel de facturation. Vous n'avez ni à coder ni à installer quoi que ce soit vous-même. Votre travail est de choisir un éditeur qui a fait le travail à temps.
Puis-je continuer à imprimer des tickets papier ?
Oui pour les ventes B2C (clients particuliers). Non pour les factures B2B (clients professionnels avec ICE) — elles doivent obligatoirement passer par xHub même si vous imprimez un exemplaire papier en plus.
Combien coûte l'intégration à xHub pour un petit commerce ?
Cela dépend de votre éditeur. Certains l'incluent dans leur abonnement. D'autres facturent une mise à jour ou un module. Chez Caissa, la mise en conformité DGI est incluse dans le forfait — pas de surcoût de mise à jour.
Puis-je utiliser Excel pour émettre des factures xHub ?
Non. Excel ne sait pas parler à xHub. Il faut un logiciel de caisse ou de facturation qui gère l'API xHub et le format UBL 2.1.
Que se passe-t-il si je ne me mets pas en conformité à temps ?
- Vos factures ne sont pas déductibles côté client → perte commerciale immédiate (les clients B2B vont refuser vos factures).
- Amendes DGI selon les articles 191, 192, 198 ter du CGI (voir notre guide sanctions DGI).
- Risque de contrôle fiscal approfondi.
En résumé
- xHub = plateforme DGI centrale de clearance des factures électroniques au Maroc.
- Modèle clearance strict : validation temps réel avant que la facture circule.
- Champs contrôlés : ICE client, numérotation, taux TVA, structure XML, signature électronique.
- Calendrier : grandes entreprises 2026 → TPE/PME 2027, sous réserve du décret d'application.
- Préparation : auditer votre logiciel, nettoyer catalogue et fichier clients, tester en sandbox, former l'équipe.
Pour aller plus loin :
- Guide complet DGI 2026-2027 facturation électronique
- DGI 2027 TPE/PME — 6 mois pour se préparer
- DGI sanctions Maroc — cas chiffrés
- Audit gratuit Caissa — 15 min sur WhatsApp pour vérifier si votre caisse actuelle est DGI-ready
