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.

Validateur RosettaNet PIP (RNIF 2.0)

Validez une enveloppe RosettaNet RNIF 2.0 (multipart/related, Preamble + ServiceHeader + ServiceContent) ou un ServiceContent XML brut. 50 PIPs reconnus, du PIP3A4 PurchaseOrderRequest au PIP7B5 ManufacturingWorkOrder.

Collez un message RNIF 2.0 multipart/related, ou un ServiceContent XML brut, pour le valider.

Comment ça marche

RosettaNet est le standard B2B global de la supply chain électronique / semi-conducteur, déployé par Intel, TSMC, Samsung, Sony, Cisco, Lenovo, Foxconn, ASML et la quasi-totalité de la chaîne high-tech. Le standard est aujourd'hui hébergé par GS1 US et continue de tourner en production sur des PIPs (Partner Interface Processes) de critique opérationnelle.

Le transport RNIF 2.0 (RosettaNet Implementation Framework) emballe chaque message dans un multipart/related, avec trois parties XML :

  • Preamble : GlobalAdministeringAuthorityCode, GlobalUsageCode (Test / Production), ProcessInstanceIdentifier et version.
  • ServiceHeader : pipCode, pipVersion, actionInfo, fromRole / toRole, fromPartner / toPartner avec authority (DUNS / GLN / EAN / UPC).
  • ServiceContent : le document métier lui-même, dont le nom de l'élément racine encode le PIP (Pip3A4PurchaseOrderRequest, Pip3B12ShipmentNotification…).

Pipeline du validateur :

  1. Auto-détection : enveloppe RNIF complète ou ServiceContent XML seul.
  2. Découpage multipart/related, identification des parties par Content-ID puis, en fallback, par nom de l'élément racine XML.
  3. Parsing XML par bloc, validation des champs obligatoires.
  4. Reconnaissance du pipCode dans le catalogue embarqué, lookup cluster, action et version.
  5. Diagnostics structurés (codes stables, sévérité error/warning/info).

Règles vérifiées

  • Enveloppe : Content-Type: multipart/related avec paramètre boundary obligatoire. Un type différent déclenche E_NOT_MULTIPART, l'absence de boundary déclenche E_NO_BOUNDARY.
  • Parties XML : Preamble, ServiceHeader et ServiceContent sont obligatoires. Leur absence déclenche respectivement E_NO_PREAMBLE, E_NO_SERVICE_HEADER et E_NO_SERVICE_CONTENT.
  • GlobalUsageCode : doit valoir Test ou Production. Toute autre valeur déclenche E_INVALID_USAGE_CODE.
  • GlobalAdministeringAuthorityCode : la valeur canonique est RosettaNet. Une autorité différente déclenche un avertissement W_UNEXPECTED_AUTHORITY.
  • Type de signal : Action, Signal, ReceiptAcknowledgement ou ReceiptAcknowledgementException. Hors enveloppe RNIF classique, ces valeurs sont parsées depuis l'élément SignalKind.
  • pipCode : le code doit respecter le motif cluster (0-7) + segment (lettre) + serial (digits), e.g. 3A4, 3B12, 7B5. Un code bien formé mais absent du catalogue embarqué déclenche E_UNKNOWN_PIP ; un code reconnu déclenche l'info I_PIP_RECOGNIZED.
  • Authority partenaire : DUNS, GLN, EAN ou UPC. Une autorité inconnue déclenche W_UNKNOWN_AUTHORITY.
  • Pièces jointes : leur absence déclenche W_NO_ATTACHMENTS. Les pièces jointes sont identifiées par leur Content-ID et leur Content-Type.
  • Signature S/MIME : l'absence de partie application/pkcs7-signature déclenche W_MISSING_SIGNATURE. La signature elle-même n'est pas vérifiée cryptographiquement.

Clusters PIP

Les 200+ PIPs publiés par RosettaNet sont organisés en huit clusters. Le cluster donne immédiatement le domaine fonctionnel d'un pipCode :

Cluster Domaine
0 RosettaNet Support
1 Partner Product & Service Review
2 Product Information
3 Order Management
4 Inventory Management
5 Marketing Information Management
6 Service Support
7 Manufacturing

Catalogue PIP embarqué (53)

Liste exhaustive des PIPs reconnus par le validateur. Pour chaque PIP, le code, la version, le sens (Action / Signal) et la description bilingue extraite du PIP Directory GS1 US.

Cluster 0 — RosettaNet Support

Code Nom Version Sens Description
0A1 NotificationOfFailure V02.00 Signal Notification d'échec asynchrone d'un PIP en cours.
0C1 AuthorizeTradingPartner V01.00 Action Demande d'autorisation d'un partenaire commercial.

Cluster 1 — Partner Product & Service Review

Code Nom Version Sens Description
1A1 RequestAccountSetup V01.00 Action Création d'un compte partenaire chez le respondent.
1B1 ManagePartnerProfile V01.00 Action Maintenance du profil métier d'un partenaire.

Cluster 2 — Product Information

Code Nom Version Sens Description
2A1 DistributeNewProductInformation V02.02 Action Diffusion d'une fiche produit nouvellement référencée.
2A2 DistributeNewProductDesignInformation V01.00 Action Diffusion d'un nouveau design produit en ingénierie.
2A8 DistributeProductMasterData V01.00 Action Diffusion des données maîtres produit (master data).
2A9 QueryTechnicalInformation V01.00 Action Requête des informations techniques d'un composant.
2A12 DistributeProductMasterData V01.03 Action Diffusion enrichie des données maîtres produit.

Cluster 3 — Order Management

Code Nom Version Sens Description
3A1 RequestQuote V02.00 Action Demande de devis (RFQ) à un partenaire.
3A2 RequestPriceAndAvailability V02.01 Action Demande de prix et disponibilité produit.
3A3 RequestShoppingCartTransfer V01.00 Action Transfert d'un panier d'achat entre systèmes.
3A4 PurchaseOrderRequest V02.02 Action Émission d'une commande d'achat ferme (bon de commande).
3A5 QueryOrderStatus V01.02 Action Requête sur le statut d'une commande existante.
3A6 DistributeOrderStatus V02.02 Action Diffusion non sollicitée du statut d'une commande.
3A7 NotifyOfPurchaseOrderUpdate V02.02 Action Notification d'une mise à jour de commande à l'initiative du vendeur.
3A8 RequestPurchaseOrderChange V01.03 Action Demande de modification d'une commande déjà émise.
3A9 RequestPurchaseOrderCancellation V01.01 Action Demande d'annulation d'une commande.
3A10 NotifyOfQuote V01.00 Action Notification d'un devis (réponse à 3A1).
3A12 NotifyOfPurchaseOrderInformation V01.00 Action Notification d'informations relatives à une commande.
3A13 NotifyOfPurchaseOrderAcknowledgement V01.00 Action Acquittement métier d'une commande reçue.
3A14 DistributeOrderToCash V01.00 Action Diffusion order-to-cash multi-document.
3B2 NotifyOfAdvanceShipment V01.01 Action Notification d'expédition anticipée (ASN).
3B3 DistributeShipmentStatus V01.00 Action Diffusion du statut d'expédition.
3B11 NotifyOfShippingOrder V01.00 Action Notification d'un ordre d'expédition (warehouse).
3B12 ShipmentNotification V01.01 Action Notification d'expédition logistique post-départ.
3B13 ShipmentReceiptNotification V01.00 Action Notification de réception d'expédition côté acheteur.
3B14 DistributeShipmentDocumentation V01.00 Action Diffusion des documents logistiques (BOL, packing list…).
3B18 NotifyOfShippingDocumentation V01.00 Action Notification d'envoi de la documentation d'expédition.
3C1 ReturnProduct V01.00 Action Retour produit / RMA initiation.
3C3 NotifyOfInvoice V01.01 Action Notification d'une facture émise (push invoicing).
3C4 NotifyOfInvoiceReject V01.00 Action Notification de rejet d'une facture reçue.
3C6 NotifyOfRemittanceAdvice V01.00 Action Avis de paiement / notification de remittance.
3C7 NotifyOfSelfBillingInvoice V01.00 Action Notification d'une facture auto-générée (self-billing).
3D8 DistributeWorkInProcess V01.00 Action Diffusion du WIP — duplique 7B1 en cluster Order.

Cluster 4 — Inventory Management

Code Nom Version Sens Description
4A1 NotifyOfStrategicForecast V02.00 Action Notification de prévision stratégique long terme.
4A2 NotifyOfEmbeddedRelease V01.00 Action Notification de lancement de production embarqué.
4A3 NotifyOfThresholdRelease V01.00 Action Notification de release sur seuil de stock.
4A4 NotifyOfPlanningRelease V02.02 Action Notification de release de planification.
4A5 NotifyOfForecastReply V02.00 Action Réponse de capacité aux prévisions transmises.
4B2 NotifyOfShipmentReceipt V01.00 Action Notification interne de réception en entrepôt.
4B3 NotifyOfConsumption V01.00 Action Notification de consommation de stock (VMI).
4C1 DistributeInventoryReport V02.02 Action Diffusion d'un état de stock VMI.

Cluster 5 — Marketing Information Management

Code Nom Version Sens Description
5C1 DistributeProductList V01.00 Action Diffusion de la liste catalogue produits.
5C2 RequestDesignRegistration V01.00 Action Demande d'enregistrement de design (design-win).
5C4 DistributeRegistrationStatus V01.00 Action Diffusion du statut des enregistrements design.
5D1 RequestShipFromStockAndDebit V01.00 Action Ship-from-stock-and-debit (SFSD) — distribution semi-conducteurs.

Cluster 6 — Service Support

Code Nom Version Sens Description
6C1 QueryServiceEntitlement V01.00 Action Requête sur les droits d'un client à un service après-vente.
6C2 RequestWarrantyClaim V01.00 Action Demande de prise en charge sous garantie.

Cluster 7 — Manufacturing

Code Nom Version Sens Description
7B1 DistributeWorkInProcess V01.02 Action Diffusion du WIP (work-in-process) en production.
7B5 NotifyOfManufacturingWorkOrder V01.00 Action Notification d'un ordre de fabrication.
7B6 NotifyOfManufacturingWorkOrderReply V01.00 Action Réponse à une notification d'ordre de fabrication.
7C1 DistributeProductionForecast V01.00 Action Diffusion des prévisions de production usine.

Limites

  • Pas de validation XSD complète du ServiceContent : le validateur reconnaît la racine et l'action, mais ne valide pas le détail des champs métier propres à chaque PIP. Pour PIP3A4 par exemple, la complétude de PurchaseOrderLineItem n'est pas vérifiée.
  • Pas de vérification cryptographique de la signature S/MIME. Le validateur indique sa présence et son type, mais ne calcule pas le digest.
  • Pas de réémission de l'acquittement ReceiptAcknowledgement attendu par le partenaire — il s'agit d'un outil d'inspection passif.
  • Pas de prise en charge de RNIF 1.1 ni des extensions ebMS-over-RNIF hybrides.

Confidentialité

Documentation associée

Dernière mise à jour: 19 mai 2026