5-Flux Achats et Finance
Contexte et objectif
Achats : Commandes et réceptions (gérées dans X3 ou dans Yooz). Factures : Intégration des factures d'achat sur commande (PIH)
Finance : factures hors commande / frais généraux (BIS). La gestion des bons à payer (BAP) et le retour de paiement (objet PAY / feedbacks).
Ce document couvre le flux Achats et Finance du connecteur Yooz pour Sage X3. Il décrit le fonctionnement attendu des commandes et des réceptions, qu’elles soient gérées dans Sage X3 ou dans Yooz, ainsi que l’intégration des factures fournisseurs dans X3.
Le périmètre fonctionnel du chapitre est le suivant :
-
Achats : commandes d’achat et réceptions, avec envoi de X3 vers Yooz ou import de Yooz vers X3 selon le scénario retenu.
-
Factures sur commande / réception : intégration des factures d’achat dans X3 via l’objet PIH et la fonction GESPIH.
-
Finance : intégration des factures hors commande et frais généraux dans X3 via l’objet BIS et la fonction GESBIS.
-
Bon à payer : mise à jour du statut de bon à payer dans X3 à partir de la validation Yooz.
-
Feedbacks : retour comptable et retour de paiement vers Yooz afin de suivre l’avancement de la facture jusqu’au paiement.
Ce document intervient sur ces phases de l’implémentation :
| ▼ | ▼ | |||||
|---|---|---|---|---|---|---|
| Avant-vente | Initialisation | Cadrage | Installation | Setup | Recette | Mise en production |
Périmètre couvert et prérequis de lecture
Avant de poursuivre ce chapitre, il faut s’assurer que les autres ont été déroulés en entier, jusqu’à la synchronisation des référentiels. En particulier, les organisations Yooz, les utilisateurs, les fournisseurs, les comptes, les axes analytiques, les taxes, les conditions de paiement et, si nécessaire, les articles doivent être disponibles côté Yooz avant de réaliser les tests de facturation.
Fonctions X3 concernées :
| Usage | Chemin d’accès en français | Fonction / objet |
|---|---|---|
| Commandes d’achat | Achats > Commandes > Commandes | GESPOH / POH |
| Réceptions d’achat | Achats > Réceptions > Réceptions | GESPTH / PTH |
| Factures d’achat | Achats > Factures > Factures | GESPIH / PIH |
| Factures tiers fournisseurs | Comptabilité tiers > Facturation > Factures tiers fournisseurs | GESBIS / BIS |
| Règlements fournisseurs | Comptabilité tiers > Règlements > Saisie des règlements | GESPAY |
| Exécution Web Services Yooz | Exploitation > Imports/Exports > Exécution Web Services Yooz | XRJ31EXE |
| Suivi des interfaces | Exploitation > Imports/Exports > Interfaces Yooz | XRJ31YOOZINT |
⚙️VALEURS PARAMÈTRES UTILES
Le connecteur Yooz ne gère que les flux adossés à une commande d'achat. Il faut donc bloquer la saisie de documents isolés dans les valeurs paramètres de Sage X3 (Paramétrage > Paramètres généraux > Valeurs paramètres, fonction ADPVAL):
-
PTHDIR (ACH / REC) : Positionner sur "Non" (une réception doit se faire sur commande).
-
PNHDIR (ACH / RET) : Positionner sur "Oui" dans les paramètres (afin de ne pas bloquer les flux de retours inter-sites du client). Note technique : Le connecteur se chargera de forcer dynamiquement cette valeur à "Non" sur les écrans de saisie X3 si l'utilisateur tente de faire un retour direct à un fournisseur externe.



Flux du Procure-to-Pay
Le connecteur couvre deux grands modes de fonctionnement. Dans le premier, les achats sont créés dans Sage X3 puis transmis à Yooz pour rapprochement et traitement de la facture. Dans le second, la commande et/ou la réception est initiée dans Yooz puis importée dans Sage X3 afin que X3 génère les écritures, conserve les pièces et assure le suivi comptable.
Cas A : Les flux d’achats sont gérés dans Sage X3

Cas B : Les flux d’achats sont gérés dans Yooz

Le pilotage du flux n'est pas arbitraire, il dépend directement de la typologie des articles. Un fonctionnement hybride est possible en appliquant la répartition suivante : Cas où Sage X3 pilote : Achats stockés, articles avec traçabilité ou marchandises soumises à une réception logistique stricte. Cas où Yooz pilote : Achats non stockés, frais généraux, investissements ou prestations de services (lorsque la demande d’achat et la réception métier sont gérées dans le workflow Yooz).
1 - Cas A : Achats gérés dans Sage X3
Dans ce scénario, Sage X3 est l’application maître pour la création et la mise à jour des commandes d’achat, des réceptions et des retours fournisseurs. Yooz reçoit ensuite les données nécessaires pour permettre la capture de la facture fournisseur, son rapprochement avec la commande ou la réception, puis sa validation avant import dans Sage X3.
L’application Yooz regroupe fonctionnellement la commande d’achat et la réception dans un même flux d’achat. Sage X3 distingue en revanche la commande d’achat, gérée dans la fonction GESPOH, et la réception d’achat, gérée dans la fonction GESPTH. Le connecteur assure donc la correspondance entre ces deux logiques, sans demander à l’utilisateur de ressaisir les informations dans Yooz.
Le type de facture Yooz attendu pour ce cas est une facture d’achat sur commande. Après validation de la facture dans Yooz, elle est intégrée dans Sage X3 comme facture d’achat via l’objet PIH et la fonction GESPIH.
1.1 - Logique générale du flux
Le flux doit être lu comme une chaîne unique, allant de l’achat dans Sage X3 jusqu’au paiement de la facture. Les commandes et réceptions ne sont pas créées dans Yooz dans le cas A : elles sont créées dans Sage X3, puis transmises à Yooz afin que la facture fournisseur puisse être rapprochée avec le bon de commande correspondant.
Voici les fonctions utilisées dans les flux du cas A :
| Étape | Application maître | Objet / fonction | Rôle dans le flux |
|---|---|---|---|
| 1 | Sage X3 | GESPOH / POH | Création de la commande d’achat. La commande peut contenir des lignes soumises à réception et des lignes non soumises à réception. |
| 2 | Sage X3 | GESPTH / PTH | Création de la réception lorsque l’article est soumis à réception. La réception devient alors la base du rapprochement facture côté Yooz. |
| 3 | Sage X3 | XRJ31YOOZSUI puis XRJ31EXE | Mise en file d’attente dans la table XRJ31YOOZSUI puis envoi des commandes, réceptions ou retours vers Yooz via la tâche batch XRJ31EXE. |
| 4 | Yooz | PO / PO invoices | Rapprochement de la facture fournisseur avec la commande ou la réception transmise par Sage X3. |
| 5 | Sage X3 | GESPIH / PIH | Import de la facture d’achat validée dans Yooz via le modèle d’import XRJ31PIH. La facture reste liée à la commande ou à la réception d’origine. |
| 6 | Sage X3 puis Yooz | Feedbacks / PAY | Retour comptable après validation de la facture dans X3, puis retour de paiement après règlement. |
1.2 - Étape 1 : Création des commandes d'achat dans X3 et export vers Yooz
Voici la description simple du flux :
-
La commande est créée dans Sage X3 via GESPOH.
-
La commande doit être dans un état suffisamment avancé pour être transmise à Yooz : selon le paramétrage et le processus client, cela correspond généralement à une commande signée et/ou imprimée.
-
Le connecteur génère un enregistrement dans la table de suivi XRJ31YOOZSUI. La fonction "Interfaces Yooz" permet de visualiser ces éléments en attente de transmission, avant l'exécution de la tâche XRJ31EXE

-
L’objet envoyé vers Yooz depuis X3 n’est pas l’en-tête de la commande (POH), mais bien les lignes (POQ). En effet, une même commande peut contenir des lignes de nature différente. Les lignes facturables sont envoyées, les lignes non facturables sont exclues.
Voici un exemple de déroulement du flux:
- Création de la commande

- Signature de la commande
Se rendre dans le moniteur de workflow (fonction SAIWRKPLN, transaction “PUR”), pour signer la commande d’achat. Il est possible de vérifier le statut de la commande dans la fonction des commandes d’achats (GESPOH).





Frais annexes : La transmission des éléments de facturation (frais de port, douane, remises) vers Yooz s'effectue via l'ajout de champs customs sortants sur les commandes d'achat (ligne 18). Prérequis : le code de l'élément X3 doit exister dans le référentiel Yooz. Analytique : Les dimensions analytiques saisies sur la commande X3 sont transmises à Yooz. Toute modification manuelle ultérieure directement dans Yooz risque de désynchroniser la donnée d'origine par rapport à X3.
1.3 - Étape 2 : Gestion des réceptions (Conditionnelle)
Pour les réceptions, la règle principale est portée par la case Article reçu de la fiche article, correspondant au champ ITMMASTER.RCPFLG. Cette règle détermine si Yooz doit rapprocher la facture avec la commande ou avec la réception.

| Cas | Règle Sage X3 | Moment d’envoi vers Yooz |
|---|---|---|
| 1 - Article non soumis à réception | La case Article reçu n’est pas cochée. L’achat n’attend pas de réception physique dans X3. | La ligne de commande est envoyée à Yooz dès que la commande est diffusable selon le processus X3, notamment après édition / impression si ce contrôle est utilisé. |
| 2 - Article soumis à réception | La case Article reçu est cochée. L’achat doit passer par une réception X3. | La ligne n’est normalement envoyée à Yooz qu’après création de la réception X3. |
| 3 - Commande envoyée avant réception | Cas dérogatoire pour une ligne normalement soumise à réception, par exemple lorsque la facture doit être traitée avant la réception physique. | Un bouton d’envoi manuel permet de transmettre la commande sans attendre la réception, si la commande n’a pas déjà été envoyée à Yooz. Cliquable uniquement si la commande est signée et imprimée. |
Les lignes de commande avec le champ Ligne facturée (PORDERQ.LININVFLG) = 1 sont envoyées à Yooz. Les lignes PORDERQ.LININVFLG = 2 sont exclues. La même logique s’applique aux réceptions : les lignes PRECEIPTD.LININVFLG = 1 sont envoyées, tandis que les lignes PRECEIPTD.LININVFLG = 2 ne le sont pas.
Cette règle évite de proposer au rapprochement Yooz des lignes qui ne doivent pas donner lieu à facture. Elle est particulièrement importante sur les commandes mixtes, les commandes partiellement soldées ou les réceptions modifiées.
Cas 1 : Achat non soumis à réception
Lorsque l’article n’est pas soumis à réception, la commande Sage X3 peut être utilisée directement comme support de rapprochement dans Yooz. Ce cas correspond aux achats pour lesquels il n’y a pas d’entrée en stock ni de réception physique attendue dans X3 (paramètre article RCPFLG = 1).
Yooz reçoit une ligne d’achat permettant de rapprocher la facture fournisseur avec la commande. Les axes analytiques transmis à Yooz sont ceux portés par les lignes de commande, complétés le cas échéant par les champs personnalisés sortants.
Dans ce cas, Yooz ne doit pas attendre une réception. Si la facture fournisseur arrive, elle peut être traitée et rapprochée immédiatement avec la commande transmise par X3.
(Cette partie couvre le cas des articles non soumis à réception mais liés à une commande. Un achat non soumis à réception peut être également traité comme dans la partie 3.1.2 - Cas des factures de frais généraux sans commande (BIS) si vous avez besoin d’un service non relié à une commande d'achat).
- Création de la commande basée sur un article non soumis à réception :


- Le déclencheur (Signature et Impression) :
Une fois la commande créée, il faut effectuer deux actions standards pour débloquer l'envoi :
-
Signer la commande (si un circuit de signature est paramétré sur votre dossier pour cet acheteur).
-
Imprimer la commande (via l'icône imprimante en haut à droite de l'écran).


- Envoi vers Yooz : Une fois que la commande est signée et imprimée, elle est prête à être envoyée vers Yooz. Elle est automatiquement insérée dans la table de suivi des interfaces pour être traitée par l'abonnement récurrent du connecteur (XRJ31EXE). On peut ainsi la retrouver dans Yooz :

La commande est rajoutée à la pile d'envoi à chaque nouvelle impression. Si une commande est modifiée, il faut la réimprimer pour que la mise à jour parte vers Yooz !
Cas 2 : Achat soumis à réception
Pour un article nécessitant une entrée en stock ou une réception physique (champ ITMMASTER.RCPFLG positionné à 2), la facturation se base exclusivement sur les quantités réellement livrées. La commande d'achat initiale n'est donc pas transmise à Yooz de manière isolée.
La réception est obligatoire pour déclencher la transmission. Les données envoyées à Yooz combinent alors les références de la commande d'origine et les lignes de réception effectives, ce qui permet un rapprochement exact avec la facture fournisseur.
Pré-requis de gestion des réceptions
Pour que le flux s'exécute correctement, les règles suivantes s'appliquent :
-
Sites : Le site de réception doit appartenir à une société pour laquelle au moins une organisation Yooz est renseignée.
-
Articles gérés par lot : Le découpage des quantités doit impérativement être réalisé dans le détail des quantités de la réception X3, et non uniquement au niveau de la ligne de réception. Cela évite un écart entre ce que X3 connaît et ce que la facture fournisseur peut réellement porter.
-
Lignes non facturables : Elles sont nativement exclues de l’envoi vers Yooz.
Le connecteur exige qu'une réception soit issue d'une commande. Si un utilisateur tente de créer une réception directe alors que le connecteur est actif, X3 force automatiquement le paramètre PTHDIR (Direct Receipt) à "Non" et affiche une alerte : "Le connecteur Yooz est activé donc le paramètre PTHDIR qui autorise les réceptions directes est forcé à Non”. Mise à jour sur ce point : une valeur paramètre XRJ31PTHDIR permet de ne pas faire ce contrôle et d’autoriser les réceptions directes. Qui ne seront pas transmises à Yooz.
Flux nominal de réception
- Création de la commande d’achat
L'acheteur crée et signe sa commande. À ce stade, la commande n'est pas encore envoyée à Yooz, le connecteur attend la réception.


- Création de la réception
À la livraison, le réceptionnaire crée la réception en la rattachant à la commande d'origine en faisant un picking (après avoir renseigné le site de réception).


- Transmission vers Yooz
Après la création de la réception, le connecteur transmet à Yooz les données de la commande initiale via l’abonnement XRJ31EXE, mises à jour avec les quantités réellement réceptionnées. On peut retrouver la commande liée à la réception via le numéro de commande dans Yooz.


Cas de réceptions multiples
Les scénarios logistiques standards de X3 sont supportés. Une ligne de commande peut être réceptionnée en plusieurs fois (reliquats), une commande peut donner lieu à plusieurs réceptions, et plusieurs commandes peuvent être regroupées dans un seul bon de réception. Dans tous les cas, le rapprochement Yooz reste cohérent avec les quantités effectivement réceptionnées.
1.4 - Cas particulier : Forçage de l’envoi d’une commande avant réception
Ce mécanisme n'est pas un flux parallèle standard. Il s’agit d’une dérogation stricte à la règle de base, utilisée uniquement lorsque le calendrier l'impose (typiquement le « grand import », où la facture fournisseur arrive et doit être payée avant que la marchandise n'atteigne le quai).
Dans ce scénario, un bouton spécifique « Envoyer à Yooz sans réception » permet de transmettre la commande à Yooz pour rapprocher la facture immédiatement, même si l’article est soumis à réception. Pour que le bouton « Envoyer à Yooz sans réception » soit cliquable sur la commande (GESPOH), trois conditions cumulatives sont requises :
-
Non transmise : La commande ne doit pas avoir déjà été envoyée à Yooz (horodatage Yooz vide).
-
Signée : Le circuit de signature X3 doit être achevé (si paramétré).
-
Imprimée : La commande doit avoir été imprimée au moins une fois.

Une fois le bouton pressé, la commande s'ajoute à la liste des éléments à envoyer à Yooz, et l’abonnement XRJ31EXE envoie ensuite la commande à Yooz.
Les conséquences de ce bouton au niveau fonctionnels sont :
-
Dans Yooz : La facture sera rapprochée directement de la commande, et non d'une réception.
-
Dans Sage X3 : La facture importée depuis Yooz sera liée à la commande d'achat. La réception physique de la marchandise pourra tout de même être saisie plus tard dans X3 pour incrémenter le stock.

Inverser l'ordre chronologique naturel (Facture avant Réception) a des impacts directs en comptabilité et en gestion de stock. Cela oblige les équipes financières à effectuer des retraitements manuels comme la valorisation des stocks ou les clôtures de fin de mois.
1.5 - Modifications, annulations et gestion des soldes
Le connecteur a pour rôle de maintenir Yooz aligné sur l’état de Sage X3. Les modifications fonctionnelles doivent donc être répercutées, dès lors qu'elles concernent un document déjà transmis à Yooz.
Où s'effectue la correction dans Sage X3 ?
-
Achats non soumis à réception (Cas 1) : Les corrections (mise à jour / suppression) s'effectuent directement sur la commande d'achat (GESPOH).
-
Achats soumis à réception (Cas 2) : Il n’y a pas la possibilité de modifier la réception ni la commande manuellement, mais la suppression est bien prise en compte
Voici le comportement de l'interface selon les événements métier :
| Événement X3 | Comportement attendu côté interface | Stade & Lieu de correction (où et jusqu'à quand corriger ?) |
|---|---|---|
| GESTION DES QUANTITÉS - CAS 2 | ||
| Ajustement de quantité à la hausse | La nouvelle quantité est mise à jour dans Yooz (nouvelle ligne). | Action logistique : Créer une nouvelle réception (GESPTH2) sur la commande initiale. |
| Ajustement de quantité à la baisse | Le connecteur transmet les quantités annulées sous forme de lignes avec montants négatifs à Yooz. | Action logistique : Créer un retour fournisseur (GESPNH). Impossible de modifier la réception X3 initiale, il faut passer par le flux de retour. |
| GESTION DES DONNÉES / MODIFICATION | ||
| Modification d’un champ sur la commande (compte, analytique...) | La simple modification de la commande ne déclenche aucun envoi. La donnée est mise à jour dans Yooz uniquement lors de l'enregistrement de la prochaine réception. | Correction directe : Si réception partielle : Correction sur la commande (GESPOH). L'information sera envoyée lors de la création de la réception du reliquat. Si réception complète : Commande soldée. Plus aucune modification possible. |
| Saisie ou modification d'un champ sur la Réception | La donnée propre à la ligne de réception prime sur celle de la commande. Il est tout à fait possible d'avoir plusieurs lignes de réception avec des données distinctes pour un même article issu de la même commande. | Correction directe : Correction à réaliser sur la réception (GESPTH2) avant la comptabilisation de la facture. |
| Ligne non facturable | La ligne n’est pas envoyée à Yooz. | N/A (géré nativement au paramétrage de l'article). |
| SOLDES ET SUPPRESSIONS | ||
| Solde complet de la commande (PORDER.CLEFLG = 2) | Cas 1 : Toutes les lignes sont envoyées en suppression (DELETE) vers Yooz. Cas 2 : Aucun impact si la réception n'a pas eu lieu (Yooz ne connaît pas la commande). | Action fonctionnelle : À faire sur la commande (GESPOH). Utilisé pour purger le portefeuille de commandes non abouties. |
| Solde d’une ligne de commande (PORDER.CLEFLG = 1 et PORDERQ.LINCLEFLG = 2) | Cas 1 : La ligne soldée est envoyée en suppression (DELETE) vers Yooz. Cas 2 : Aucun impact si la ligne n'a pas été réceptionnée. | Action fonctionnelle : À faire sur la commande (GESPOH). |
| Suppression (annulation) d'une Réception (Cas 2) | La suppression physique d'une réception dans X3 déclenche l'envoi d'une instruction DELETE vers Yooz. | Correction directe : Uniquement si la réception X3 vient d'être créée par erreur et n'est ni validée, ni facturée. On supprime la pièce dans GESPTH2. |
Si le solde de la commande s'effectue naturellement par la facturation (la commande est soldée dans X3 parce qu'une facture a été émise et rapprochée à 100 %), cela ne déclenche aucune suppression dans Yooz. Le cycle de vie est simplement considéré comme achevé.
1.6 - Retours physiques aux fournisseurs (PNH/PRT)
Les retours fournisseurs concernent uniquement le flux basé sur les réceptions (cas 2). Un retour fournisseur est obligatoirement créé à partir d’une réception d’achat Sage X3 ; il ne concerne donc pas les commandes envoyées à Yooz sans réception.
Le retour ne crée pas un "document de retour" indépendant dans Yooz. Le connecteur va retrouver la commande d'origine dans Yooz et compléter le flux d'achat existant en y ajoutant des lignes supplémentaires avec des montants négatifs (la quantité reste positive, mais le prix unitaire et le montant sont inversés). Pour que ce flux s'enclenche, le retour doit être validé dans Sage X3. (Note : ce flux de retour vers Yooz est pertinent lorsque la commande et la réception concernées ont déjà été facturées).

Il suffit donc d’aller dans la fonction des retours d’achats, et de faire un picking sur la réception concernée.

Il faut ensuite valider le retour dans X3, puis laisser l'interface s'exécuter (ou relancer manuellement XRJ31EXE). Côté Yooz, une ligne supplémentaire avec un montant négatif s’ajoute à la commande d’origine.


💡 Pourquoi le retour s'ajoute-t-il en quantité positive avec un total négatif ?
C'est un comportement technique normal. Le connecteur ne vient pas "soustraire" la quantité de la ligne de réception initiale, il crée une nouvelle ligne distincte dédiée à ce retour. Cela peut paraître contre-intuitif pour le stock, mais c'est indispensable pour la comptabilité :
-
La quantité est en positif (3) : Cela permet au comptable de rapprocher facilement cette ligne avec la future facture d'avoir du fournisseur (qui indiquera bien 3 articles repris).
-
Le prix et le montant total sont en négatif : C'est ce signe "-" qui sert de déclencheur (trigger) au connecteur. Il indique formellement au système qu'il s'agit d'un flux inverse et permettra de générer automatiquement un véritable avoir (AVR) lors du retour dans Sage X3.
Nativement, l'application Yooz ne sait pas rapprocher un document de type "Avoir d'achat" avec une commande. Pour contourner cela, la procédure exige de traiter l'avoir fournisseur dans Yooz comme une "facture d'achat sur commande" classique, mais en saisissant des montants négatifs (en-tête et lignes). C'est grâce à ces montants négatifs que le modèle d'import Sage X3 (XRJ31PIH) va comprendre la manœuvre et générer automatiquement un véritable avoir (type AVO ou AVR) lors de l'intégration finale dans l'ERP.
(Voir la gestion des avoirs dans le point 3.3 - Import des avoirs)
1.7 - Cas standards de recette
| Cas | Objectif | Déroulé synthétique | Résultat attendu |
|---|---|---|---|
| A1 - Commande sans réception | Valider l’envoi d’une commande X3 à Yooz pour un article non soumis à réception. | Créer une commande (GESPOH) avec un article non réceptionnable (RCPFLG=1) et facturable. Signer et imprimer la commande. Exécuter XRJ31EXE. | La commande est immédiatement disponible dans Yooz pour rapprochement facture. Aucune réception n’est attendue (rapprochement 2-way). |
| A2 - Commande avec réception | Valider l'envoi de la commande après réception physique. | Créer une commande avec un article réceptionnable (RCPFLG=2). Valider la commande. Créer la réception (GESPTH). Exécuter XRJ31EXE. | La réception est disponible dans Yooz (avec les infos de la commande d'origine). Yooz propose un rapprochement sur la quantité reçue (3-way match). |
| A3 - Commande mixte | Contrôler le filtrage des lignes facturables et non facturables. | Créer une commande contenant au moins une ligne facturable (LININVFLG = 1) et une ligne non facturable (LININVFLG = 2), puis réceptionner et envoyer à Yooz. | Seules les lignes facturables (1) sont poussées et proposées au rapprochement dans Yooz. Les lignes non facturables (2) sont ignorées. |
| A4 - Réceptions partielles / multiples | Valider le comportement sur des reliquats de livraison. | Réaliser une première réception partielle, l'envoyer. Réaliser une seconde réception sur la même commande, l'envoyer. Rapprocher la facture dans Yooz. | Yooz cumule et propose les quantités réellement réceptionnées. La facture PIH importée dans X3 solde correctement les lignes de réception correspondantes. |
| A5 - Forçage avant réception | Tester le cas dérogatoire (grand import / FOB) où la facture arrive avant la réception physique. | Créer une commande avec article réceptionnable. La signer et l'imprimer (obligatoire pour activer le bouton). Cliquer sur "Envoyer à Yooz sans réception". | La commande est envoyée à Yooz sans attendre le bon de réception. La facture peut être rapprochée dans Yooz et s'importe en PIH rattachée à la commande X3. |
| A6 - Solde / modification | Vérifier que Yooz reste aligné sur les suppressions X3. | Solder manuellement une ligne non facturée ou la commande complète dans X3, puis exécuter l’interface. | Le connecteur transmet une action DELETE à Yooz. Les lignes où la commande disparaît de la bannette de rapprochement Yooz. (Note : un solde dû à la facturation ne déclenche pas de suppression). |
| A7 - Retour fournisseur | Valider la bonne transmission des retours pour la gestion des avoirs. | Créer un retour validé (GESPND) rattaché à une réception qui a déjà été facturée, puis l'envoyer à Yooz. | Yooz reçoit une nouvelle ligne rattachée à la commande d'origine. La quantité est positive, mais le prix et le montant sont négatifs. L’avoir peut être rapproché de cette ligne. |
| A8 - Gestion des écarts | Valider le déclenchement du circuit d'approbation en cas de litige prix/quantité. | Rapprocher dans Yooz une facture dont le montant ou la quantité diffère de la commande/réception X3, au-delà des seuils de tolérance. | Yooz bloque le rapprochement automatique et déclenche le workflow d'écart/litige vers le demandeur. La facture ne s'exporte vers X3 qu'après approbation dans Yooz. |
1.8 - Gestion des éléments de facturation
Cette section concerne les paramétrages des éléments de facturation dans Sage X3.
Ces paramétrages sont constitués de :
- création d’un custom field sortant
- création d’un article achat dans Yooz
- activation d’un champ personnalisé dans Yooz
- modification de l’export X3 API
Le détail des opérations à réaliser est présenté ci-dessous.
- Dans la fonction des éléments de facturation du module achats, paramétrer les éléments de facturation comme en standard X3


-
Si le champ VATRUL = taux fixe, alors la valeur pourra reprendre celle de Yooz si le taux de taxe est différent de celui de X3
-
Si le champ VATRUL = taux produit, alors la valeur reprendra automatiquement celle paramétrée dans X3
-
Les sections analytiques sont gérées sur les éléments de facturation, et peuvent être modifiées dans Yooz
-
Pour l’envoi des éléments de facturation au niveau des commandes / réceptions :
- Ajout d’un champ custom sortant sur l’objet POQ, lié avec le champ customisable LINE_CUSTOM_9 avec la formule suivante :
func XRJ31YOOZLIB.IIF("[F:XRJ31YS]OBJKEY(4)='PVF'","1","0")
- Ajout d’un champ custom sortant sur l’objet POQ, lié avec le champ customisable LINE_CUSTOM_9 avec la formule suivante :

Paramétrages des éléments de facturation dans Yooz :
-
Les éléments de facturation doivent être créés manuellement dans les articles d’achat dans Yooz (pas d’interface de référentiel) :
- Le code ERP doit reprendre le code de l’élément de facturation X3

- Le champ personnalisable N°9 doit être paramétré comme suit et coché pour que l’export détecte que cet élément est à positionner dans les lignes de la table des éléments de facturation

- L’export X3 API doit également préciser que le champ personnalisable qui détecte les éléments de facturation est le LINE_CUSTOM_9

Exemple d’export Yooz :


2 - Cas B : Achats gérés dans Yooz
Dans ce scénario, Yooz est l’application maître pour la saisie des achats. Ce choix répond généralement à un besoin de simplicité, d'économie (coût des licences Sage X3) et s'adapte parfaitement aux flux de produits peu complexes.
Tout est initié côté opérationnel dans Yooz (demande d’achat ➔ commande ➔ réception éventuelle), puis répliqué dans Sage X3. L'ERP reste l’application de référence pour la comptabilisation, le bon à payer et le règlement.
Les 3 scénarios d'implémentation :
-
Commandes dans Yooz / Sans réception : Flux de base. La commande validée est exportée vers X3, puis la facture est rapprochée directement.
-
Commandes dans Yooz / Réceptions dans Sage X3 : Flux hybride classique et parfaitement fonctionnel. La logistique physique est maintenue dans l'ERP.
-
Commandes et réceptions dans Yooz : Cas rare. La réception est saisie dans Yooz puis exportée vers X3. Chaque ajout de quantité réceptionnée dans Yooz crée une réception dans X3. En cas d'ajustement de la quantité, une nouvelle création de réception est envoyée pour l'écart.
Le cas B n’est pas le simple inverse du cas A. Les achats impliquant une logistique avancée (gestion de lots, sous-lots, numéros de série, emplacements) doivent impérativement rester pilotés dans Sage X3.
Rappel des prérequis :
-
Le fournisseur, le site, la devise, les articles, les unités, les taxes et les axes analytiques nécessaires doivent exister ou être correctement synchronisés avant les tests.
-
Le site X3 doit être cohérent avec l’organisation Yooz. Une organisation mal renseignée entraîne un mauvais site de commande ou un rejet d’import.
-
Le numéro de commande et les identifiants de lignes doivent rester stables afin que la facture et les réceptions puissent retrouver le bon document d’origine.
-
La commande importée depuis Yooz ne doit pas être ressaisie dans X3, sinon le flux peut créer des doublons ou un rapprochement sur le mauvais document.
2.1 - Logique générale du flux (Yooz maître, Sage X3 réplique)
Le flux constitue une chaîne continue, allant de la demande d’achat dans Yooz jusqu’au paiement dans Sage X3. Yooz porte la demande, la validation métier et le rapprochement de la facture. Sage X3 réceptionne les données validées pour matérialiser les pièces dans l'ERP et poursuivre le cycle comptable.
Voici la répartition des étapes :
| Étape | Application maître | Objet / fonction | Rôle dans le flux |
|---|---|---|---|
| 1 | Yooz | Demande d'achat (PR) | Création de la demande d’achat et exécution du workflow de validation métier. |
| 2 | Yooz | Commande (PO) | Création de la commande après validation du besoin. Ce document devient la référence métier du flux. |
| 3 | Sage X3 | Commande (GESPOH) | Import de la commande d’achat. Réplique stricte interdisant toute modification directe. Verrouillage automatique en lecture seule suite à l'import par l'utilisateur système. |
| 4 | Yooz | Réception (GR) | Saisie de la réception logistique (si requise par l'article) directement sur la ligne de commande Yooz. |
| 5 | Sage X3 | Réception (GESPTH) | Import de la réception. Création d'une pièce X3 pour chaque nouvelle quantité réceptionnée transmise. |
| 6 | Yooz | Facture (Invoice) | Capture, contrôle, rapprochement (sur commande ou réception) et validation de la facture fournisseur. |
| 7 | Sage X3 | Facture achat (GESPIH) | Import de la facture d’achat validée. La gestion comptable, le bon à payer et le règlement reprennent ensuite le cycle standard (voir partie Finance). |

Automatisation : L'action "Exporter" dans Yooz déclenche un flux 100% automatisé vers l'ERP. Le modèle d'import cible réceptionne et traduit la donnée pour créer la pièce. Aucun import manuel n'est requis dans Sage X3. Règle de rapprochement : La nécessité d'une réception logistique dicte le rapprochement de la facture. Sans réception attendue, la facture est traitée dès disponibilité de la commande. Avec réception, la facture attend la validation des quantités livrées. (Note : le forçage d'une facture avant réception appartient exclusivement au flux du Cas A).
2.2 - Étape 1 : Création et import des commandes d'achat
La commande d’achat naît dans Yooz (généralement issue d'une demande d'achat approuvée). Sa validation déclenche une transmission vers Sage X3 (modèle XRJ31POH) pour générer une réplique exacte dans la fonction GESPOH. L'ERP dispose ainsi du document de référence pour le futur rapprochement de la facture.
- Création de la demande d’achat

- Approbation : La validation de la demande d'achat génère automatiquement la commande (PO) dans Yooz.


- Envoi vers l'ERP : L'action "Confirmer l'envoi de la commande" (Confirm PO sending) clôture la tâche côté Yooz. Les données sont poussées instantanément vers Sage X3 via un appel Web Service SOAP. La commande est physiquement créée dans l'ERP.

Une fois importée, la commande reste pilotée exclusivement par Yooz. Toute modification manuelle directe dans Sage X3 entraîne une désynchronisation et un échec du rapprochement facture. Les corrections s'effectuent obligatoirement dans Yooz avant d'être répercutées vers l'ERP via le flux d'import.
2.3 - Étape 2 : Gestion des réceptions
Cas 1 : Achat non soumis à réception (frais généraux, prestations...)
Pour un article non soumis à réception (champ ITMMASTER.RCPFLG positionné à 1), l'étape logistique est ignorée. La commande d'achat suffit à porter le flux.
-
Rapprochement : La facture fournisseur est rapprochée directement avec la commande d'origine dans Yooz.
-
Intégration : La facture est exportée et intégrée dans Sage X3 comme facture d’achat (fonction GESPIH, modèle XRJ31PIH).
Ce flux exclut toute validation physique dans l'ERP. Pour exiger un contrôle de "service fait" (même sur une prestation de service non stockée), l'article doit impérativement être paramétré comme "réceptionnable" pour basculer sur le Cas 2.
Cas 2 : Achat soumis à réception (marchandises, achats stockés...)
La réception saisie dans Yooz s'effectue systématiquement sur une ligne de commande existante. Ce n'est jamais un document isolé.
⚙️ Paramétrage Yooz requis :
Dans Paramètres et préférences > Préférences pour le traitement des documents > Commandes d’achats > Réception des commandes :
- Cocher "Activer la réception par défaut sur la demande d’achat".

- Dans le volet Personnalisation des processus, activer "Générer une tâche de réception sur les commandes générées dans Yooz" et "Générer une tâche bloquante de réception manquante sur la facture sur commande".

L'ERP crée une réception pour chaque nouvelle quantité transmise par Yooz via le modèle d’import XRJ31PTH.
Règles de gestion logistique :
-
Prérequis articles : Incompatibilité stricte avec les articles gérés par lot, sous-lot, numéro de série ou emplacement.
-
Réceptions directes : Totalement proscrites dans ce scénario. Le flux doit obligatoirement retrouver la commande et la ligne d'origine dans X3.
-
Ajustement à la hausse (gestion du delta) : Toute augmentation de la quantité réceptionnée dans Yooz transmet uniquement l'écart à l'ERP. Sage X3 crée alors une nouvelle pièce de réception pour cette quantité supplémentaire.
-
Ajustement à la baisse : La transmission de corrections négatives nécessite un encadrement strict (risque d'interprétation en tant que retour fournisseur ou annulation selon le statut de la pièce X3).
Exemple : Une ligne de 10 unités est commandée. Saisie d'une réception de 4 unités dans Yooz ➔ Création d'une réception de 4 dans X3. Ajustement ultérieur de la réception à 7 unités dans Yooz ➔ Transmission de l'écart de 3 ➔ Création d'une nouvelle réception de 3 dans X3. La facture fournisseur sera ensuite rapprochée des 7 unités physiquement constatées.
2.4 - Modifications, corrections et gestion des écarts
Dans le cas B, l'application maître est Yooz. Toute correction opérationnelle doit y être initiée. L'ERP réceptionne les mises à jour mais ne doit jamais servir de zone de correction directe pour une commande importée.
Règles de modification et de retour :
-
Verrouillage des commandes : Une commande importée via l'utilisateur technique Yooz (ex: YOOZ1) est automatiquement verrouillée en lecture seule dans Sage X3. L'objectif est d'empêcher toute désynchronisation manuelle entre les deux systèmes.
-
Ajustements de quantité : En cas d'ajustement des quantités dans Yooz, seul l'écart (le delta) est transmis vers Sage X3 pour créer une ligne ou une pièce complémentaire.
-
Gestion des retours fournisseurs : Le flux Yooz ne gère pas nativement les documents de type "Retour". La gestion d'un retour ou d'une annulation partielle nécessite impérativement la saisie de quantités ou montants en négatif (signe "moins") dans Yooz.
Sécurité et contrôle des factures (Anti-doublon) :
-
Blocage strict à l'import : Une facture Yooz déjà importée ne peut pas être intégrée deux fois. Si une tentative d'import ou de validation survient avec un numéro Yooz (XRJ31NUMYOOZ) déjà présent dans l'ERP, le système bloque l'action. Le message d'erreur suivant est renvoyé : "Cette facture provenant de Yooz a déjà importée dans Sage X3. Import refusé."
-
Duplication manuelle autorisée (Contournement) : En cas de besoin métier, la duplication manuelle d'une facture issue de Yooz directement dans Sage X3 reste possible (pour créer un modèle, par exemple). Lors de cette action, le connecteur vide automatiquement les champs d'identification propres à Yooz (XRJ31NUMYOOZ, XRJ31URLFAC, XRJ31YOOZDAT) sur la nouvelle pièce générée. L'enregistrement s'effectue alors sans déclencher l'alerte anti-doublon.
2.5 - Retours physiques initiés dans Yooz
La gestion native des documents de type "Retour physique" n'existe pas dans le flux d'achat piloté par Yooz (cas B). Le traitement exige une distinction stricte entre le flux financier (avoir) et le flux logistique (stock).
Traitement financier (Avoir sur commande) dans Yooz :
-
Méthode des montants négatifs: L'application Yooz ne disposant pas de type "Avoir d'achat sur commande", l'opération nécessite l'utilisation d'une "Facture d'achat sur commande" classique.
-
Saisie inversée : Renseignement impératif des montants (en-tête et lignes) en négatif (signe "-"). Attention : les quantités saisies doivent rester en positif.
-
Conversion automatique : À l'export, le connecteur détecte ces montants négatifs et génère automatiquement la pièce adéquate dans Sage X3 (avoir de type AVO ou AVR).
L'utilisation d'une facture négative dans Yooz ne remplace et ne solde jamais un flux physique dans l'ERP. Si le retour fournisseur a un impact logistique (stock, lot, emplacement, traçabilité), le retour physique doit impérativement être saisi et piloté directement dans Sage X3 (voir cas A).
2.6 - Cas standards de recette
| Cas | Objectif | Déroulé synthétique | Résultat attendu |
|---|---|---|---|
| B1 - Commande Yooz ➔ X3 | Valider la réplication de la commande. | Créer et valider une commande dans Yooz. Exporter vers Sage X3. Contrôler GESPOH. | Création de la commande via modèle XRJ31POH. Créateur = utilisateur API (ex: YOOZ1). Verrouillage automatique en lecture seule. |
| B2 - Réception Yooz ➔ X3 | Valider l’import des réceptions et la gestion du delta. | Réceptionner une quantité partielle dans Yooz. Exporter. Réceptionner le solde. Exporter. Contrôler GESPTH. | Création d'un bon de réception distinct pour chaque export (gestion par delta). Le cumul X3 correspond à la quantité Yooz. |
| B3 - Limites logistiques | Sécuriser l'incompatibilité logistique avancée. | Tenter de réceptionner dans Yooz un article géré par lot, numéro de série ou emplacement strict. | Blocage ou échec de l'intégration. Validation impérative du maintien de ce type d'article dans le flux du Cas A. |
| B4 - Modification de commande | Vérifier la mise à jour de l'engagement ERP. | Modifier une quantité ou un prix sur une commande Yooz (non réceptionnée). Réexporter vers Sage X3. | Mise à jour de la ligne existante dans X3 via le modèle XRJ31POH. Aucune intervention manuelle dans l'ERP. |
| B5 - Facture sur commande (PIH) | Valider la continuité du flux Procure-to-Pay. | Rapprocher la facture (commande/réception) dans Yooz. Décocher "Exporter comme facture achat (non PO)". Exporter. | Intégration dans GESPIH via XRJ31PIH. Soldage de la réception X3. Alimentation des champs Chrono (XRJ31NUMYOOZ) et URL. |
| B6 - Champs personnalisés entrants | Contrôler le mapping de données additionnelles. | Paramétrer le mapping entrant. Renseigner le champ custom dans Yooz. Exporter vers X3. | Alimentation correcte du champ cible. Rappel : le champ X3 doit être visible à l'écran et saisissable. Redémarrage du pool SOAP obligatoire après modification du mapping. |
3 - Traitement financier commun : PIH, BIS, BAP et feedbacks
Cette partie factorise le traitement financier commun aux deux scénarios du chapitre Les sections 1 et 2 doivent continuer d'expliquer qui est maître de la commande et de la réception. La section 3 commence au moment où la facture a été contrôlée dans Yooz et doit produire une pièce financière dans Sage X3, puis suivre son cycle jusqu’au paiement.
Le principe de lecture est le suivant : PIH pour les factures d’achat rattachées à une commande ou à une réception, BIS pour les factures fournisseurs hors commande / frais généraux, XRJ31BAP pour la mise à jour du bon à payer, puis feedbacks Yooz pour informer Yooz de la comptabilisation et du paiement.
| Traitement | Fonction X3 | Modèle / objet | Rôle fonctionnel |
|---|---|---|---|
| Facture d’achat sur commande ou réception | Achats > Factures > Factures GESPIH | PIH / XRJ31PIH | Créer dans X3 une facture d’achat rattachée à la commande ou à la réception d’origine. |
| Facture hors commande / frais généraux | Comptabilité tiers > Facturation > Factures tiers fournisseurs GESBIS | BIS / XRJ31BIS | Créer dans X3 une facture tiers fournisseur sans rattachement à un document d’achat. |
| Pièce jointe (PDF de la facture) | Pièces jointes (depuis GESPIH ou GESBIS) | XRJ31IPDF | Importer physiquement le document PDF validé dans Yooz pour l'attacher à la facture dans Sage X3. |
| Bon à payer | Comptabilité tiers > Échéances de facture GESDUD (ou via GESPIH/GESBIS) | XRJ31BAP / GACCDUDATE.FLGPAZ | Mettre à jour le statut de bon à payer sans réimporter la facture entière. |
| Feedback comptable | Validation / comptabilisation PIH ou BIS | API : /yooz/v2/api/feedbacks | Retourner à Yooz le numéro de facture X3 (YZ_POSTING_NUMBER) et la date d'import ERP (YZ_IMPORT_DATE_ERP). |
| Feedback de paiement | Comptabilité tiers > Règlements > Saisie des règlements GESPAY | Objet PAY / Action PAYMENT | Informer Yooz que la facture a été réglée lorsque le paiement atteint le statut attendu ("En banque") dans X3. |
3.1 - Import des factures dans Sage X3 (Flux Yooz ➔ Sage X3)
3.1.1 - Rapprochement dans Yooz et import de la facture d'achat
Ce flux concerne uniquement les factures fournisseurs rattachées à un document d’achat (commande ou réception). Dans Yooz, le type de document attendu pour ces pièces est impérativement "facture d'achat sur commande".
L’objectif du connecteur est de conserver la traçabilité de bout en bout : la facture validée dans Yooz est automatiquement importée dans Sage X3 en tant que facture d'achat, sans jamais perdre son lien de rattachement avec le document d’origine.
| Scénarios | Exemple | Document rapproché dans Yooz | Point de vigilance |
|---|---|---|---|
| Achat non soumis à réception | Frais généraux, services | Commande d’achat | La facture peut être traitée dans Yooz dès que la commande y est visible |
| Achat soumis à réception | Marchandises, stock | Réception ou quantités réceptionnées | Le rapprochement doit suivre scrupuleusement les quantités réellement réceptionnées et facturables |
| Commande envoyée avant réception | Grand Import | Commande d’achat | La réception physique de la marchandise pourra être saisie ultérieurement dans Sage X3 |
| Ajout de frais non prévus | Ligne diverse | Commande / réception complétée dans Yooz | L’unité et l’article utilisé doivent être cadrés ; l’unité peut être forcée à “UN” si l’origine de ligne ne fournit pas d’unité. |
- Capture et rapprochement dans Yooz**.** La facture fournisseur est réceptionnée dans Yooz. Les données reconnues (fournisseur, montants, taxes, échéances) sont vérifiées. Le document est ensuite rapproché avec la commande ou la réception correspondante, en s'assurant de la correspondance exacte des lignes.
(La facture peut arriver directement dans l'outil ou y être déposée manuellement).


-
Gestion des écarts et lignes complémentaires : Si des coûts additionnels non prévus à la commande sont présents (frais de port, douane), des lignes complémentaires peuvent être ajoutées directement dans Yooz. Ces lignes nécessitent une imputation précise (article générique, unité, compte, taxe, analytique) pour garantir une intégration sans erreur dans l'ERP.
-
Validation Yooz et export vers Sage X3 : Après validation dans le workflow Yooz, la facture est exportée vers Sage X3 (selon le workflow mis en place). Le connecteur importe la facture via le modèle XRJ31PIH. Selon la législation, le modèle peut être décliné, par exemple XRJ31PIH3 pour la législation portugaise.
-
Création de la facture dans GESPIH : L’export crée une facture d’achat PIH dans X3. Le connecteur renseigne les informations de traçabilité Yooz sur la pièce X3, notamment le numéro Yooz, le lien URL vers l’image Yooz et les informations nécessaires aux feedbacks ultérieurs. Le PDF peut également être importé physiquement en pièce jointe via XRJ31IPDF.

Pour garantir une intégration sans erreur des factures dans Sage X3, plusieurs règles de gestion sont appliquées automatiquement :
-
Contrôle des dates : Le système peut vérifier que la date du document d'achat (commande ou réception) n'est pas postérieure à celle de la facture. Ce contrôle strict peut toutefois être désactivé lors du paramétrage initial selon le besoin.
-
Articles de frais et lignes diverses : Les coûts additionnels ajoutés manuellement dans Yooz (frais de port, douane) doivent s'appuyer sur des "articles génériques" créés dans Sage X3, obligatoirement non gérés en stock. Si l'unité de mesure est introuvable à l'import, elle est forcée par défaut à "UN" (Unité).
-
Éléments de facturation : Dans Yooz, une majoration de prix doit obligatoirement inclure un code et un montant de TVA. À l'inverse, une minoration ou une remise est transmise sans aucun code ni montant de TVA.
-
Immobilisations : Le système distingue automatiquement les achats standards, les services et les immobilisations grâce à la donnée "Type d'achat" renseignée sur les lignes. Les informations complémentaires (comme le compte collectif d'immobilisation) transitent via des champs personnalisés.
-
Champs personnalisés : Jusqu'à 10 champs d'en-tête et 10 champs de ligne peuvent être importés de Yooz vers Sage X3. Le champ cible dans l'ERP doit obligatoirement être présent à l'écran et saisissable.
-
Pièces jointes et PDF : Pour une traçabilité optimale, la facture générée dans Sage X3 inclut un lien URL cliquable vers l'image Yooz et peut également rapatrier le fichier PDF physiquement en pièce jointe.
Gestion des achats dans X3 (Cas A) vs dans Yooz (Cas B) La différence majeure entre ces deux modes de fonctionnement réside uniquement dans le sens de synchronisation des documents d'origine (Sage X3 envoie la commande/réception vers Yooz dans le cas A ; Yooz envoie la commande/réception vers Sage X3 dans le cas B). La méthode de création et d'import de la facture d'achat finale dans Sage X3 reste, elle, strictement identique pour les deux scénarios.
Lignes diverses et avoirs : Une ligne saisie dans Yooz sans code article redescend dans l'ERP en tant que "ligne diverse". Le connecteur gère nativement les montants négatifs sur ces lignes pour la création d'avoirs ou de déductions. Pièce jointe (PDF) : L'export du PDF de la facture depuis Yooz pour intégration automatique en pièce jointe dans X3 est possible. Prérequis : activer le WebService Yooz XRJ31IPDF et paramétrer la destination XRJ31AIMMS avec la valeur MESSPDF dans l'ERP.
3.1.2 - Factures tiers fournisseurs (factures non rattachées à une commande)
Les factures de frais généraux, les prestations hors commande ou les factures fournisseurs non rattachées à un document d’achat ne doivent pas être traitées comme des factures d'achat classiques PIH. Elles relèvent du flux Finance.
Dans Yooz, elles sont traitées comme des "factures tiers", et le connecteur va automatiquement les créer dans Sage X3 en tant que "factures tiers fournisseur" GESBIS.
- Saisie et imputation dans Yooz : La facture est capturée dans Yooz et traitée comme une "facture sans PO". Le comptable l'impute manuellement en s'appuyant sur les référentiels synchronisés avec X3 : choix du fournisseur, de l'organisation, du compte général, des taxes, de l'analytique, etc.

- Validation Yooz et export Finance : Après validation, Yooz exporte la facture vers Sage X3. Le connecteur appelle le modèle XRJ31BIS afin de créer une facture tiers fournisseur dans la fonction GESBIS. Le document créé n’est pas lié à une commande POH ni à une réception PTH.

-
Traçabilité et PDF : Comme pour les PIH, la facture BIS doit conserver le numéro Yooz, l’URL de l’image Yooz et, si le flux est activé, le PDF attaché physiquement via XRJ31IPDF. Ces informations sont nécessaires pour le contrôle utilisateur, le non-doublon, le BAP et les feedbacks. (Note : En cas de duplication manuelle de la pièce dans X3, ces champs sont automatiquement vidés).
-
Validation comptable dans X3 : La facture tiers suit ensuite son cycle de validation X3 habituel. La suite du flux est strictement identique aux factures sur commande : le connecteur se chargera de mettre à jour Yooz avec le feedback de comptabilisation.

Il ne faut pas créer une commande fictive dans X3 pour faire entrer une facture de frais généraux dans le flux PIH. Si la facture n’a pas de support d’achat réel, le flux cible est BIS.
Lors de la saisie de ces factures dans Yooz, les données sont interprétées de la manière suivante par Sage X3 :
-
Conditions de paiement : La condition de paiement renseignée dans Yooz est prioritaire. Elle écrase la condition par défaut paramétrée sur la fiche du fournisseur dans Sage X3.
-
Commentaires et Libellé : Le premier commentaire saisi dans l'en-tête de la facture Yooz est automatiquement récupéré par Sage X3 pour devenir le "libellé" de la pièce comptable générée.
-
Immobilisations : Il est possible de gérer des immobilisations directement via ce flux. Le champ "Type d'achat" permet d'identifier si une ligne spécifique concerne une immobilisation, afin que Sage X3 la traite correctement.
-
Comptes collectifs : Si une ligne d'imputation utilise un compte collectif, Sage X3 exige qu'un tiers y soit rattaché. Si ce tiers n'est pas précisé sur la ligne dans Yooz, le connecteur utilise automatiquement le fournisseur de l'en-tête pour forcer la ligne et éviter un blocage.
-
Adaptations spécifiques : Le connecteur gère nativement l'injection de champs personnalisés Yooz vers Sage X3, ainsi que des obligations légales spécifiques.
3.2 - Validation comptable & feedbacks (Flux Sage X3 ➔ Yooz)
Les feedbacks ferment la boucle entre Sage X3 et Yooz. Une fois la facture intégrée dans l'ERP, les informations connues uniquement après cette intégration (numéro de pièce comptable, date d'import) sont renvoyées à Yooz.
Ces feedbacks s'appuient sur l’API /yooz/v2/api/feedbacks et nécessitent d'identifier le document d'origine. La facture X3 doit donc obligatoirement disposer du numéro Yooz renseigné dans le champ PINVOICE.XRJ31NUMYOOZ (ce champ est renseigné quand la facture est exportée depuis Yooz vers X3).
Le feedback comptable est envoyé au moment où la facture en provenance de Yooz est validée dans Sage X3. La validation de la facture crée la pièce comptable. Les champs suivants sont alors mis à jour dans le bloc YZ_INVOICE de Yooz :
| Champ Yooz | Source Sage X3 | Rôle |
|---|---|---|
| YZ_POSTING_NUMBER | PINVOICE.NUM ou numéro de pièce X3 utilisé comme référence comptable | Permet à Yooz d’afficher le numéro de pièce / facture créé dans X3. |
| YZ_IMPORT_DATE_ERP | Date de validation ou d’import ERP, par exemple PINVOICE.UPDDAT selon le traitement | Permet à Yooz d’indiquer que la facture a été intégrée et comptabilisée dans l’ERP. |
- Validation dans X3 : La facture (PIH ou BIS) est validée dans l'ERP. Le champ STA passe à 3 (statut “validé” ou “comptabilisé”) et la pièce comptable devient disponible. Cette action génère un enregistrement dans la table de suivi XRJ31YOOZSUI.

-
Envoi du feedback : La tâche récurrente XRJ31EXE s'exécute. Elle lit la table de suivi et déclenche l'appel API vers Yooz. Les données envoyées ciblent le document exact grâce à son numéro Yooz.
-
Envoi à Yooz : La facture dans Yooz est mise à jour avec le numéro de pièce X3 et la date de validation ERP. Dès que la mise à jour est un succès, l’envoi est tracé (statut mis à jour dans la table XRJ31YOOZSUI) pour éviter une répétition inutile du feedback. Le paiement sera traité ultérieurement (flux PAY).

3.3 - Synchronisation du bon à payer (flux Yooz ➔ Sage X3)
Le statut "Bon à payer" (BAP) autorise le règlement d'une facture. Attention, l'envoi de ce statut depuis Yooz vers X3 n'est pas automatique par défaut : son déclenchement dépend strictement de la construction du workflow client dans Yooz. L'export est rattaché à une étape spécifique choisie lors du paramétrage (par exemple, lors de l'approbation finale par un responsable).
⚙️ Prérequis : Les factures doivent impérativement se créer dans Sage X3 avec un statut initial "En attente" (paramètre utilisateur NIVBONPAYE réglé sur "En attente").
-
Mise à jour (Modèle XRJ31BAP) : L'information est transmise à Sage X3 via un export dédié. Ce modèle se contente d'actualiser le statut des échéances de la facture existante (GACCDUDATE.FLGPAZ), sans réimporter le reste du document.
-
Déblocage du paiement : Le statut de la facture passe à "Bon à payer" dans l'ERP. Le règlement fournisseur peut alors être exécuté dans Sage X3. Toute facture n'ayant pas ce statut reste strictement bloquée pour le paiement.

L'autorisation de paiement (BAP) dictée par Yooz est totalement indépendante de la validation comptable réalisée dans Sage X3 (qui génère l'écriture). Le statut BAP peut donc être appliqué avant ou après la validation comptable.
Le modèle XRJ31BAP sert strictement à modifier l'autorisation de paiement. Impossible de l'utiliser pour corriger des montants, des taxes ou des imputations.
3.4 - Règlement et feedback de paiement (flux Sage X3 ➔ Yooz)
Le flux de règlement fournisseur suit la logique standard de Sage X3. L'envoi du feedback vers Yooz n'est plus basé sur le statut "En banque" d'un règlement, mais est déclenché exclusivement par le lettrage de la pièce comptable issue de la facture d'origine.
- Saisie dans X3 : Utilisation des fonctions de règlement (GESPAY, GESFRM) générant un lettrage, des transactions de lettrage manuel (LETTRAGE) ou automatique (LETTRAUTO), ou de fonctions traitant les impayés/extournes.

- Déclencheur "Lettrage" : Toute action comptable (règlement, compensation, OD) mettant à jour le montant réglé sur les échéances de la facture (GACCDUDATE.PAYCUR).

- Mise à jour Yooz : Transmission du montant (YZ_AMOUNT_PAID, correspondant au nouveau total lettré moins les montants déjà envoyés) et de la date de paiement la plus récente (YZ_DATE_OF_PAYMENT déduite de GACCDUDATE.PAYDAT) via la tâche d’envoi vers Yooz XRJ31EXE. Le statut de la facture dans Yooz passe de "En attente de retour paiement" à "Régler" (ou reste en attente en cas de règlement partiel).
Paiements partiels : Gérés nativement. En cas de lettrages successifs, le connecteur calcule l'écart entre le nouveau total lettré et les sommes déjà transmises pour n'envoyer que le delta (le montant du paiement partiel) à Yooz. Le workflow Yooz reste en attente.
Annulation (Flux négatifs) : En cas d'erreur dans X3 (délettrage ou annulation de paiement), un feedback avec un montant négatif est envoyé pour rétablir le reste à payer dans Yooz. Attention : l'envoi de ce montant négatif (délettrage) est strictement impossible si la facture a déjà été lettrée dans sa totalité (la facture étant arrivée en fin de workflow Yooz, elle n'est plus "à l'écoute" de nouveaux statuts).
Indépendance des Avoirs : Le lettrage d'une facture Yooz avec une autre pièce comptable (comme un avoir fournisseur ou une opération diverse) met à jour l'échéance. Cette compensation remonte donc dans Yooz exactement de la même manière qu'un règlement standard et solde le reste à payer.
Règlements groupés (mix Yooz / non-Yooz) : Désormais supportés. Le système se basant sur le lettrage des échéances, il filtre nativement les enregistrements et n'envoie le feedback que pour les écritures disposant d'un numéro d'identification Yooz (XRJ31NUMYOOZ), ignorant silencieusement le reste du lot.
3.5 - Cas particulier : Import & gestion des avoirs
Les avoirs doivent être documentés séparément, car Yooz et Sage X3 ne portent pas exactement la même logique fonctionnelle. Dans X3, un avoir peut être matérialisé par un type de facture attendu sur le module achat ou comptabilité tiers. Dans Yooz, le document peut être rapproché à l’achat d’origine au moyen de lignes négatives, notamment pour les avoirs sur retour.
| Cas | Origine fonctionnelle | Traitement Yooz | Import X3 attendu |
|---|---|---|---|
| Avoir sur retour fournisseur | Retour fournisseur validé sur une réception déjà facturée | Le retour est transmis à Yooz comme ligne négative rattachée à la commande d’origine. Le fournisseur transmet ensuite l’avoir dans Yooz. | Import via PIH / XRJ31PIH avec type d’avoir attendu dans X3, selon le paramétrage PIVTYP et TYPORI. |
| Remise ou minoration | Écart commercial, remise ou élément de facturation diminuant le montant | La minoration est portée comme ligne ou élément de facturation négatif. Les règles de taxe doivent être cadrées. | Import dans la facture ou l’avoir selon le cas métier. Les minorations doivent obligatoirement être transmises sans code TVA ni montant de TVA lorsque la règle des éléments de facturation s’applique. |
| Avoir hors commande | Correction Finance sans document d’achat | Aucun rapprochement commande ou réception. | Traitement via BIS si le document relève de la comptabilité tiers fournisseur. |
| Avoir sur facture déjà comptabilisée | Correction d’une facture déjà intégrée et validée | À cadrer comme document correctif. Yooz rapproche l’avoir à l’achat et non à la facture X3 déjà comptabilisée. | Ne pas réimporter la facture d’origine. Utiliser un avoir ou une correction comptable selon le processus retenu. |
-
Étape 1 - Identifier la nature de l’avoir. Avant l’import, il faut distinguer un avoir sur retour, une remise ou un document correctif de frais généraux. Le choix détermine si le flux cible est PIH ou BIS.
-
Étape 2 - Conserver le rattachement fonctionnel. Pour un avoir sur retour, le retour ne crée pas un nouvel achat indépendant dans Yooz. Il complète l’achat d’origine avec des lignes négatives. Le rattachement à la commande d’origine reste donc indispensable.
-
Étape 3 - Importer avec le bon signe et le bon type. Le modèle d’import reprend la logique de la facture d’achat, avec adaptation des champs de type de pièce. Les montants ou quantités négatifs portés dans Yooz doivent être traduits dans le format attendu par Sage X3 afin de générer l’avoir et non une nouvelle facture positive.
-
Étape 4 - Poursuivre le cycle financier. Une fois l’avoir importé, les règles de BAP, de feedback comptable et, si applicable, de paiement suivent le même principe que les autres pièces. À noter que pour un avoir, Yooz transmettra systématiquement la valeur "3" (Attente avoir) pour le statut d'approbation, contrairement aux factures classiques (1 ou 4).
Les 2 règles d'or de la saisie des avoirs dans Yooz Yooz ne sait pas nativement rapprocher un document de type “avoir d’achat” avec une commande. Le comportement diffère donc selon le flux : Avoir hors commande (flux BIS) : L'utilisateur utilise le type de document "Avoir d'achat" et saisit les montants en positif. L'import X3 créera un avoir tiers fournisseur. Avoir sur commande/retour (flux PIH) : L'utilisateur doit utiliser le type de document "Facture d'achat sur commande" avec des montants négatifs (en-tête ET lignes) pour que le modèle XRJ31PIH crée l'avoir. Attention : les quantités doivent impérativement rester en positif. Lors du rapprochement dans Yooz, l'utilisateur devra cliquer sur le "carré orange" pour désactiver les filtres de recherche par défaut, sans quoi la commande d'origine n'apparaîtra pas (les filtres masquant les commandes positives face à une saisie négative).
L’import d’un avoir directement rapproché à une facture déjà comptabilisée ne doit pas être présenté comme un flux standard automatisé. Le cas documenté est l’avoir rattaché à l’achat ou au retour. Les corrections post-comptabilisation doivent être cadrées comme des avoirs ou des documents correctifs.
3.6 - Cas standards de recette
| Cas | Objectif | Déroulé synthétique | Résultat attendu |
|---|---|---|---|
| F1 - Facture PIH sur commande | Valider l’import d’une facture d’achat rattachée à une commande. | Rapprocher la facture dans Yooz avec la commande, valider, puis exporter. | Une facture d'achat (GESPIH) est créée via XRJ31PIH, avec le bon fournisseur, lignes, taxes, axes. Les champs N° Yooz (XRJ31NUMYOOZ) et l'URL sont alimentés. |
| F2 - Facture PIH sur réception | Valider l’import d’une facture d’achat rattachée à une réception. | Rapprocher la facture avec les quantités réceptionnées, valider et exporter. | La facture GESPIH respecte la réception d’origine. Le testeur vérifie que X3 n'a pas exigé de saisie manuelle d'article. |
| F3 - Facture BIS hors commande | Valider le flux Finance (frais généraux). | Traiter une facture Yooz sans commande. Vérifier que l'option "Exporter comme facture sur commande" est bien décochée. | Une facture tiers (GESBIS) est créée via XRJ31BIS. Le paramétrage (taxes, analytique) redescend correctement sans document d'achat fictif. |
| F4 - Lignes diverses / éléments de facturation | Contrôler les frais (port) et remises au pied de la facture. | Ajouter dans Yooz une ligne avec un code article correspondant au code de l'élément de facturation X3. | X3 importe la ligne dans le tableau des éléments de facturation (et non dans les lignes articles). Note : Les majorations portent un code TVA, les minorations (remises) s'exportent sans code. |
| F5 - Avoir sur retour ou Finance | Valider la bonne typologie de document (AVO/AVR). | Avoir Finance : Utiliser le type "avoir" Yooz (montants > 0). Avoir sur commande : Utiliser le type "Facture sur commande" Yooz avec des montants négatifs. | X3 crée le bon document correctif selon le flux. L'import des montants négatifs génère bien un avoir d'achat X3. |
| F6 - BAP (Bon à Payer) | Contrôler la mise à jour de l'échéance. | Valider l’approbation finale dans Yooz, déclencher l'export du BAP. | Le champ GACCDUDATE.FLGPAZ de l'échéance X3 passe à "4" (Bon à payer) sans recréer ni bloquer la facture existante. |
| F7 - Feedback comptable | Informer Yooz de la comptabilisation. | Valider (comptabiliser) la facture importée dans X3. Contrôler le retour via XRJ31EXE. | Yooz reçoit le numéro de facture X3 (YZ_POSTING_NUMBER) et la date d'import ERP. |
| F8 - Feedback de paiement | Informer Yooz du règlement (cash-out). | Régler la facture via Saisie de règlements (GESPAY) uniquement. Passer le statut à « En banque ». | Yooz reçoit le montant payé et la date. Le statut Yooz passe à "Payé". (Vigilance : Le lettrage manuel ou les paiements mixtes ne déclenchent pas le flux en standard). |
| F9 - PDF et URL Yooz | Contrôler l’accès au justificatif depuis l'ERP. | Importer une facture. Cliquer sur l'icône Yooz dans X3. Si l'option "Exporter le PDF vers X3" est active dans Yooz, vérifier les pièces jointes. | La facture X3 contient le lien Yooz cliquable (XRJ31URLFAC) et la pièce jointe PDF est rattachée au document X3. |
| F10 - Non-doublon | Sécuriser l'unicité de l'intégration. | Tenter un réimport volontaire d’une facture ayant déjà été intégrée dans Sage X3. | Le connecteur rejette l'import. Message attendu dans la trace : "Cette facture provenant de Yooz a déjà importée dans Sage X3. Import refusé." |
4 - Suivi des interfaces et traitement des erreurs
Cette section est le guide de référence pour le support technique et l'administration système. Elle explique comment piloter les flux, diagnostiquer les rejets et relancer les interfaces en cas d'erreur.
L'architecture du connecteur impose de bien distinguer le sens du flux, car les outils de supervision diffèrent :
-
Pour les flux sortants (Sage X3 ➔ Yooz) : Le suivi s'effectue via le tableau de bord spécifique Interfaces Yooz (XRJ31YOOZINT) et la lecture des traces du traitement XRJ31EXE.
-
Pour les flux entrants (Yooz ➔ Sage X3) : Le suivi s'effectue côté Yooz (rapports d'exports) et côté Sage X3 via la lecture des traces standards (LECTRACE) des modèles d'imports.
4.1 - Tableau de bord des interfaces sortantes (XRJ31YOOZINT)
La fonction Interfaces Yooz (XRJ31YOOZINT) est l’écran de suivi principal pour contrôler les flux d’interface sortants entre Sage X3 et Yooz. Elle doit être utilisée pendant la recette, lors des analyses d’erreur et en exploitation lorsque des documents restent en attente ou en échec d'envoi.
Étape 1 - Contrôler la synthèse des objets interfacés
Le premier bloc de la fonction présente une synthèse par entité Sage X3 interfacée avec Yooz (colonnes : Nb enr. à transmettre, transmis, en erreur). Pour le chapitre 5, voici ce que représentent les compteurs des objets clés :
| Objet / fonction | Usage dans le chapitre 5 | Contrôle attendu dans XRJ31YOOZINT |
|---|---|---|
| POQ | Envoi des commandes et des réceptions d'achat (cas A). | Le nombre d'en-têtes ou lignes de commandes/réceptions en attente d'envoi vers Yooz, transmis, ou bloqués en erreur. |
| PND | Envoi des retours fournisseurs rattachés à l'achat d'origine. | Le nombre de bons de retour validés devant être poussés vers Yooz. |
| PIH | Envoi du feedback comptable pour les factures d'achat. | Le nombre de confirmations de validation comptable (renvoi du n° de pièce X3) à transmettre à Yooz suite à la validation d'une facture GESPIH. |
| BIS | Envoi du feedback comptable pour les factures tiers. | Le nombre de confirmations de validation comptable à transmettre à Yooz suite à la validation d'une facture GESBIS. |
| PAY | Envoi du feedback de paiement. | Le nombre de statuts de règlement ("En banque") devant être renvoyés à Yooz pour solder la facture. |
Étape 2 - Analyser le détail dans XRJ31YOOZSUI
Le second bloc liste les enregistrements de suivi issus de la table XRJ31YOOZSUI. Il sert à comprendre précisément quel document est concerné, quel événement a déclenché l’interface, et quel est le résultat technique du traitement.
| Information à contrôler | Rôle dans l’analyse |
|---|---|
| Chrono | Identifiant unique de la ligne d'interface. Indispensable pour retrouver le détail d'une erreur dans le fichier de trace (.tra) du traitement XRJ31EXE. |
| Objet | Permet d’identifier le flux sortant concerné : POQ, PND, PIH, BIS, PAY, etc. |
| Clé | Permet de retrouver le document source dans Sage X3 (ex: n° de commande ou n° de facture). C’est le point de départ de l’analyse utilisateur. |
| Code événement | Permet de distinguer l'action déclenchée. Les codes standards sont C (Création), M (Modification) ou A (Annulation/Suppression). |
| Statut | État d'exécution interne X3. Indique si l'enregistrement est "À exécuter" (0), "Exécuté avec succès" (1), ou "Exécuté avec erreur" (-1). |
| Code | Code de retour HTTP renvoyé par l'API Yooz. Un code 2xx (200, 201, 202, 204) indique un succès. Un code 4xx (400, 403, 404) ou 5xx (500, 502, 504) indique une erreur (donnée invalide, droits insuffisants, timeout...). |
| Date heure | Horodatage de la création de la ligne ou de sa dernière tentative d'exécution vers Yooz. |
| [Action] Message d'erreur | Accessible via l'icône d'action (trois points) en début de ligne. Permet d'afficher le message JSON complet renvoyé par Yooz détaillant la cause du rejet (ex: SIRET invalide, axe analytique inconnu). |
| [Action] Télécharger le fichier | Si la valeur paramètre XRJ31FILGN est à "Oui", le fichier JSON contenant la charge utile (payload) envoyée à l'API peut être téléchargé via l'icône d'action de la ligne pour analyse. |
Cas pratique :
En export de commande d’achat, cas d’une erreur 403
Création dans Yooz : Commande d'achat POFR0120078 1000 1
Ligne 2 : 403 {"code":"INSUFFICIENT_PERMISSION","message":"Vous n'avez pas les permissions nécessaires.","technicalDetails":{},"isFormattedError":true}
Ceci concerne une limitation de vos droits dans Yooz, vous devez contacter votre CP Yooz.
4.2 - Exécution et traitement des erreurs
Étape 3 - Lancer ou relancer les traitements
L'exécution des flux sortants (X3 ➔ Yooz) est portée par le traitement Web Services Yooz (XRJ31EXE). En cas de rejet par l'API Yooz, l'analyse et la relance unitaire s'effectuent depuis le tableau de bord Interfaces Yooz (XRJ31YOOZINT).
Prérequis : Pour pouvoir télécharger et analyser les fichiers d'appels JSON, la valeur paramètre XRJ31FILGN (Génération fichier) doit obligatoirement être paramétrée sur "Oui" au niveau du dossier.
| Action | Écran X3 | Moment d’utilisation | Résultat attendu |
|---|---|---|---|
| Exécution en manuel | Web service Yooz (XRJ31EXE) | Pendant la recette ou pour forcer immédiatement l'envoi d'un flux bloqué. | Les enregistrements « À exécuter » sont envoyés à Yooz. La case "Télécharger tous les fichiers d'appel" permet d'obtenir un ZIP immédiat. |
| Exécution en batch | Gestion des abonnements (GESABA) | En exploitation courante (Abonnement XRJ31EXE_T). | La synchronisation s'exécute automatiquement en tâche de fond selon la fréquence retenue (ex: toutes les 2 min). |
| Télécharger le fichier / tous les fichiers | Interfaces Yooz (XRJ31YOOZINT) | Analyse technique d'une erreur renvoyée par Yooz. | Récupération du JSON généré à la ligne ou dans un ZIP pour comparer la donnée envoyée avec le mapping attendu. |
| Relancer la requête / toutes les requêtes | Interfaces Yooz (XRJ31YOOZINT) | Après correction dans X3 d'une donnée qui avait été rejetée par Yooz. | Le statut interne de la ligne repasse à 0 ("À exécuter") pour être renvoyée lors du prochain passage de XRJ31EXE. |
La file d'attente ne gère que les flux sortants. Il n'y a donc aucun risque de créer une facture d'achat en doublon dans Sage X3 en effectuant une relance. De même, côté Yooz, le renvoi d'une commande (POQ) effectue une mise à jour si le document existe déjà. La vraie vigilance concerne les feedbacks de paiement (PAY) et les modifications de référentiels : ne relancez pas aveuglément un feedback de paiement si le workflow de la facture cible est déjà clôturé côté Yooz. Analysez toujours le message d'erreur JSON avant de relancer.
Étape 4 - Lire les erreurs selon le sens du flux
L’analyse n’est pas exactement la même selon le sens de l’interface. Les flux X3 vers Yooz s’analysent principalement depuis le tableau de bord XRJ31YOOZINT et le traitement XRJ31EXE. Les flux Yooz vers X3 (qui utilisent des Web Services SOAP) doivent être contrôlés en premier lieu côté Yooz dans le rapport d'export, puis côté X3 dans les traces d'import.
Dans les écrans de traces Sage X3, l'affichage des textes est nativement limité. Si un message d'erreur s'affiche de manière tronquée, cliquer sur l'icône d'action (les 3 petits points ⋮) de la ligne concernée, puis sélectionner Commentaire pour visualiser le message dans son intégralité.
| Sens du flux | Exemples du chapitre 5 | Où contrôler en priorité | Erreurs fréquentes |
|---|---|---|---|
| Sage X3 ➔ Yooz (Sortant - API REST) | Commandes, réceptions, retours, feedback comptable, feedback de paiement. | 1. Écran XRJ31YOOZINT (Bloc 2 : Message d'erreur)2. Lecture des traces (LECTRACE) pour le batch XRJ31EXE3. Fichier d’appel JSON (si XRJ31FILGN actif). | Métier : Organisation Yooz absente du mapping, référentiel non synchronisé, ligne non facturable, paiement déjà transmis. Technique : API / token invalide (erreur 401), timeout réseau. |
| Yooz ➔ Sage X3 (Entrant - API SOAP) | Commandes Yooz, réceptions Yooz, factures PIH, factures BIS, BAP. | 1. Rapport d'export Yooz (indique l'erreur HTTP ou X3 brute)2. Lecture des traces (LECTRACE) dans X3 pour les imports (ex: erreur sur XRJ31PIH)3. Documents créés (GESPIH, GESBIS, GESDUD). | Métier : Fournisseur ou article absent, site incorrect, taxe ou compte invalide, champ custom non saisissable, facture déjà importée (rejet du chrono Yooz), date incohérente (XRJ31CTLDO). Technique : Pool SOAP inactif / inexistant ("Erreur 146" ou "Machine inaccessible"), erreur 403 (IP non whitelistée). |
Étape 5 - Corriger puis contrôler le résultat métier
La correction doit toujours porter sur la cause racine : référentiel manquant, mapping incorrect, paramètre incohérent, ou erreur de workflow.
-
Identifier le document. Rechercher l’objet, la clé et le statut dans l’interface de suivi (XRJ31YOOZINT) pour les envois, ou dans la trace d’import (LECTRACE) pour les réceptions.
-
Télécharger le fichier d’appel si disponible. Télécharger le fichier d’appel. Note : Si le fichier est vide ou absent, passez la valeur paramètre XRJ31FILGN à "Oui", relancez le traitement pour générer le JSON, puis analysez
-
Corriger la donnée source. La correction s'effectue côté X3, côté Yooz ou dans le paramétrage du connecteur.
-
Relancer le flux.
-
Flux sortant (X3 ➔ Yooz) : Relancer à la ligne depuis XRJ31YOOZINT pour limiter le périmètre, puis exécuter XRJ31EXE.
-
Flux entrant (Yooz ➔ X3) : Retourner dans l'application Yooz, retrouver le document en échec et déclencher l'action "Réexporter".
-
-
Contrôler le résultat. Vérifier l'horodatage (XRJ31YOOZDAT), le champ Numéro Yooz (XRJ31NUMYOOZ), la création du document X3, ou la bonne mise à jour du statut dans Yooz.
| Famille d’erreur | Exemple concret | Action de correction recommandée |
|---|---|---|
| Référentiel absent | Fournisseur, compte, ou article non disponible dans l’application cible. | Utiliser la fonction Reprise données Yooz (XRJ31YOOZREP) pour forcer la synchronisation du référentiel manquant, puis relancer le document. |
| Paramétrage X3 incohérent | PTHDIR (autorisant la réception directe) est actif, ou XRJ31CTLDO bloque les dates. | Corriger la valeur paramètre dans la fonction ADPVAL, refaire le test sur un document propre. |
| Flux Cas A / Cas B mal choisi | Tentative de gérer dans Yooz une réception nécessitant des lots ou des emplacements. | Basculer le processus de réception sur Sage X3 (cas A) ou cadrer cette limite logistique avec le client. |
| Doublon | Rejet X3 car la facture Yooz existe déjà (XRJ31NUMYOOZ déjà présent en base). | Ne pas insister. Annuler ou clôturer le document en échec d'export côté Yooz pour purger la file d'attente. |
| Workflow Yooz | Feedback de paiement envoyé alors que la facture Yooz n’est pas à l'étape "Attente paiement". | Faire avancer la facture dans le workflow Yooz, puis retester le lettrage / paiement dans X3. |
| Champs personnalisés | Champ custom Yooz absent, mal mappé, ou non pris en compte dans un import X3. | Modifier le mapping dans la fonction Champs perso entrants. Impératif : Republier le Web Service (GESAWE) et redémarrer le pool SOAP pour appliquer la modification. |
5 - Critères de validation finale (Go-Live)
À la fin de l'exécution des scénarios métiers, les critères suivants actent la réussite de l'intégration et autorisent le passage en production :
-
Documents créés : Les commandes, réceptions, factures d'achat (PIH), factures tiers (BIS), échéances BAP et paiements attendus existent dans l’application cible et respectent le mapping standard.
-
Traçabilité : Les numéros de chrono Yooz (XRJ31NUMYOOZ), les URL cliquables vers Yooz (XRJ31URLFAC), et les horodatages de transmission (XRJ31YOOZDAT) sont présents.
-
Cohérence Financière : Les montants HT / TTC, taxes, devises, conditions de paiement, comptes et dimensions analytiques sont strictement identiques entre Yooz et Sage X3.
-
Stabilité technique : Le tableau de bord de suivi (XRJ31YOOZINT) ne contient aucune erreur inexpliquée. Les relances (après correction de données) aboutissent sans créer de doublons.
-
Limites de cadrage acceptées : Les limites inhérentes au connecteur (retours physiques, achats stockés dans le cas B, factures complémentaires/frais d'approche) ont été testées, comprises et validées par les utilisateurs clés.
-
Check-list Éditeur : La complétion des tests s'aligne sur la checklist de validation standard fournie par l'éditeur du connecteur pour sécuriser le déploiement.
Les scénarios de recette ci-dessous ne doivent être exécutés que si l'environnement X3 est techniquement prêt (flux réseaux ouverts, utilisateur de service équipé d'un badge ERPFULL) et si le dossier de Test est strictement gelé (aucun écrasement par les données de production n'est autorisé sous peine de supprimer l'installation du connecteur).
