Votre modèle de données Purchase to Pay - Traitement des factures
Votre modèle de données Purchase to Pay - Traitement des factures
- Attributs recommandés à collecter
- Activités clés à suivre
- Guide d'extraction pour SAP ECC
Purchase to Pay - Attributs du traitement des factures
| Nom | Description | ||
|---|---|---|---|
| Activité Activity | Le nom d'une étape ou d'un événement métier précis survenu au cours du cycle de traitement de la facture. | ||
| Description L’attribut Activité représente une étape ou une action précise du flux de travail de traitement des factures. Ces activités sont dérivées de différents événements système, tels que la création d’un document, les changements d’état, les approbations ou les actions des utilisateurs enregistrées dans les journaux de modifications SAP. L’analyse des activités constitue le cœur du Process Mining. Elle permet de visualiser les cartes de processus, d’identifier les goulots d’étranglement, par exemple les longues attentes après « Facture envoyée pour approbation », les boucles de reprise, comme les cycles répétés « Blocage de paiement défini » et « Blocage de paiement levé », ainsi que les écarts de conformité. La séquence et la fréquence des activités révèlent le flux réel du processus, tel qu’il existe. Pourquoi c’est important Il définit les étapes de la carte de processus et permet de visualiser les flux de processus, de découvrir les goulots d'étranglement et d'identifier les reprises. Où les obtenir Cet attribut est généralement dérivé de plusieurs sources, notamment des codes de transaction (SY-TCODE), des champs de statut dans des tables telles que RBKP, par exemple RBSTAT, ainsi que des événements de modification issus des tables CDHDR et CDPOS. Exemples Facture préenregistréeFacture envoyée pour approbationFacture approuvéeFacture comptabiliséeFacture lettrée | |||
| Heure de l'événement EventTime | L'horodatage précis, comprenant la date et l'heure, auquel une activité s'est produite. | ||
| Description Event Time enregistre le moment exact où une activité métier a été exécutée et consignée dans le système source. Cet horodatage constitue la base chronologique du processus : il ordonne toutes les activités de chaque facture pour former une séquence cohérente. Dans l'analyse, Event Time est indispensable au calcul de toutes les métriques fondées sur la durée, notamment les temps de cycle, les temps d'attente et les temps de traitement entre les activités. Il alimente des Dashboards tels que « Invoice End-to-End Cycle Time » et « Payment Block Resolution Duration » en fournissant les données nécessaires pour mesurer le temps écoulé entre deux points quelconques du processus. Des horodatages précis sont essentiels pour identifier les retards et les goulots d'étranglement qui affectent les performances. Pourquoi c’est important Cet horodatage est indispensable pour ordonner correctement les événements et calculer toutes les métriques de performance, notamment les temps de cycle et la durée des goulots d'étranglement. Où les obtenir Il est généralement obtenu en combinant la date de modification (UDATE) et l'heure de modification (UTIME) de la table d'en-tête des documents de modification, CDHDR. Pour certains événements de création, il peut correspondre à la date et à l'heure de création issues de tables telles que RBKP (ERNAM, ERZET). Exemples 2023-03-15T10:30:00Z2023-03-16T14:05:21Z2023-03-28T09:00:00Z | |||
| Numéro de facture InvoiceNumber | Identifiant unique d'un document de facture fournisseur. | ||
| Description Le numéro de facture sert d'identifiant unique du cas pour le parcours de traitement de la facture. Chaque numéro correspond à une seule facture reçue d'un fournisseur, ce qui permet de suivre toutes les activités associées, de la capture des données au paiement final, dans le cadre d'une même instance de processus. Dans une analyse de process mining, cet attribut est fondamental pour reconstituer le cycle de vie complet de chaque facture. Il permet de relier les différents événements enregistrés dans SAP, tels que le préenregistrement, la comptabilisation, le blocage et le lettrage, au sein d'une séquence chronologique. Vous obtenez ainsi une vision claire du traitement de chaque facture, de sa durée et des écarts par rapport au processus standard. Pourquoi c’est important Il s'agit de la clé primaire qui relie tous les événements associés à une même facture. Elle constitue donc le fondement indispensable de l'analyse des processus et de l'exploration des variantes. Où les obtenir Il s'agit généralement du numéro de document de la table SAP RBKP, champ BELNR, souvent concaténé avec le code société (BUKRS) et l'exercice fiscal (GJAHR) pour garantir une unicité absolue. Exemples 510004567851000456795100045680 | |||
| Date d'échéance du paiement PaymentDueDate | La date à laquelle le paiement de la facture doit être effectué au fournisseur, conformément aux conditions de paiement. | ||
| Description La Payment Due Date est calculée à partir de la date de référence de la facture et des conditions de paiement convenues. Elle représente la date limite de paiement à respecter pour éviter un retard, d'éventuelles pénalités ou une dégradation de la relation avec le fournisseur. Cet attribut est essentiel pour des KPI de performance et de conformité tels que « On-Time Payment Rate » et « Cash Discount Opportunity Loss ». En comparant la date réelle de paiement (Clearing Date) à la Payment Due Date, l'analyse peut déterminer automatiquement si le paiement a été effectué à temps, en avance ou en retard. Il constitue un élément fondamental du Dashboard Payment Terms Adherence. Pourquoi c’est important Elle sert de référence pour mesurer la performance des paiements effectués à temps et identifier les possibilités de bénéficier de remises pour paiement anticipé. Où les obtenir Cette date est souvent calculée. La date de référence du paiement (ZFBDT) figure dans la table BSEG. La logique de calcul de l'échéance dépend également des conditions de paiement (BSEG-ZTERM). Exemples 2023-04-192023-05-052023-05-11 | |||
| Date de comptabilisation PostingDate | La date à laquelle la facture a été officiellement comptabilisée dans les livres comptables. | ||
| Description La Posting Date est une date clé du processus comptable. Elle détermine la période fiscale au cours de laquelle la charge liée à la facture est comptabilisée dans le grand livre. Elle est généralement définie par le comptable fournisseurs lors du traitement de la facture. Dans l'analyse des processus, l'activité « Invoice Posted », marquée par cette date, constitue une étape importante. La durée entre la réception de la facture et la Posting Date représente une composante essentielle du temps de cycle global. Cette date est également fondamentale pour le reporting financier et l'analyse du débit, par exemple pour suivre le volume de factures comptabilisées par semaine ou par mois. Pourquoi c’est important Elle marque une étape importante du processus, détermine la période financière de la transaction et constitue un élément clé du calcul du temps de cycle. Où les obtenir Il s'agit du champ « Posting Date » (BUDAT) de la table d'en-tête des documents de facture, RBKP. Exemples 2023-03-202023-04-052023-04-11 | |||
| Date de lettrage ClearingDate | La date à laquelle le paiement a été effectué et la facture lettrée dans les comptes fournisseurs. | ||
| Description La Clearing Date marque la dernière étape du cycle de vie de la facture : le paiement. Il s'agit de la date à laquelle le poste de facture ouvert est lettré par un document de paiement dans le système. Elle représente le moment réel de l'exécution du paiement. Cet attribut constitue le point final de nombreux KPI importants, notamment « Average Invoice Cycle Time » et « On-Time Payment Rate ». Il est comparé à la Payment Due Date pour mesurer la performance des paiements. Pour l'analyse des remises, il est comparé à la période de remise afin de vérifier si le paiement a été effectué à temps pour en bénéficier. Pourquoi c’est important Elle marque l'achèvement du processus et sert de base au calcul du temps de cycle total, du taux de paiements effectués à temps et de la réalisation des remises pour paiement anticipé. Où les obtenir Pour les postes lettrés, il s'agit du champ « Clearing Date » (AUGDT) de la table des postes fournisseurs lettrés, BSAK. Exemples 2023-04-152023-05-022023-05-20 | |||
| Montant de la facture InvoiceAmount | Le montant brut total de la facture dans la devise d'origine du document. | ||
| Description Invoice Amount représente la valeur totale de la facture soumise par le fournisseur. Il s'agit d'une métrique financière essentielle pour chaque cas de facture. Dans le Process Mining, cet attribut est indispensable à l'analyse par valeur. Il permet de filtrer et de segmenter le processus selon le montant de la facture, qui est souvent corrélé à la complexité du processus et aux exigences d'approbation. Par exemple, les factures d'un montant élevé peuvent suivre un parcours d'approbation différent et plus strict. Cet attribut est également utilisé dans les analyses de conformité, notamment pour vérifier que les factures d'un montant élevé ne contournent pas les étapes d'approbation requises. Pourquoi c’est important Il permet une analyse fondée sur la valeur, aide à prioriser les factures d'un montant élevé et à comprendre l'incidence du montant de la facture sur le flux du processus et la conformité. Où les obtenir Il s'agit du champ « Gross invoice amount » (RMWWR) de la table d'en-tête des documents de facture, RBKP. Exemples 1500.7512500.00850.20 | |||
| Motif du blocage du paiement PaymentBlockReason | Un code indiquant la raison pour laquelle une facture est bloquée pour paiement. | ||
| Description Lorsqu'une facture présente un écart ou nécessite un examen complémentaire, un blocage de paiement est appliqué. Le code Payment Block Reason précise la raison du blocage, par exemple un écart de quantité, un écart de prix ou un blocage manuel. Cet attribut est essentiel au Dashboard « Payment Block Resolution Duration ». L'analyse de la fréquence et de la durée des blocages par motif aide à identifier les causes profondes des retards de paiement. Par exemple, si « Price Discrepancy » est le motif le plus fréquent des blocages prolongés, cela peut révéler un problème dans les données de référence ou dans le processus de commande d'achat qui doit être corrigé. Pourquoi c’est important Il explique les raisons des retards de facture, permet d'analyser les causes profondes des blocages de paiement et aide à prioriser les efforts d'amélioration du processus. Où les obtenir Le motif du blocage de paiement peut être trouvé au niveau du poste dans la table RSEG (champ SPGRS) ou dans la table des documents comptables BSEG (champ ZLSPR). Exemples RIM | |||
| Nom d'utilisateur UserName | L'identifiant de l'utilisateur SAP ayant exécuté l'activité. | ||
| Description L'attribut User Name identifie précisément la personne responsable de l'exécution d'une activité donnée dans le processus. Il s'agit généralement du nom d'utilisateur SAP enregistré avec la transaction ou l'événement de modification. Cet attribut est essentiel pour analyser les performances et la charge de travail au niveau d'un utilisateur ou d'une équipe. Il permet de répondre à des questions telles que « Qui sont les approbateurs les plus rapides ? » ou « Quels utilisateurs génèrent le plus de reprises ? ». Il est utilisé dans les Dashboards pour analyser la répartition de la charge, identifier les besoins de formation et comprendre les écarts de performance entre les collaborateurs. Pourquoi c’est important Il permet d'analyser les performances et la charge de travail par personne ou par équipe, afin d'identifier les meilleurs contributeurs, les besoins de formation et les déséquilibres de Ressources. Où les obtenir Il s'agit du champ « Changed By » (USERNAME) de la table d'en-tête des documents de modification, CDHDR. Pour les événements de création, il peut correspondre au champ « Entered by » (ERNAM) de tables telles que RBKP. Exemples JSMITHBWILSONCHEN | |||
| Numéro de commande d'achat PurchaseOrderNumber | L'identifiant de la commande d'achat (PO) à laquelle la facture est rapprochée. | ||
| Description Le Purchase Order Number relie une facture au document d'achat d'origine. Il est fondamental pour le rapprochement à trois niveaux (PO, réception des marchandises, facture) et pour analyser l'efficacité du processus de traitement des factures associées à une PO. Cet attribut est essentiel pour des Dashboards tels que « Invoice-PO Matching Discrepancy Rate ». Il permet de distinguer les factures associées à une PO des factures sans PO, qui suivent souvent des parcours et présentent des niveaux de complexité très différents. L'analyse des problèmes liés à certaines PO peut contribuer à diagnostiquer les difficultés en amont du processus d'achat. Pourquoi c’est important Il relie la facture au processus d'achat, permet d'analyser les factures avec ou sans PO et d'identifier les écarts de rapprochement. Où les obtenir Cette information se trouve généralement au niveau du poste. Le « Purchase Order Number » (EBELN) figure dans la table des postes de facture, RSEG. Il peut être nécessaire de l'agréger au niveau de l'en-tête. Exemples 450001756345000175644500017565 | |||
| Numéro de fournisseur VendorNumber | Un identifiant unique du fournisseur ayant soumis la facture. | ||
| Description Le Vendor Number est la clé des données de référence qui identifie le fournisseur. Il relie la transaction de facture à un partenaire commercial précis et permet ainsi d'analyser le processus selon les caractéristiques du fournisseur. L'analyse du processus par Vendor Number peut révéler des informations importantes sur les relations avec les fournisseurs et leurs performances. Elle peut notamment montrer quels fournisseurs soumettent régulièrement des factures problématiques entraînant des blocages de paiement ou des écarts, ou quelles factures fournisseurs sont traitées le plus efficacement. Ces informations sont utiles à la gestion des fournisseurs et aux initiatives d'achats stratégiques. Pourquoi c’est important Il permet une analyse propre à chaque fournisseur et aide à identifier les tendances, les problèmes ou les gains d'efficacité associés à certains fournisseurs. Où les obtenir Il s'agit du champ « Invoicing Party » (LIFNR) de la table d'en-tête des documents de facture, RBKP. Exemples 100345100876200112 | |||
| Code société CompanyCode | L'identifiant de l'entité juridique ou de la société pour laquelle la facture est traitée. | ||
| Description Le Company Code est une unité organisationnelle fondamentale de SAP Financials qui représente une entité juridique indépendante. Toutes les transactions financières, y compris les factures, sont comptabilisées dans un code société précis. Cet attribut permet de segmenter l'analyse du processus par entité juridique. Il est essentiel pour comparer les performances, la conformité et l'efficacité du processus entre différentes sociétés d'un même groupe. Les Dashboards peuvent être filtrés par Company Code afin de fournir une vue des KPI de traitement des factures propre à chaque société. Pourquoi c’est important Il permet de comparer les processus et d'évaluer les performances entre différentes entités juridiques d'une même organisation. Où les obtenir Il s'agit du champ « Company Code » (BUKRS) de la table d'en-tête des documents de facture, RBKP. Exemples 10002000US01 | |||
| Compte du grand livre GeneralLedgerAccount | Le numéro du compte du grand livre sur lequel la charge ou le coût lié à la facture est comptabilisé. | ||
| Description Le General Ledger (G/L) Account est le compte de destination du plan comptable sur lequel l'impact financier de la facture est enregistré. Il s'agit d'une donnée essentielle pour le reporting financier et la gestion des coûts. Dans le Process Mining, l'analyse du compte du grand livre ajoute une dimension financière au flux du processus. Le Dashboard « General Ledger Account Usage Analysis » peut révéler des tendances de dépenses, identifier d'éventuelles erreurs d'imputation des factures et vérifier que les coûts sont affectés aux bons services ou projets. Il contribue à relier l'exécution du processus à son impact financier. Pourquoi c’est important Il ajoute une dimension financière au processus et permet d'analyser l'affectation des coûts, les tendances de dépenses et les erreurs potentielles d'imputation des factures. Où les obtenir Cette information se trouve au niveau du poste. Le « G/L Account Number » (HKONT) figure dans la table des postes de facture RSEG pour les factures avec PO, ou dans BSEG pour les factures FI directes. Exemples 630000655100741000 | |||
| Conditions de paiement PaymentTerms | Le code définissant les conditions de paiement convenues avec le fournisseur, notamment les périodes de remise et les dates d'échéance. | ||
| Description Les Payment Terms définissent les règles relatives à la date de paiement d'une facture et aux éventuelles remises pour paiement anticipé. Elles peuvent par exemple prévoir « Net 30 days » ou « 2% 10, Net 30 », ce qui signifie qu'une remise de 2 % est accordée en cas de paiement sous 10 jours, tandis que le montant total est dû sous 30 jours. Cet attribut constitue la base du Dashboard « Cash Discount Opportunity Loss » et du KPI « Cash Discount Capture Rate ». L'analyse utilise les conditions de paiement conjointement avec les dates de comptabilisation et de paiement pour déterminer si une remise était disponible et si elle a effectivement été obtenue. Il est également essentiel au Dashboard Payment Terms Adherence. Pourquoi c’est important Il est essentiel pour analyser les taux d'obtention des remises pour paiement anticipé et comprendre l'incidence financière des retards de traitement. Où les obtenir Il s'agit du champ « Terms of Payment Key » (ZTERM) de la table d'en-tête des documents de facture, RBKP. Exemples Z0010001NT30 | |||
| Dernière mise à jour des données LastDataUpdate | Horodatage indiquant la date à laquelle les données du processus ont été actualisées pour la dernière fois depuis le système source. | ||
| Description Cet attribut enregistre la date et l'heure de l'extraction ou de la mise à jour la plus récente des données. Il s'applique à l'ensemble du jeu de données, et non à des événements individuels, et indique clairement son niveau d'actualité. Il s'agit d'un attribut de métadonnées essentiel pour les utilisateurs de Dashboards et les analystes. Il les aide à comprendre la période couverte par l'analyse et à s'assurer que leurs décisions reposent sur des informations à jour. Il est généralement affiché de manière visible sur les Dashboards afin d'indiquer la date de fraîcheur des données. Pourquoi c’est important Il informe les utilisateurs du niveau d'actualité des données et garantit que les analyses et les décisions reposent sur des informations à jour. Où les obtenir Cette valeur est générée et injectée dans le jeu de données par l'outil d'extraction des données ou l'outil ETL au moment de l'actualisation. Exemples 2024-05-20T08:00:00Z2024-05-21T08:00:00Z2024-05-22T08:00:00Z | |||
| Devise Currency | Le code de devise du montant de la facture. | ||
| Description L'attribut Currency précise la devise dans laquelle le montant de la facture est exprimé, par exemple USD, EUR ou JPY. Cet attribut fournit le contexte nécessaire à l'interprétation de Invoice Amount. Il permet d'interpréter et d'agréger correctement les données financières, en particulier dans les organisations internationales qui utilisent plusieurs devises. L'analyse peut être filtrée par devise afin de comparer l'efficacité du traitement ou les problèmes rencontrés dans différentes zones monétaires. Pour obtenir des agrégations financières pertinentes, les montants peuvent devoir être convertis dans une devise de reporting unique. Pourquoi c’est important Il fournit le contexte nécessaire à l'interprétation de tout montant financier et permet un filtrage et une analyse par devise fiables. Où les obtenir Il s'agit du champ « Currency Key » (WAERS) de la table d'en-tête des documents de facture, RBKP. Exemples USDEURGBP | |||
| En retard IsOverdue | Un indicateur calculé qui précise si la facture a été payée après sa date d'échéance. | ||
| Description Il s'agit d'un attribut booléen calculé en comparant la « Clearing Date » (date réelle du paiement) à la « Payment Due Date ». Si la date de lettrage est postérieure à la date d'échéance, l'indicateur est vrai ; sinon, il est faux. Il fournit une mesure simple et directe de la performance des paiements effectués à temps pour chaque facture. Cet attribut simplifie l'analyse et la visualisation dans les Dashboards. Il permet de filtrer et d'agréger facilement les données afin de calculer le KPI « On-Time Payment Rate ». Les utilisateurs peuvent rapidement comparer les flux de processus des factures en retard à ceux des factures payées à temps et mettre en évidence les schémas de processus susceptibles d'entraîner des retards de paiement. Pourquoi c’est important Il simplifie l'analyse de la performance des paiements effectués à temps et permet de comparer facilement les processus des factures payées à temps et ceux des factures en retard. Où les obtenir Cet attribut n'existe pas dans SAP. Il est calculé lors de la transformation des données à l'aide de la formule : ClearingDate > PaymentDueDate. Exemples truefalse | |||
| Heure de fin EndTime | L'horodatage indiquant le moment où une activité a été achevée. Pour les événements instantanés, il est identique à l'heure de début. | ||
| Description L'attribut End Time marque l'achèvement d'une activité donnée. Dans SAP, de nombreux événements sont consignés comme des instants uniques : End Time est alors identique à Start Time. Pour les activités dont la durée est mesurable, comme une étape d'approbation traitée activement, il peut toutefois représenter la fin de cette activité. Dans l'analyse des processus, un End Time distinct permet de mesurer le temps de traitement de l'activité séparément du temps d'attente qui la précède. Il devient ainsi possible de distinguer le temps nécessaire à l'exécution d'une activité du temps pendant lequel un cas attend son démarrage, ce qui apporte une meilleure compréhension de l'efficacité des Ressources. Pourquoi c’est important Il permet de calculer le temps de traitement d'une activité, de le distinguer du temps d'attente entre les activités et d'améliorer l'analyse des goulots d'étranglement. Où les obtenir Il s’agit souvent de la même valeur que l’Heure de début, dérivée de CDHDR-UDATE et CDHDR-UTIME. Dans certains cas, elle peut être extraite des journaux du flux de travail qui enregistrent explicitement le début et la fin d’une tâche. Exemples 2023-03-15T10:35:10Z2023-03-16T14:10:00Z2023-03-28T09:02:45Z | |||
| Motif du rejet RejectionReason | Code ou texte expliquant pourquoi une facture a été rejetée pendant le flux de travail d’approbation. | ||
| Description Lorsqu'un approbateur rejette une facture, il indique idéalement le motif du rejet. Celui-ci peut prendre la forme d'un code standardisé ou d'un commentaire en texte libre signalant, par exemple, un « Incorrect PO number », une « Duplicate Invoice » ou un « Amount incorrect ». Ces données sont essentielles au Dashboard « Invoice Rejection Reasons & Trends ». L'analyse de la fréquence des différents motifs de rejet permet à l'entreprise d'identifier les problèmes récurrents et de mettre en place des mesures correctives. Par exemple, si « Incorrect PO number » revient fréquemment, cela peut indiquer la nécessité d'améliorer la communication avec les fournisseurs ou de former les collaborateurs chargés de la saisie. Cette analyse est essentielle pour réduire les reprises. Pourquoi c’est important Il fournit la cause profonde des rejets et permet de cibler les améliorations du processus afin de réduire les reprises et d'augmenter le taux de traitement correct dès la première fois. Où les obtenir Ces informations ne sont souvent pas stockées dans un champ standard unique. Elles peuvent figurer dans les journaux du conteneur du flux de travail, dans les champs de texte long associés au document ou dans des champs spécifiques d’une solution de flux de travail personnalisée. Exemples DUPLICATE_INVWRONG_AMTNO_PO_MATCH | |||
| Remise pour paiement anticipé perdue IsCashDiscountLost | Un indicateur calculé qui précise si une remise disponible pour paiement anticipé n'a pas été obtenue. | ||
| Description Il s'agit d'un attribut booléen calculé à partir des conditions de paiement et de la date réelle du paiement. Il prend la valeur vrai si les « Payment Terms » prévoyaient une remise pour paiement anticipé et si la « Clearing Date » était postérieure à l'expiration de la période de remise. Il mesure directement la perte financière due aux inefficacités du processus. Cet attribut constitue la base du Dashboard « Cash Discount Opportunity Loss ». Il permet de quantifier facilement l'impact financier des retards de traitement. En filtrant les cas pour lesquels cet indicateur est vrai, les analystes peuvent examiner les variantes de processus et les goulots d'étranglement qui entraînent le plus souvent la perte de remises, et ainsi étayer la nécessité d'améliorer le processus. Pourquoi c’est important Quantifie directement la perte financière liée aux retards du processus et constitue un argument convaincant en faveur de l’optimisation du flux de travail de traitement des factures. Où les obtenir Cet attribut n'existe pas dans SAP. Il est calculé lors de la transformation des données en interprétant « PaymentTerms » et en comparant « ClearingDate » à la date d'échéance de la remise. Exemples truefalse | |||
| Système source SourceSystem | Identifie le système source précis à partir duquel les données ont été extraites. | ||
| Description L'attribut Source System indique l'origine des données d'événement, par exemple le nom d'une instance SAP ECC donnée. Il est particulièrement important dans les environnements qui utilisent plusieurs systèmes ERP ou dans lesquels les données proviennent de sources différentes. Dans l'analyse, cet attribut permet de distinguer les processus et les performances entre différents systèmes, régions ou unités opérationnelles pouvant fonctionner sur des instances distinctes. Il garantit une traçabilité claire des données et permet d'appliquer des filtres et des analyses propres à chaque système. Pourquoi c’est important Il fournit un contexte essentiel dans les environnements multisystèmes, en permettant une séparation appropriée des données et une analyse des performances propre à chaque système. Où les obtenir Il s'agit généralement d'une valeur statique ajoutée lors de l'extraction des données. Elle représente l'identifiant du système SAP (TADIR-SRCSYSTEM) ou un identifiant attribué manuellement à l'instance SAP concernée. Exemples SAPECC_PROD_EUECC_US_FINSAP_ERP_6_EHP8 | |||
| Type de document DocumentType | Un code qui classe le document comptable, par exemple comme facture fournisseur ou note de crédit. | ||
| Description Le Document Type sert à catégoriser les différents types de transactions métier dans SAP. Pour le traitement des factures, les types courants comprennent « RE » pour les factures standard et « KG » pour les notes de crédit fournisseur. Le type de document contrôle certains aspects de la comptabilisation, notamment la plage de numéros utilisée. Dans l'analyse, cet attribut permet de filtrer le processus sur certains types de transactions. Par exemple, le traitement d'une note de crédit peut être très différent de celui d'une facture standard. La séparation de ces flux à l'aide du Document Type fournit une vue du processus plus précise et plus pertinente. Pourquoi c’est important Il permet de séparer et d'analyser différentes transactions métier, telles que les factures et les notes de crédit, qui suivent des processus distincts. Où les obtenir Il s'agit du champ « Document Type » (BLART) de la table d'en-tête des documents de facture, RBKP. Exemples REKRKG | |||
Purchase to Pay - Activités de traitement des factures
| Activité | Description | ||
|---|---|---|---|
| Blocage de paiement défini | Cette activité survient lorsqu'un blocage est appliqué à une ligne de facture, ce qui empêche son paiement. Les blocages peuvent être définis automatiquement en raison d'écarts lors du rapprochement à trois niveaux, ou manuellement pour diverses raisons. | ||
| Pourquoi c’est important Cet événement est essentiel pour mesurer la durée de résolution des blocages de paiement et identifier les causes profondes des retards de paiement. Il met en évidence les problèmes liés aux prix, aux quantités ou aux approbations requises. Où les obtenir Il s'agit d'un événement explicite qui peut être suivi dans les journaux de documents de modification, tables CDHDR et CDPOS, pour la table BSEG et le champ ZLSPR (clé de blocage de paiement). Collecte Horodatage issu des documents de modification (CDHDR) lorsque la valeur de BSEG-ZLSPR passe de vide à non vide. Type d’événement explicit | |||
| Données de facture capturées | Indique la création initiale du document de facture dans SAP, qu'il s'agisse d'un document préenregistré ou entièrement comptabilisé. Il s'agit généralement du premier événement enregistré dans le système au cours du cycle de vie d'une facture et du point de départ du processus. | ||
| Pourquoi c’est important Cette activité constitue le principal point de départ pour mesurer le délai de traitement de la facture de bout en bout. L'analyse de la durée à partir de ce point permet d'identifier les retards lors de la saisie initiale des données et de la création du document. Où les obtenir L'horodatage de création est enregistré dans la table SAP BKPF, dans les champs CPUDT (date de saisie du document comptable) et CPUTM (heure de saisie). Collecte Utilisez l'horodatage de création du document dans l'en-tête de la table BKPF (CPUDT). Type d’événement explicit | |||
| Facture comptabilisée | Il s'agit d'un événement financier clé au cours duquel la facture est officiellement enregistrée dans le grand livre et crée une dette. Le document passe ainsi d'un état temporaire, préenregistré, à une écriture comptable définitive. | ||
| Pourquoi c’est important La comptabilisation constitue une étape majeure qui confirme la validité de la facture. Elle est indispensable au paiement et représente un indicateur clé du débit de traitement. Où les obtenir Il s'agit d'un événement explicite enregistré dans la table d'en-tête des documents BKPF. L'horodatage correspond à la date de comptabilisation BKPF-BUDAT. Le document n'a alors plus le statut « préenregistré ». Collecte Utilisez la date de comptabilisation (BKPF-BUDAT) pour les documents qui ne sont pas préenregistrés (BKPF-BSTAT est vide ou égal à « »). Type d’événement explicit | |||
| Facture contrepassée | Représente l'annulation d'un document de facture comptabilisé. Un document de contrepassation est créé afin d'annuler l'impact financier de la facture d'origine. | ||
| Pourquoi c’est important Cette activité met en évidence une exception importante et un parcours de retraitement. L'analyse de la fréquence et des raisons des contrepassations peut révéler des problèmes systémiques dans le processus de validation et de comptabilisation des factures. Où les obtenir Il s'agit d'un événement explicite enregistré dans la table d'en-tête des documents BKPF. L'en-tête du document contrepassé contient le numéro du document de contrepassation (STBLG) et l'exercice fiscal (STJAH). Collecte Identifiez les documents dont le champ BKPF-STBLG est renseigné. L'horodatage de l'événement correspond à la date de comptabilisation du document de contrepassation. Type d’événement explicit | |||
| Facture lettrée | Cette activité marque la dernière étape d'un cycle de vie de facture réussi : la dette ouverte est soldée par un document de paiement. Elle indique que le paiement a été exécuté. | ||
| Pourquoi c’est important En tant qu'événement final principal, elle est essentielle au calcul du délai total de traitement de bout en bout. Elle confirme la bonne exécution du processus et sert à mesurer la performance des paiements dans les délais. Où les obtenir Il s'agit d'un événement explicite enregistré dans la table des postes de facture BSEG. La date de lettrage est stockée dans le champ AUGDT et le numéro du document de lettrage dans AUGBL. Collecte Utilisez la date de lettrage (BSEG-AUGDT) du poste du document de facture. Type d’événement explicit | |||
| Blocage de paiement levé | Représente la suppression d'un blocage de paiement appliqué à une ligne de facture, ce qui permet à celle-ci de passer dans le cycle de paiement. Cela signifie qu'un problème précédemment identifié a été résolu. | ||
| Pourquoi c’est important Cette activité clôture la mesure de la durée du blocage. L'analyse du délai entre la définition et la levée d'un blocage révèle l'efficacité du processus de résolution des problèmes. Où les obtenir Cet événement est suivi dans les journaux de documents de modification, tables CDHDR et CDPOS, pour la table BSEG et le champ ZLSPR (clé de blocage de paiement), lorsque le blocage est supprimé. Collecte Horodatage issu des documents de modification (CDHDR) lorsque la valeur de BSEG-ZLSPR passe de non vide à vide. Type d’événement explicit | |||
| Facture approuvée | Indique que la facture a été officiellement approuvée par l’autorité désignée, ce qui permet de passer à la comptabilisation et au paiement. Il s’agit souvent de la dernière étape d’un flux de travail. | ||
| Pourquoi c’est important Cette étape clé clôture la mesure du délai du cycle d'approbation. Elle débloque le processus, permet un paiement dans les délais et contribue à analyser la répartition de la charge de travail entre les approbateurs. Où les obtenir Cet événement est généralement capturé dans les tables SAP Business flux de travail en identifiant la fin d’une tâche d’approbation. Il peut également être déduit de la levée d’un blocage de paiement lié à l’approbation. Collecte Horodatage de l’étape d’approbation terminée dans les journaux du flux de travail ou de la suppression d’un blocage de paiement précis. Type d’événement inferred | |||
| Facture en retard | Événement calculé qui survient lorsque la date du jour dépasse la date d'échéance nette de la facture et que celle-ci n'a pas encore été payée. La date d'échéance est déterminée à partir des conditions de paiement et de la date de référence. | ||
| Pourquoi c’est important Cette activité est essentielle au suivi de l'indicateur de taux de paiement dans les délais. Elle signale de manière préventive les factures présentant un risque de retard de paiement, ce qui peut nuire aux relations avec les fournisseurs et entraîner des pénalités. Où les obtenir Cet événement est calculé en comparant la date du jour à la date d'échéance nette. La date d'échéance est dérivée de la date de référence (BSEG-ZFBDT) et des conditions de paiement (BSEG-ZTERM). Collecte L'événement est déclenché lorsque Type d’événement calculated | |||
| Facture envoyée pour approbation | Représente le moment où une facture est soumise à un flux d’approbation formel. Le mécanisme de capture dépend fortement de l’implémentation spécifique du flux de travail SAP ou d’un système tiers. | ||
| Pourquoi c’est important Cette activité déclenche le chronomètre de l'indicateur de délai du cycle d'approbation des factures. Elle est essentielle pour identifier les retards dans la chaîne d'approbation et analyser les performances des approbateurs. Où les obtenir Cet événement est généralement capturé dans les tables SAP Business flux de travail, par exemple SWW_WI2OBJ et SWWLOG, en identifiant le début d’une tâche d’approbation précise. Dans les scénarios plus simples, il peut être déduit d’un changement d’état dans un champ personnalisé. Collecte Nécessite l’analyse des journaux du flux de travail SAP ou des champs d’état personnalisés associés au document de facture. Type d’événement inferred | |||
| Facture préenregistrée | Indique qu'une facture a été saisie dans SAP, mais qu'elle n'a pas encore été comptabilisée dans le grand livre. Il s'agit d'un état temporaire qui permet sa vérification, sa correction ou son approbation avant la comptabilisation financière. | ||
| Pourquoi c’est important Le suivi de la mise en attente des factures et de sa durée met en évidence les goulots d’étranglement du processus de validation et d’approbation avant comptabilisation. Il distingue le temps de saisie des données du temps de traitement financier. Où les obtenir Cet état est déduit du statut du document dans la table BKPF, champ BSTAT. La valeur « V » (document préenregistré) ou « W » (document préenregistré avec validation des modifications) indique un état préenregistré. Collecte Identifiez les documents dont le champ de statut BKPF-BSTAT est égal à « V ». L'horodatage de l'événement correspond à la date de création BKPF-CPUDT. Type d’événement inferred | |||
| Facture rejetée | Indique qu'une facture a été rejetée au cours du processus d'approbation. Cette action nécessite généralement une correction et une nouvelle soumission, ce qui crée une boucle de retraitement. | ||
| Pourquoi c’est important Le suivi des rejets est essentiel pour identifier les causes fréquentes d'échec, telles que des données incorrectes ou des violations de politiques. Il permet de quantifier le retraitement et de repérer les domaines à améliorer dans le processus ou dans l'accompagnement des fournisseurs. Où les obtenir Cet événement apparaît généralement dans les journaux SAP Business flux de travail sous la forme d’une étape de rejet. Il peut également être déduit de changements d’état précis ou de notes ajoutées au document de facture. Collecte Horodatage de l’étape de rejet dans les journaux du flux de travail ou d’un changement d’état du document indiquant le rejet. Type d’événement inferred | |||
Guides d'extraction
Étapes
- Créer le programme ABAP : utilisez la transaction
SE38ouSE80pour créer un nouveau programme exécutable, par exempleZ_PM_INVOICE_EXTRACT. Indiquez un titre approprié et définissez le type « Programme exécutable ». - Définir l’écran de sélection : dans le programme, définissez un écran de sélection permettant aux utilisateurs de filtrer les données. Les principaux paramètres doivent inclure le code société (
BUKRS), l’exercice fiscal (GJAHR), la plage de dates de comptabilisation (BUDAT) ainsi qu’un paramètre indiquant le chemin du fichier de sortie sur le serveur d’applications. - Déclarer les structures de données : définissez une structure de table interne destinée à contenir le journal d’événements final. Elle doit inclure tous les attributs requis et recommandés :
InvoiceNumber,Activité,EventTime,UserName,VendorNumber,PurchaseOrderNumber,InvoiceAmount,PostingDate,PaymentDueDate,PaymentBlockReasonetClearingDate. - Implémenter la logique de sélection des données : écrivez la logique ABAP principale pour sélectionner les données des factures. Cette approche repose sur plusieurs sélections regroupées dans la table finale du journal d’événements.
- Commencez par sélectionner les données d’en-tête et de poste dans les tables principales de factures
BKPF,BSEG,RBKPetRSEG, selon les critères de l’écran de sélection. - Pour chaque facture, générez les événements de base tels que « Données de facture capturées » à partir de l’horodatage de création et « Facture comptabilisée » à partir de l’horodatage de comptabilisation.
- Interrogez les tables de documents de modification
CDHDRetCDPOSafin de repérer les changements liés aux blocages de paiement (champZLSPRdansBSEG). Pour chaque changement pertinent, créez les événements « Blocage de paiement défini » et « Blocage de paiement levé ». - Identifiez les événements « Facture lettrée » en vérifiant la présence d’un document de lettrage (
AUGBL) et d’une date de lettrage (AUGDT) dans la tableBSEG. - Identifiez les événements « Facture contre-passée » en vérifiant la présence d’un document de contre-passation (
STBLG) dans l’en-têteBKPF. - Implémentez une logique personnalisée pour capturer les événements du flux de travail (« Facture envoyée pour approbation », « Approuvée », « Rejetée »). Cette partie dépend fortement du contexte de chaque client et nécessite d’adapter le code aux tables ou aux champs de statut de votre flux de travail.
- Commencez par sélectionner les données d’en-tête et de poste dans les tables principales de factures
- Générer les événements calculés : dans la logique du programme, calculez l’événement
Invoice Becomes Overdue. Il est obtenu en comparant la date d’échéance de paiement de la facture (PaymentDueDate) à la date actuelle pour toutes les factures impayées. Si la date d’échéance est dépassée, créez un événement dontEventTimecorrespond à la date d’échéance. - Alimenter la table du journal d’événements : à mesure que vous rassemblez les données de chaque facture provenant des différentes sources, mettez-les en forme et ajoutez de nouvelles lignes à la table interne finale du journal d’événements, à raison d’une ligne par activité.
- Exporter les données dans un fichier : utilisez les instructions
OPEN DATASET,TRANSFERetCLOSE DATASETpour écrire le contenu de la table interne finale dans un fichier plat situé dans le chemin du serveur d’applications SAP indiqué sur l’écran de sélection. Utilisez un séparateur cohérent, tel qu’un point-virgule ou une tabulation, afin de créer un fichier CSV. - Planifier l’extraction : pour effectuer des extractions régulières, créez une variante du programme avec les critères de sélection souhaités et planifiez son exécution comme tâche d’arrière-plan à l’aide de la transaction
SM36. - Récupérer le fichier de sortie : accédez au répertoire du serveur d’applications SAP à l’aide de la transaction
AL11pour localiser le fichier généré. Utilisez la transactionCG3Ypour télécharger le fichier du serveur d’applications vers votre poste local. - Préparer le chargement : avant d’importer le fichier dans un outil de Process Mining, ouvrez le fichier CSV afin de vérifier l’exactitude des en-têtes, la cohérence du format des données, notamment celui des horodatages, ainsi que le séparateur utilisé. Vérifiez que le fichier est enregistré au format UTF-8.
Configuration
- Critères de sélection : le rapport ABAP doit comporter un écran de sélection complet. Les filtres les plus importants sont les suivants :
Company Code (BUKRS): pour limiter l'extraction à certaines entités juridiques.Posting Date (BUDAT): pour définir la période d'extraction. Il est recommandé d'extraire les données par volumes maîtrisables, par exemple sur 3 à 6 mois à la fois.Document Type (BLART): pour inclure uniquement les types de documents de facturation pertinents, tels que « RE » pour les factures logistiques et « KR » pour les factures fournisseurs.
- Chemin du fichier de sortie : paramètre obligatoire indiquant le chemin complet et le nom du fichier à créer sur le serveur d'applications SAP. L'utilisateur qui exécute le rapport doit disposer d'une autorisation d'écriture dans ce répertoire.
- Considérations relatives aux performances : pour les volumes importants, le rapport doit être exécuté comme tâche d'arrière-plan en dehors des heures de pointe afin d'éviter de dégrader les performances du système. Dans la mesure du possible, la logique doit sélectionner uniquement les champs nécessaires et utiliser les index standard de la base de données SAP.
- Prérequis et autorisations : l'utilisateur ou le compte de service qui exécute cette extraction doit disposer des éléments suivants :
- autorisations d'exécution des rapports ABAP, incluses dans
S_PROGRAM; - accès en lecture aux tables financières et logistiques, notamment
BKPF,BSEG,RBKP,RSEG,CDHDRetCDPOS; - autorisation d'écrire des fichiers dans le répertoire indiqué du serveur d'applications (
S_DATASET) ; - accès aux transactions
SE38,SM36,AL11etCG3Ypour le développement, la planification et la récupération des fichiers.
- autorisations d'exécution des rapports ABAP, incluses dans
a Exemple de requête abap
REPORT Z_PM_INVOICE_EXTRACT.
*&---------------------------------------------------------------------*
*& Tables for Selection Screen
*&---------------------------------------------------------------------*
TABLES: BKPF, RBKP.
*&---------------------------------------------------------------------*
*& Data Declarations
*&---------------------------------------------------------------------*
TYPES: BEGIN OF ty_event_log,
InvoiceNumber TYPE belnr_v,
Activity TYPE string,
EventTime TYPE timestamp,
UserName TYPE uname,
VendorNumber TYPE lifnr,
PurchaseOrderNumber TYPE ebeln,
InvoiceAmount TYPE wrbtr,
PostingDate TYPE budat,
PaymentDueDate TYPE faedt,
PaymentBlockReason TYPE rstgr,
ClearingDate TYPE augdt,
END OF ty_event_log.
DATA: gt_event_log TYPE TABLE OF ty_event_log,
gs_event_log TYPE ty_event_log.
DATA: lt_bkpf TYPE TABLE OF bkpf,
ls_bkpf TYPE bkpf,
lt_bseg TYPE TABLE OF bseg,
ls_bseg TYPE bseg.
DATA: lt_rbkp TYPE TABLE OF rbkp,
ls_rbkp TYPE rbkp.
*&---------------------------------------------------------------------*
*& Selection Screen
*&---------------------------------------------------------------------*
SELECT-OPTIONS: s_bukrs FOR bkpf-bukrs OBLIGATORY,
s_gjahr FOR bkpf-gjahr OBLIGATORY,
s_budat FOR bkpf-budat.
PARAMETERS: p_fpath TYPE string OBLIGATORY DEFAULT '/usr/sap/tmp/invoice_events.csv'.
*&---------------------------------------------------------------------*
*& Start of Program Logic
*&---------------------------------------------------------------------*
START-OF-SELECTION.
" Select FI Invoices (e.g., Doc Type KR)
SELECT * FROM bkpf INTO TABLE lt_bkpf
WHERE bukrs IN s_bukrs
AND gjahr IN s_gjahr
AND budat IN s_budat
AND blart = 'KR'.
" Select MM Invoices
SELECT * FROM rbkp INTO TABLE lt_rbkp
WHERE bukrs IN s_bukrs
AND gjahr IN s_gjahr
AND budat IN s_budat.
* --- Process FI Invoices ---
LOOP AT lt_bkpf INTO ls_bkpf.
CLEAR gs_event_log.
gs_event_log-InvoiceNumber = ls_bkpf-belnr.
gs_event_log-PostingDate = ls_bkpf-budat.
SELECT SINGLE * FROM bseg INTO ls_bseg
WHERE bukrs = ls_bkpf-bukrs
AND belnr = ls_bkpf-belnr
AND gjahr = ls_bkpf-gjahr
AND koart = 'K'. " Vendor Line Item
IF sy-subrc = 0.
gs_event_log-VendorNumber = ls_bseg-lifnr.
gs_event_log-InvoiceAmount = ls_bseg-wrbtr.
gs_event_log-ClearingDate = ls_bseg-augdt.
" Calculate Due Date
CALL FUNCTION 'DETERMINE_DUE_DATE'
EXPORTING
i_bseg = ls_bseg
IMPORTING
e_faedt = gs_event_log-PaymentDueDate.
ENDIF.
" Activity: Invoice Data Captured
gs_event_log-Activity = 'Invoice Data Captured'.
CONVERT DATE ls_bkpf-cpudt TIME ls_bkpf-cputm INTO TIME STAMP gs_event_log-EventTime TIME ZONE sy-zonlo.
gs_event_log-UserName = ls_bkpf-usnam.
APPEND gs_event_log TO gt_event_log.
" Activity: Invoice Parked (if BSTAT = 'V')
IF ls_bkpf-bstat = 'V'.
gs_event_log-Activity = 'Invoice Parked'.
APPEND gs_event_log TO gt_event_log.
ENDIF.
" Activity: Invoice Posted
gs_event_log-Activity = 'Invoice Posted'.
CONVERT DATE ls_bkpf-budat TIME ls_bkpf-cputm INTO TIME STAMP gs_event_log-EventTime TIME ZONE sy-zonlo.
gs_event_log-UserName = ls_bkpf-usnam.
APPEND gs_event_log TO gt_event_log.
" Activity: Invoice Cleared
IF ls_bseg-augbl IS NOT INITIAL.
gs_event_log-Activity = 'Invoice Cleared'.
CONVERT DATE ls_bseg-augdt INTO TIME STAMP gs_event_log-EventTime TIME ZONE sy-zonlo.
gs_event_log-UserName = ls_bseg-usnam_cl.
APPEND gs_event_log TO gt_event_log.
ENDIF.
" Activity: Invoice Becomes Overdue
IF gs_event_log-PaymentDueDate IS NOT INITIAL AND gs_event_log-PaymentDueDate < sy-datum AND ls_bseg-augbl IS INITIAL.
gs_event_log-Activity = 'Invoice Becomes Overdue'.
CONVERT DATE gs_event_log-PaymentDueDate INTO TIME STAMP gs_event_log-EventTime TIME ZONE sy-zonlo.
gs_event_log-UserName = 'SYSTEM'.
APPEND gs_event_log TO gt_event_log.
ENDIF.
" Activity: Invoice Reversed
IF ls_bkpf-stblg IS NOT INITIAL.
DATA: ls_rev_bkpf TYPE bkpf.
SELECT SINGLE budat, usnam FROM bkpf INTO ls_rev_bkpf
WHERE belnr = ls_bkpf-stblg AND bukrs = ls_bkpf-bukrs AND gjahr = ls_bkpf-gjahr.
IF sy-subrc = 0.
gs_event_log-Activity = 'Invoice Reversed'.
CONVERT DATE ls_rev_bkpf-budat INTO TIME STAMP gs_event_log-EventTime TIME ZONE sy-zonlo.
gs_event_log-UserName = ls_rev_bkpf-usnam.
APPEND gs_event_log TO gt_event_log.
ENDIF.
ENDIF.
ENDLOOP.
* --- NOTE: The logic for MM invoices (from lt_rbkp) would be similar, joining RBKP with RSEG.
* --- NOTE: The logic for Payment Blocks and Workflow events requires reading change documents (CDHDR/CDPOS)
* --- or custom workflow tables. Below is a conceptual example for payment blocks.
* --- Conceptual Example for 'Payment Block Set' / 'Released' using Change Docs
* DATA: lt_cdhdr TYPE TABLE OF cdhdr, ls_cdhdr TYPE cdhdr,
* lt_cdpos TYPE TABLE OF cdpos, ls_cdpos TYPE cdpos.
* SELECT * FROM cdhdr INTO TABLE lt_cdhdr
* WHERE objectclas = 'BELEG' AND objectid IN (SELECT belnr FROM bkpf WHERE ...).
* LOOP AT lt_cdhdr.
* SELECT * FROM cdpos INTO TABLE lt_cdpos
* WHERE changenr = ls_cdhdr-changenr AND tabname = 'BSEG' AND fname = 'ZLSPR'.
* LOOP AT lt_cdpos.
* "... logic to create 'Payment Block Set' (if VALUE_NEW is not blank)
* "... or 'Payment Block Released' (if VALUE_NEW is blank) events.
* ENDLOOP.
* ENDLOOP.
* --- Conceptual Example for Workflow events ('Sent For Approval', 'Approved', 'Rejected')
* --- This part MUST be customized based on your specific workflow implementation (e.g., OpenText VIM, SAP WF).
* --- You would query the relevant workflow tables or status change tables here.
*&---------------------------------------------------------------------*
*& Write to File
*&---------------------------------------------------------------------*
END-OF-SELECTION.
DATA: lv_string TYPE string,
lv_header TYPE string.
" Create Header
lv_header = 'InvoiceNumber;Activity;EventTime;UserName;VendorNumber;PurchaseOrderNumber;InvoiceAmount;PostingDate;PaymentDueDate;PaymentBlockReason;ClearingDate'.
OPEN DATASET p_fpath FOR OUTPUT IN TEXT MODE ENCODING UTF-8.
IF sy-subrc = 0.
TRANSFER lv_header TO p_fpath.
LOOP AT gt_event_log INTO gs_event_log.
CONCATENATE gs_event_log-InvoiceNumber
gs_event_log-Activity
gs_event_log-EventTime
gs_event_log-UserName
gs_event_log-VendorNumber
gs_event_log-PurchaseOrderNumber
gs_event_log-InvoiceAmount
gs_event_log-PostingDate
gs_event_log-PaymentDueDate
gs_event_log-PaymentBlockReason
gs_event_log-ClearingDate
INTO lv_string SEPARATED BY ';'.
TRANSFER lv_string TO p_fpath.
ENDLOOP.
CLOSE DATASET p_fpath.
ELSE.
MESSAGE 'Error opening file.' TYPE 'E'.
ENDIF. Prêt à commencer ?
En suivant ce modèle, vous pourrez obtenir des analyses utiles et apporter des améliorations significatives à votre processus Purchase to Pay - Traitement des factures. Commencez dès aujourd’hui à extraire vos données et transformez vos opérations.
Optimisez dès aujourd'hui votre traitement des factures Purchase to Pay
Identifiez les inefficacités et réduisez de 30 % le délai du cycle de traitement des factures.
Aucune carte bancaire requise. Configuration en quelques minutes.