ediverse Explorer la plateforme

À la une PEPPOL BIS Billing 3.0 L’obligation européenne d’e-invoicing arrive : France sept 2026, Belgique janv 2026, Allemagne 2025.

SLSRPT — Sales Data Report Message (D.96A)

SLSRPT transmet des données de vente liées à des produits ou services : localisation, période, identification produit, prix, montant, quantité, segment de marché, parties prenantes — pour usage en production, planification, marketing ou analyse statistique.

Objet du message

Selon la définition fonctionnelle UN/CEFACT, SLSRPT est « a message to enable the transmission of sales data related to products or services ». L'intention est de fournir, pour un ou plusieurs lieux et sur une période donnée : lieu de vente, période, identifiant produit, prix de vente, quantité, valeur des ventes, identifications complémentaires (flag promotionnel, groupe / famille produit), turnover périodique, canal de vente, segment de marché, parties prenantes. Le message est généralement transmis du vendeur (distributeur, centrale) vers son fournisseur ou un tiers — typiquement un institut de marketing à des fins d'analyse statistique.

Structure segmentaire

SLSRPT D.96A se structure en deux sections : un Header qui pose le contexte (période, parties, devise) et un Detail centré sur le groupe SG5 qui détaille les ventes par lieu, jusqu'à 200 000 répétitions.

Au niveau du header, les segments mandataires sont UNH M , BGM M , et DTM M .

Puis les groupes de tête :

  • SG1 (M, ×5) — NAD name and address des parties (vendeur, destinataire, par lieu de vente le cas échéant).
  • SG2 (C, ×5) — CTA + COM contacts associés aux parties.
  • SG3 (C, ×5) — RFF + DTM références (contrat, accord-cadre).
  • SG4 (C, ×5) — CUX + DTM devises et date de référence.

Detail (lieu et lignes produit)

Le Detail est intégralement dans SG5, un loop construit autour de LOC M DTM , avec deux sous-groupes :

  • SG6 (C, ×99) — RFF + DTM références spécifiques au lieu.
  • SG7 (C, ×200 000) — un loop produit construit autour de LIN M avec PIA , IMD , PAC , RFF , DOC , ALI , MOA , PRI , et GIN .
    À l'intérieur de chaque ligne, un loop SG8 (C, ×999) regroupe QTY + MKS + NAD pour décliner les quantités par canal de vente / segment / partie.

Le message se clôt par UNT M .

Obligatoire / conditionnel

Strictement mandataires dans tout SLSRPT D.96A :

  • UNH, UNT — encadrent le message.
  • BGM — type et numéro du rapport (qualifier 74 = sales report).
  • DTM — au moins une date dans le header (période couverte).
  • SG1 NAD — au moins une partie identifiée (le fournisseur).
  • SG5 LOC — au moins un lieu de vente dans le Detail.

Les segments SG7 (lignes produit) sont eux-mêmes conditionnels au niveau du standard, mais dans la pratique tout rapport sans LIN est inutile : les conventions sectorielles (GS1 EANCOM SLSRPT, en particulier) imposent au moins un LIN avec un GTIN, une QTY (qualifier 47 = sales quantity) et souvent une PRI.

Exemple réel

Rapport hebdomadaire de ventes envoyé par un distributeur (point de vente identifié par GLN) à un fournisseur d'instruments de musique, pour la semaine S19 2026 :

edifact slsrpt-d96a-example.edi
UNB+UNOC:3+5410000000456:14+5410000000123:14+260513:0800+CTRL000077'
UNH+1+SLSRPT:D:96A:UN'
BGM+74+SLS-2026-W19+9'
DTM+90:20260504:102'
DTM+91:20260510:102'
NAD+SU+5410000000456::9'
RFF+ACE:CONTRACT-2025-Q4'
DTM+171:20251201:102'
CUX+2:EUR:9'
LOC+162+5410000000999::9'
DTM+90:20260504:102'
DTM+91:20260510:102'
LIN+1++3520000001234:EN'
IMD+F++:::Acoustic guitar, mahogany finish'
PIA+1+ACME-AG-100:SA'
ALI+++88'
PRI+AAA:849.00'
QTY+47:18'
QTY+61:1530'
MOA+86:15282.00'
LIN+2++3520000005678:EN'
IMD+F++:::Capo, spring loaded'
PRI+AAA:19.50'
QTY+47:142'
QTY+61:84'
MOA+86:2769.00'
UNT+25+1'
UNZ+1+CTRL000077'
  • BGM+74+SLS-2026-W19+9 — code 74 (sales report), numéro SLS-2026-W19, statut 9 (original).
  • DTM+90 — début de période. DTM+91 — fin de période.
  • NAD+SU — Supplier (fournisseur). RFF+ACE — référence contrat (ACE = Additional Customer Equivalent reference).
  • CUX+2:EUR:9 — devise de référence pour les montants (qualifier 2 = reference currency, 9 = ordering currency).
  • LOC+162 — Lieu de vente (qualifier 162 = place of sale), identifié par GLN.
  • Pour chaque LIN  : QTY+47 = sales quantity (vendu sur la période), QTY+61 = on-hand quantity (stock).
  • MOA+86 — Message total amount (valeur de vente sur la période, hors taxes).
  • UNT+25+1 — 25 segments dans le message.

Erreurs fréquentes

  • SG5 sans LOC — la section Detail doit toujours s'ouvrir par un LOC qualifier 162. Sauter directement à LIN sans contexte LOC est rejeté.
  • QTY qualifier confondu — 47 = sales quantity, 61 = on-hand, 25 = ordered quantity. Mélanger ces qualifiers altère silencieusement les analyses statistiques.
  • Période DTM mal qualifiée — 90/91 = period start/end. Utiliser 137 (document date) à la place fait perdre la sémantique de période.
  • GTIN manquant en LIN[3] — la plupart des subsets exigent un GTIN-13 ou GTIN-14 en composite C212. Une référence interne sans GTIN est généralement rejetée par les institutes d'études.
  • NAD répété par lieu hors SG8 — pour différencier les parties par lieu, NAD doit être dans SG8 (canal de vente), pas au header.

Messages liés

SLSRPT s'inscrit typiquement dans une boucle Vendor Managed Inventory :

  • SLSFCT — Sales Forecast (prévisions de vente, complément à SLSRPT pour le réappro).
  • INVRPT D.96A — Inventory Report (état de stock à un instant T).
  • ORDERS D.96A — Commande déclenchée par le fournisseur en VMI.
  • DESADV D.96A — Avis d'expédition consécutif.
  • CONTRL D.96A — acquittement syntaxique automatique.

Équivalent JSON

Projection JSON pour intégration dans une plateforme analytics ou un data warehouse :

json slsrpt-d96a-equivalent.json
{
  "interchange": {
    "controlRef": "CTRL000077",
    "from": { "id": "5410000000456", "qualifier": "14" },
    "to": { "id": "5410000000123", "qualifier": "14" },
    "datetime": "2026-05-13T08:00:00Z",
    "syntax": { "id": "UNOC", "version": "3" }
  },
  "message": {
    "ref": "1",
    "type": "SLSRPT",
    "version": { "syntax": "D", "release": "96A", "agency": "UN" }
  },
  "salesReport": {
    "number": "SLS-2026-W19",
    "function": "74",
    "status": "9",
    "period": { "from": "2026-05-04", "to": "2026-05-10" },
    "parties": {
      "supplier": { "gln": "5410000000456" }
    },
    "contract": { "qualifier": "ACE", "ref": "CONTRACT-2025-Q4", "date": "2025-12-01" },
    "currency": "EUR",
    "locations": [
      {
        "gln": "5410000000999",
        "period": { "from": "2026-05-04", "to": "2026-05-10" },
        "lines": [
          {
            "ref": 1, "gtin": "3520000001234",
            "description": "Acoustic guitar, mahogany finish",
            "supplierItem": "ACME-AG-100",
            "price": { "net": 849.00 },
            "quantities": { "sold": 18, "onHand": 1530 },
            "amount": { "saleValue": 15282.00 }
          },
          {
            "ref": 2, "gtin": "3520000005678",
            "description": "Capo, spring loaded",
            "price": { "net": 19.50 },
            "quantities": { "sold": 142, "onHand": 84 },
            "amount": { "saleValue": 2769.00 }
          }
        ]
      }
    ]
  }
}