Aller au contenu principal

E-Invoicing

L'éditeur E-Invoicing définit comment NomaUBL parle à une Plateforme Agréée (PA) — la plateforme certifiée qui reçoit, valide et achemine les factures électroniques vers l'infrastructure publique française. Il définit aussi l'étape locale de transformation UBL (répertoire XSL) et les paramètres de la boucle de récupération des statuts.

La page fonctionne quel que soit le système source — JD Edwards, SAP, NetSuite ou ERP personnalisé — une fois la source mappée vers UBL.

Refonte en 2026.05.8

La configuration PA est désormais homogène entre e-invoicing, e-directory et e-reporting — chaque modèle système référence un api-connecteur réutilisable au lieu de porter ses propres champs d'authentification et endpoints, et la forme inline historique est supprimée (sans repli). L'éditeur passe de cinq à quatre onglets — l'onglet Mock / Testing a disparu (pointer un api-connecteur vers un mock Postman ou un stub local pour les tests hors-ligne) et l'onglet Actions a migré vers une page dédiée sous Gestion → Liaisons d'actions. Send Mode quitte PA Connection pour rejoindre FTP/SFTP où il appartient logiquement, et le groupe Background Scheduling disparaît (ces intervalles ne fonctionnaient que sur le modèle global).

L'éditeur comporte quatre onglets :

  1. UBL Validation — répertoire des transformations XSL utilisées pour convertir le XML source en UBL.
  2. PA Connection — choix de l'api-connecteur qui porte le transport HTTP de la PA, plus surcharges de noms d'endpoint par tâche et paramètres de connexion.
  3. FTP/SFTP — sélecteur Send Mode et identifiants du serveur SFTP utilisés quand le sélecteur est positionné sur FTP.
  4. Status — curseur de récupération des statuts et renvoi vers les intervalles de polling sur global.

Accès à l'éditeur

  • Paramètres → modèle e-invoicing (la ressource au niveau système).
  • La portée par défaut est le template platform-wide e-invoicing. Les surcharges par société se trouvent sur les templates e-invoicing-{kco} et suivent la même forme ; le résolveur côté runtime regarde d'abord le template par société puis retombe sur le template platform-wide.

Vue d'ensemble

UBL ValidationPA ConnectionFTP/SFTPStatusapi-connecteurLe transport HTTP de la PA — flux d'auth, base URL, endpoints — vit dans un api-connecteur réutilisable.CONNECTEURpa-default ▾éditer sous Connecteurs APISurcharges d'endpoint par tâcheNom d'endpoint sur pa-default pour chaque tâche PA. Vide = utilise le nom par défaut affiché.Import | importImport status | import-statusInvoice statuses | invoice-statusesResolve invoice | resolve-invoicePost status | post-statusReport import | report-importConnectionTIMEOUT (MS)30000SSL VERIFYtrue ▾Onglet FTP/SFTP — aperçuSEND MODEAPI ▾carte SFTP atténuée hors mode FTPSFTP SERVERHost / Port / User / Password / Outbound / Inboundutilisé quand Send Mode = FTPapi-connecteur réutilisableaucun champ d'auth ni endpoint inline iciSurcharges par tâchenoms d'endpoint sur le connecteurTimeout + SSL verifyparamètres de connexion uniquementpaMode = API / FTPvide = pas d'envoi sortant

Onglet 1 — UBL Validation

Cet onglet configure le répertoire des fichiers XSL utilisés pour transformer le XML source en UBL. La validation de conformité UBL passe par des schématrons standards, documentés sur la page Validate.

ChampDescription
XSLT DirectoryRépertoire qui contient les fichiers de transformation .xsl utilisés pour convertir le XML source en UBL. Le placeholder %APP_HOME% se développe vers la racine d'installation NomaUBL.

Onglet 2 — PA Connection

api-connecteur

Le transport HTTP de la PA — flux d'authentification, base URL, endpoints — vit dans un api-connecteur réutilisable. Cette page le référence par son nom uniquement et ne porte jamais de champ d'auth ni d'endpoint HTTP en ligne. L'pa-default embarqué couvre le flux standard ; choisir un autre connecteur quand la PA expose un schéma d'auth non standard ou quand plusieurs PA demandent des connecteurs différents.

ChampDescription
ConnectorListe déroulante des templates api-connector. Le connecteur sélectionné porte le baseUrl, l'authType, les identifiants, l'endpoint de jeton et le catalogue d'endpoints HTTP. Modifier le connecteur lui-même sous Connecteurs API.

Surcharges d'endpoint par tâche

Chaque tâche PA dans NomaUBL a un nom d'endpoint par défaut. Quand l'api-connecteur expose un nom différent pour la même tâche, saisir une surcharge ci-dessous. Laisser vide pour utiliser le nom par défaut affiché.

ChampDéfautUtilisé par
ImportimportSoumission d'une facture à la PA.
Import statusimport-statusSondage du statut d'import de la PA.
Invoice statusesinvoice-statusesBoucle de récupération des statuts du cycle de vie.
Resolve invoiceresolve-invoiceRésolution d'un identifiant attribué par la PA à partir d'une clé de document NomaUBL.
Post statuspost-statusRenvoi des statuts vendeur (actions réglementaires) vers la PA.
Report importreport-importSoumission e-Reporting quand le template e-reporting retombe sur le connecteur e-invoicing.

Connection

Paramètres de niveau connexion qui s'appliquent à chaque appel routé via l'api-connecteur choisi.

ChampDéfautDescription
Timeout (ms)30000Timeout des requêtes HTTP en millisecondes. Les appels trop longs sont annulés au-delà.
SSL VerifytrueValidation du certificat TLS de la PA. À positionner sur false uniquement en environnement de non-production avec des certificats auto-signés.

Onglet 3 — FTP/SFTP

Send Mode

ChampValeursDescription
Send Mode (paMode)API (défaut) / FTP / (vide)Transport utilisé pour envoyer les factures à la PA. API route la soumission via l'api-connecteur choisi sur l'onglet précédent ; FTP écrit l'UBL dans un fichier temporaire et le pousse en SFTP via le serveur ci-dessous ; (vide) ignore complètement la soumission sortante (utile pendant le câblage d'un nouveau type de document). La récupération des statuts, le polling d'import et les actions vendeur passent toujours par l'API quel que soit ce choix.

SFTP Server

La carte entière est atténuée quand Send ModeFTP — ces champs ne s'appliquent qu'au transport SFTP.

ChampDescription
HostHôte SFTP (par exemple ftp.plateformeagree.fr).
PortPort SFTP. Défaut 22.
UserUtilisateur SFTP.
PasswordMot de passe SFTP.
Outbound DirRépertoire distant où NomaUBL dépose les fichiers UBL pour la PA (par exemple /out/invoices/).
Inbound DirRépertoire distant où la PA écrit les mises à jour de statut que NomaUBL récupère (par exemple /in/status/).

Onglet 4 — Status

La section Status Retrieval pilote la boucle de récupération des statuts de cycle de vie.

ChampDéfautDescription
Page size100Nombre de statuts récupérés par page lors du polling de la PA.
Last retrieved at(mis à jour automatiquement)Date ISO de la dernière récupération réussie (par exemple 2025-01-01T00:00:00Z). Mis à jour automatiquement après chaque exécution ; une édition manuelle agit comme point de départ — utile pour rejouer une fenêtre.
Les intervalles de polling vivent sur global

Les intervalles qui pilotent la fréquence de polling de la PA — fetchImportInterval, fetchStatusInterval, cadence e-reporting — sont lus depuis le template global, section Scheduling. Le groupe Background Scheduling de cette page écrivait ces clés ici, mais le scheduler ne les lisait jamais sur ce template — l'écriture morte a été retirée en 2026.05.8. Modifier les intervalles sur global → Scheduling et ils s'appliquent à toutes les sociétés.


Liaisons d'actions — déplacées

L'onglet Actions qui se trouvait sur cette page dans la version précédente a été retiré en 2026.05.7 et les liaisons d'actions multi-appels ont migré sur leur propre page sous Gestion → Liaisons d'actions. La forme de stockage (action.N.id / .connector / .endpoint / .params sur ce template) est inchangée — seul l'éditeur a bougé. La nouvelle page gère la liste multi-appels, le drapeau Arrêt sur échec par appel et le chaînage des réponses via les placeholders {call.N.fieldName}.


Conseils & bonnes pratiques

  • Choisir d'abord l'api-connecteur. Sans connecteur, les champs Surcharges d'endpoint par tâche restent masqués et la PA est inaccessible. L'pa-default embarqué est un point de départ raisonnable.
  • Laisser les surcharges par tâche vides quand les noms d'endpoint du connecteur correspondent déjà. Un connecteur pa-default qui expose un endpoint littéralement nommé import n'a pas besoin d'une surcharge sur la ligne Import. La page n'enregistre que les valeurs qui diffèrent du défaut — saisir le défaut est sans effet mais ajoute du bruit.
  • Démarrer en paMode= (vide) lors du câblage d'un nouveau type de document. Le pipeline UBL fonctionne de bout en bout sans impliquer la PA, ce qui fait remonter les mappings sources et les échecs Schematron avant que le réseau soit dans la boucle. Basculer sur API une fois le côté données propre.
  • N'utiliser SFTP que quand la PA l'exige réellement. REST est plus simple à diagnostiquer, et le panneau de test de l'api-connecteur fournit un retour clair. SFTP convient quand la PA impose un dépôt fichier ou pour des soumissions par lots à fort volume.
  • Modifier les intervalles de polling sur global → Scheduling, pas ici. Les champs de cette page ont été retirés en 2026.05.8, ils n'avaient aucun effet.
  • Tester contre un mock Postman ou un stub local en hors-ligne. L'ancien mock en mémoire ne servait que avant le refactor api-connecteur — pointer plutôt l'api-connecteur vers l'URL du mock.
  • Les surcharges par société se trouvent sur e-invoicing-{kco}. Copier le template e-invoicing platform-wide sous le nouveau nom depuis Paramètres et ne modifier que les champs qui diffèrent — typiquement connector, quelques surcharges d'endpoint ou les identifiants SFTP quand la société 00070 utilise une PA distincte.