Détermination de compte SAP (OBYC) : du mouvement de stock à l’écriture comptable
Tu passes une réception de marchandise dans MIGO. Tu saisis un article, une quantité, une commande d’achat. À aucun moment SAP ne te demande sur quel compte général poster. Pourtant, une pièce comptable vient de naître.
C’est le travail de la détermination de compte SAP : le système déduit le compte à partir de quelques critères (la société, l’article, le mouvement) et va chercher la réponse dans une table de correspondance que l’on consulte avec la transaction OBYC. Ici, on part d’un mouvement concret et on remonte la chaîne jusqu’au compte. Et on voit quoi faire le jour où SAP répond qu’il ne trouve pas.
- Un mouvement de stock valorisé dans SAP MM crée automatiquement une pièce comptable dans SAP FI. L’utilisateur ne saisit aucun compte.
- SAP croise trois familles de critères : l’organisation (le plan comptable de la société), l’article (sa classe de valorisation) et l’opération (le type de mouvement, qui déclenche des transaction keys comme
BSXouWRX). - La correspondance critères → compte se lit dans
OBYC. Une simulation intégrée montre le compte trouvé pour un article et une opération donnés. - L’erreur « Account determination for entry … not possible » signifie qu’une combinaison de critères n’a pas de compte. Elle se diagnostique avec la simulation, sans bricolage.
Que se passe-t-il en comptabilité quand tu réceptionnes du stock ?
Une réception, deux documents
Une entrée de marchandise sur commande d’achat est la deuxième étape du cycle achat. Quand tu la valides, SAP crée d’abord un document article (material document). Il décrit le physique : quel article, combien, dans quelle division, dans quel magasin.
Si l’article est géré en valeur, SAP crée aussi un document comptable (accounting document). Celui-ci décrit l’argent : le stock augmente d’un montant, et une contrepartie est enregistrée en attendant la facture du fournisseur. Cette pièce part directement dans le grand livre de SAP FI. En S/4HANA, elle rejoint le journal universel de S/4HANA, comme toutes les écritures.
Vérifie-le toi-même : dans MIGO, l’en-tête du document article donne accès au document comptable associé. C’est le même réflexe que pour suivre un flux de documents côté ventes.
Personne ne saisit le compte : SAP le déduit
Le magasinier ne connaît pas le plan comptable, et c’est très bien ainsi. SAP trouve le compte sans intervention de l’utilisateur, à condition que les comptes aient été renseignés à l’avance dans une table de customizing.
Conséquence pratique : si l’écriture est fausse, c’est rarement la faute de la personne qui a saisi la réception. C’est un réglage, une donnée article ou une combinaison que personne n’a prévue.
Les critères qui décident du compte
SAP part de ce que tu as saisi et en déduit une série de clés. La chaîne se lit ainsi : le mouvement déclenche une transaction key, éventuellement affinée par un modificateur ; l’article apporte sa classe de valorisation ; la société apporte son plan comptable ; la combinaison des trois donne le compte général.
Le plan comptable, porté par la société
Tu indiques une division dans ton mouvement. SAP en déduit la société (company code) à laquelle elle appartient, puis le plan comptable (chart of accounts) affecté à cette société dans le customizing FI. Le plan comptable est une clé de la table de détermination : les comptes se renseignent plan par plan, parce qu’un même numéro de compte peut signifier autre chose d’un plan à l’autre.
La classe de valorisation, portée par l’article
La classe de valorisation (valuation class) regroupe les articles qui doivent aller sur les mêmes comptes. Elle se renseigne dans la fiche article, vue Accounting 1, là où se pose aussi la valorisation (et, le cas échéant, la valorisation séparée). Toutes les classes ne sont pas permises pour tous les articles : le type d’article est relié à une account category reference, qui liste les classes autorisées.
La transaction key, déclenchée par le mouvement
Tu choisis un type de mouvement (101 pour une réception sur commande, 201 pour une sortie sur centre de coûts…). Il pointe vers une value string, la liste des postings possibles pour ce genre d’opération. Chaque posting porte une transaction key de trois lettres (on parle souvent de clé d’opération en français) : BSX pour le stock, WRX pour le compte d’attente, et ainsi de suite.
Pour une réception en magasin sur commande standard, la value string s’appelle WE01 et contient notamment BSX et WRX. Ces value strings se consultent, mais ne se modifient pas.
Le modificateur et le groupement de valorisation : les affinages
Deux clés supplémentaires affinent le résultat. La première, l’account grouping code (dans l’écran, la colonne general modification ; en français, on dit souvent modificateur de compte), sert à couper une transaction key trop large en plusieurs cas. Sous GBB, c’est grâce à lui qu’une consommation, un rebut et un écart d’inventaire atterrissent sur des comptes distincts. SAP livre certains codes, comme VBR, et tu peux créer les tiens.
Le valuation grouping code (groupement de valorisation) permet, lui, de donner des comptes différents selon la zone de valorisation, par exemple pour qu’une nouvelle usine ait ses propres comptes de stock. Quand il est actif, chaque zone de valorisation doit en recevoir un.
Lire OBYC : de la transaction key au compte général
OBYC est la transaction qui affiche la table de détermination des comptes pour les postings MM. Tu y trouves la liste des transaction keys du groupe RMK, puis, pour chaque clé, ses règles et ses comptes.
-
1Ouvre OBYC
L’écran des procédures (Procedures) liste les transaction keys du groupe RMK, celui des écritures MM : un libellé par ligne, et le code dans la colonne Transaction.
-
2Double-clique sur la clé qui t’intéresse
Par exemple BSX. SAP te demande le plan comptable dans la fenêtre Enter Chart of Accounts : saisis celui de ta société.
-
3Regarde les règles avec le bouton Rules
La section Accounts are determined based on indique de quoi dépend la clé : groupement de valorisation, modificateur, classe de valorisation. Tu apprends ainsi quelles colonnes tu vas voir dans la grille.
-
4Reviens à la grille et lis les comptes
Ligne par ligne : une combinaison de critères, un compte au débit, un compte au crédit.
Si quelqu’un change les règles d’une clé (par exemple en ajoutant la classe de valorisation), SAP vide sa grille : tous les comptes déjà saisis pour cette clé sont à ressaisir. Toi, en lecteur, tu restes en affichage.
Pour qui paramètre, l’activité Configure Automatic Postings se trouve dans l’IMG.
Chemin SPRO :
SAP Customizing Implementation Guide → Materials Management → Valuation and Account Assignment → Account Determination → Account Determination Without Wizard → Configure Automatic Postings
| Transaction key | Ce qu’elle poste | Quand elle intervient | Dépend en standard de |
|---|---|---|---|
BSX | Le compte de stock | À chaque mouvement qui fait varier la valeur du stock (réception, sortie) | Groupement de valorisation et classe de valorisation |
WRX | Le compte d’attente réception / facture (GR/IR) | Contrepartie d’une réception valorisée sur commande, soldée à la facture | Le plan comptable seulement |
GBB | La contrepartie du stock pour les autres mouvements | Sorties, mises au rebut, écarts d’inventaire, découpés par modificateur | Modificateur (et selon les règles, la classe) |
PRD | Les écarts de prix | Quand un article valorisé à prix standard est acheté ou facturé à un autre prix | Selon les règles, le modificateur et la classe |
BSX : le compte de stock
Tu réceptionnes en stock, sur un poste de commande sans imputation, un article géré en valeur : la hausse du stock passe par BSX. Et quand ce stock sortira plus tard, c’est encore BSX qui sera crédité.
WRX : le compte d’attente entre réception et facture
À la réception, la facture n’est pas encore là. SAP poste donc la contrepartie sur un compte d’attente, le GR/IR clearing account. Pour un poste de commande, ce compte retombe à zéro dès que tout ce qui a été livré a aussi été facturé.
GBB : la contrepartie des sorties et des autres mouvements
Sortie pour un centre de coûts, mise au rebut, écart d’inventaire : tout passe par GBB, et le modificateur envoie chaque cas sur son propre compte.
PRD : les écarts de prix
PRD n’apparaît que pour un article en prix standard (price control S). Si le prix de commande ou de facture s’écarte du prix standard, le stock reste valorisé au standard et la différence part sur PRD. Pour un article en prix moyen pondéré (price control V), un écart de facture vient ajuster la valeur du stock tant que le stock couvre la quantité, et ne passe pas par PRD.
D’autres clés existent (KDM pour les écarts de change, UMB pour une réévaluation), tu les liras le jour venu.
Suivre trois mouvements jusqu’à leurs comptes
Place-toi chez Glass+, le verrier fictif de nos formations, dans l’usine de Valencia (société 1030, usine 1230). L’article GP-SILICE, de la silice, est géré en prix standard à 150 € la tonne. Les numéros de comptes ci-dessous sont inventés pour l’exemple ; dans ton système, ce sont ceux du plan comptable de ta société.
- 310000 : stock de matières premières
- 408100 : réceptions en attente de facture (GR/IR)
- 601000 : consommation de matières
- 609900 : écarts de prix sur achats
| Mouvement | Transaction keys | Débit | Crédit |
|---|---|---|---|
| 1. Réception de 20 t sur commande à 150 €/t (mouvement 101) | BSX, WRX | 310000 Stock : 3 000 € | 408100 GR/IR : 3 000 € |
| 2. Sortie de 5 t pour un centre de coûts (mouvement 201) | GBB (modificateur VBR), BSX | 601000 Consommation : 750 € | 310000 Stock : 750 € |
| 3. Facture fournisseur : 20 t à 155 €/t, soit 3 100 € | WRX, PRD | 408100 GR/IR : 3 000 € 609900 Écart de prix : 100 € | Compte du fournisseur : 3 100 € |
Cas 1. Le prix de commande égale le prix standard : le stock est débité au standard, le compte d’attente est crédité du même montant. Si la commande avait été passée à 152 €, l’écart serait apparu dès la réception, sur PRD, puisque le stock doit rester au standard.
Cas 2. Le stock sort, donc BSX est crédité. La contrepartie passe par GBB, et le modificateur VBR l’envoie sur le compte de consommation. La sortie pour un ordre de fabrication (mouvement 261) suit la même logique de contrepartie ; SAP permet de lui donner d’autres comptes, justement pour distinguer en comptabilité et en contrôle de gestion ce qui relève de la production, du rebut ou de l’inventaire.
Cas 3. La facture solde les 3 000 € attendus sur le compte d’attente. Les 100 € de plus ne peuvent pas aller au stock, valorisé au standard : ils partent sur PRD.
Simuler avant de deviner : la simulation de la détermination
Avant de conclure qu’un compte manque, simule. Le bouton de simulation se trouve dans l’activité Configure Automatic Postings. Il est précieux pour les mouvements de stock : dans MIGO, rien ne te montre l’écriture avant de valider, alors que la saisie d’une facture fournisseur, elle, sait simuler la pièce.
-
1Ouvre l’activité Configure Automatic Postings
Puis lance la simulation.
-
2Choisis ton mode de saisie
Par numéro d’article ou par classe de valorisation.
-
3Choisis le domaine
Une opération de gestion des stocks (un type de mouvement) ou de vérification des factures.
-
4Saisis la division et l’article (ou la classe)
Puis exécute.
-
5Lis le résultat
Pour chaque transaction key de la value string, SAP affiche le compte trouvé et tous les critères utilisés. Une mention « e » entourée de tirets signale une règle non active pour cette clé.
Bonus : la simulation te signale aussi un compte renseigné dans OBYC mais qui n’existe pas dans le plan comptable.
« Détermination des comptes impossible » : lire l’erreur et trouver le trou
Le message que tout le monde cherche commence par « Account determination for entry … not possible ». Il bloque la saisie : SAP a construit une combinaison de critères et n’a trouvé aucun compte en face. Le bon réflexe : relever tout ce que le message affiche, puis rejouer la même combinaison dans la simulation.
Ce message porte le numéro M8147. SAP lui consacre une page d’aide qui détaille les réglages à contrôler : la page de support SAP sur l’erreur M8147 (en anglais).
| Ce que tu constates | Maillon probablement manquant | Qui corrige |
|---|---|---|
| La simulation ne trouve aucun compte pour la clé citée | La combinaison n’a jamais été renseignée dans OBYC | Le consultant MM, avec les comptes fournis par la comptabilité |
| Ça marche pour un article, pas pour un autre du même type | Classe de valorisation différente ou absente dans la vue Accounting 1 | Le key user données de base vérifie, le consultant tranche la classe attendue |
| Ça marche dans une usine, pas dans la nouvelle | Nouveau groupement de valorisation sans comptes associés | Le consultant MM |
| La simulation signale un compte inexistant | Compte absent du plan comptable | La comptabilité (FI) |
Corriger OBYC revient au consultant. Toi, tu transformes « MIGO plante » en « la clé BSX n’a pas de compte pour cette classe de valorisation dans l’usine 1230 ».
Ce qu’OBYC ne décide pas
OBYC choisit un compte. Il ne fixe pas le prix de l’article : c’est la valorisation (prix standard ou moyen pondéré, et le cas échéant la valorisation séparée) qui donne le montant. Il ne décide pas non plus des comptes de la facturation client : côté SD, c’est une autre mécanique. Et il ne solde pas le compte d’attente réception / facture : quand un écart subsiste entre quantités livrées et facturées, ce compte se régularise par un traitement dédié (MR11), pas en retouchant OBYC.
Expliquer la détermination de compte en entretien
La question tombe souvent sous cette forme : « Que se passe-t-il en comptabilité quand tu fais un 101 ? »
« Le 101 crée un document article et, si l’article est valorisé, un document comptable. Le type de mouvement pointe vers une value string qui contient les transaction keys BSX et WRX. SAP combine ces clés avec le plan comptable de la société, le groupement de valorisation et la classe de valorisation de l’article pour trouver les comptes dans OBYC : stock au débit, compte d’attente GR/IR au crédit. »
Ajoute le cas d’un article en prix standard acheté à un autre prix (PRD) et tu montres que tu as compris la mécanique. D’autres sujets du même genre t’attendent dans les questions d’entretien consultant SAP.
Questions fréquentes
À quoi sert OBYC dans SAP ?
OBYC affiche et gère la table de détermination automatique des comptes pour les écritures issues de MM. Pour chaque transaction key (BSX, WRX, GBB, PRD…), elle indique quel compte général mouvementer selon le plan comptable, la classe de valorisation et les éventuels affinages. C’est ce qui permet à une réception ou une sortie de stock de générer une pièce comptable sans saisie de compte.
Comment SAP choisit-il le compte lors d’une entrée de marchandise ?
Il combine trois critères : le plan comptable de la société (déduit de la division), la classe de valorisation de l’article, et les transaction keys déclenchées par le type de mouvement, ici BSX pour le stock et WRX pour le compte d’attente.
Quelle différence entre BSX, WRX et GBB ?
BSX mouvemente le compte de stock. WRX mouvemente le compte d’attente entre réception et facture, contrepartie d’une réception sur commande. GBB est la contrepartie du stock pour les autres mouvements (sorties, rebuts, écarts d’inventaire), découpée par modificateur.
Que faire face à l’erreur « Account determination for entry … not possible » ?
Relève les valeurs affichées par le message, puis rejoue la même combinaison dans la simulation de Configure Automatic Postings. Elle te dit quelle clé n’a pas de compte et avec quels critères. Transmets ce constat précis au consultant MM plutôt qu’une simple capture d’écran de l’erreur.
La classe de valorisation, c’est quoi ?
C’est une clé de la fiche article, vue Accounting 1, qui regroupe les articles devant aller sur les mêmes comptes. C’est elle qui permet, par exemple, d’envoyer matières premières et marchandises sur deux comptes de stock différents. Les classes autorisées dépendent du type d’article.
En résumé
La détermination de compte SAP tient en une phrase : un mouvement déclenche des transaction keys, l’article apporte sa classe de valorisation, la société apporte son plan comptable, et OBYC fait la correspondance avec le compte général. Savoir remonter cette chaîne, c’est pouvoir expliquer n’importe quelle écriture de stock, et diagnostiquer une erreur au lieu de la transférer.
Prochaine étape concrète : dans ton système de test, prends un article que tu connais, ouvre la simulation et regarde quels comptes SAP trouverait pour un 101 puis pour un 201. Si tu vises une mission de consultant, ce type de réflexe se travaille pas à pas dans une formation consultant SAP.