postBasket
Le service postBasket, associé à la plateforme Catalogue « IO »,
envoie un panier de pièces à une application Partenaire.
Note : l’accès est direct, il n’y a pas de gestion de session.
Par exemple, envoi du message suivant, en méthode POST
<xat2 xmlns="http://xat2.etai.fr" version="2.0"> <session-context> <!-- Déclaration obligatoire du quadruplet d'identifiants XAT2 --> <application-id>{identifiant de l'application}</application-id> <dms-login>{identifiant de l’application Partenaire dans le garage}</dms-login> <user-shared-id>{identifiant de l’utilisateur}</user-shared-id> <garage-shared-id>{identifiant du garage}</garage-shared-id> </session-context> <shuttle> <transport> <partner> <!-- Déclaration du nom de l'application qui émet la requête --> <name>{Catalogue E-T-A-I}</name> <editor dictionary="ETAI:editor" ref="etai" /> <version-code>{applicationVersion}</version-code> </partner> <action-list> <!-- Déclaration obligatoire du verbe --> <action> <verb>postBasket</verb> </action> </action-list> </transport> <!-- Déclaration obligatoire du garage (nom et adresse) --> <person-list> <person> <breakdown-list> <classification dictionary="ETAI:person" ref="repairer"/> </breakdown-list> <name>{garageName}</name> <!-- Adresse du garage --> <place> <address number="1">{1ère ligne d'adresse}</address> <address number="2">{2ème ligne d'adresse}</address> <zip-code>{Code Postal}</zip-code> <city>{Ville}</city> <country> <classification dictionary="ETAI:country" ref="{countryRef}">{countryLabel}</classification> </country> </place> <!-- Moyens de contact du client --> <contact-list> <contact> <contact-category dictionary="ETAI:contact" ref="{contactRef}" /> <contact-value>{contactValue}</contact-value> <!-- Valeurs possibles de {contactRef} : phone, mobile, fax, email --> </contact> </contact-list> </person> </person-list> <!-- Description du véhicule : toutes ces données sont optionnelles, mais peuvent être utiles au distributeur, pour proposition de pièce(s) équivalente(s) --> <vehicle-list> <vehicle> <!-- Type du véhicule --> <breakdown-list> <classification dictionary="ETAI:vehicleType" ref="car" /> </breakdown-list> <!-- Libellés de la variante --> <label> <long-label>{longLabel}</long-label> <short-label>{shortLabel}</short-label> </label> <identification-list> <!-- Identification de la Marque --> <identification> <breakdown-list> <classification dictionary="ETAI:vehicle" ref="make" /> </breakdown-list> <label> <short-label>{makeLabel}</short-label> </label> <classification-list> <!-- Identifiant technique de la marque dans la base véhicule E-T-A-I --> <classification dictionary="ETAI:identifier" ref="makeId" source="etai">{makeId}</classification> </classification-list> </identification> <!-- Identification du Modèle --> <identification> <breakdown-list> <classification dictionary="ETAI:vehicle" ref="model" /> </breakdown-list> <label> <short-label>{modelLabel}</short-label> </label> <classification-list> <!-- Identifiant technique du modèle dans la base véhicule E-T-A-I --> <classification dictionary="ETAI:identifier" ref="modelId" source="etai">{modelId}</classification> </classification-list> </identification> <!-- Identification de la Variante --> <identification> <breakdown-list> <classification dictionary="ETAI:vehicle" ref="variation" /> </breakdown-list> <label> <short-label>{variationLabel}</short-label> </label> <classification-list> <!-- Identifiant technique de la variante dans la base véhicule E-T-A-I --> <classification dictionary="ETAI:identifier" ref="variationId" source="etai">{variationId}</classification> </classification-list> </identification> </identification-list> <!-- Identifiants administratifs du véhicule. Valeurs possibles pour {refType} : registration (immatriculation), vvt (Type Mines ou TVV), CNIT, VIN, engineType (type moteur) --> <alternative-ref-list> <classification dictionary="ETAI:vehicle" ref="{refType}">{refValue}</classification> </alternative-ref-list> <!-- Type de carburant, caractérisé via le dictionnaire ETAI. Pour les véhicules disposant de plusieurs sources d’énergie, il est possible de spécifier plusieurs éléments <fuel> --> <fuel-list> <fuel> <classification dictionary="ETAI:fuel" ref="gasoline">Essence </classification> </fuel> </fuel-list> </vehicle> </vehicle-list> <!-- Dans l'élément <part-list> (obligatoire) déclaration de 1 à N éléments <part>, décrivant des pièces / ingrédients / pneus, avec leurs quantités commandées --> <part-list> <!-- Exemple : pièce 1 commandée en 6 exemplaires --> <part> <breakdown-list> <!-- Définition du type de pièce via le dictionnaire "ETAI:breakdown" : part (pièce) / ingredient (ingrédient) / tire (pneu) --> <classification dictionary="ETAI:breakdown" ref="part" /> <!-- Dans le cas du type "part", définition du type d'élément via le dictionnaire "ETAI:partIdentification" (OE / AM / PRE / GU / IU) --> <classification dictionary="ETAI:partIdentification" ref="elementAM" /> </breakdown-list> <label> <short-label>Bougie de préchauffage</short-label> </label> <reference-list> <!-- Référence, éventuellement selon plusieurs sources --> <classification ref="Y-1005J" source="catalog" /> <classification ref="Y1005J" source="clean" /> </reference-list> <!-- Fournisseur de la pièce --> <supplier> <!-- Abréviation fournisseur, SI l'élément de la pièce est du type "elementAM" --> <abbreviation>NGK</abbreviation> <!-- Libellé complet du fournisseur --> <label> <long-label>NGK (Num STOCK)</long-label> </label> <classification-list> <!-- Abréviation du fournisseur selon l'un des dictionnaires "ETAI:supplier" (pièces AM), "ETAI:make" (pièces Constructeur) ou "ETAI:manufacturer" (pneus) --> <classification dictionary="ETAI:supplier" ref="NGK" /> <!-- Identifiant technique du fournisseur dans la base E-T-A-I --> <classification ref="2425" source="etai" /> </classification-list> </supplier> <!-- Données optionnelles : les codes famille et sous-famille de la pièce --> <classification-list> <classification dictionary="ETAI:part" ref="family">{familyCodeValue}</classification> <classification dictionary="ETAI:part" ref="subfamily">{subfamilyCodeValue}</classification> </classification-list> <!-- Quantité commandée pour la pièce --> <quantity value-type="amount"> <amount>6</amount> </quantity> </part> <!-- Exemple : pièce 2 commandée en 2 exemplaires --> <part> <breakdown-list> <classification dictionary="ETAI:breakdown" ref="part" /> <classification dictionary="ETAI:partIdentification" ref="elementAM" /> </breakdown-list> <label> <short-label>Filtre à huile</short-label> </label> <reference-list> <classification ref="L367" source="catalog" /> <classification ref="L367" source="clean" /> </reference-list> <supplier> <abbreviation>PUR</abbreviation> <label> <long-label>PURFLUX</long-label> </label> <classification-list> <classification dictionary="ETAI:supplier" ref="PUR" /> <classification ref="1114" source="etai" /> </classification-list> </supplier> <quantity value-type="amount"> <amount>2</amount> </quantity> </part> </part-list> <!-- Transmission optionnelle d'un commentaire --> <comment-list> <comment>{Commentaire utilisateur pour le destinataire de la commande}</comment> </comment-list> </shuttle> </xat2>
La réponse en retour est directe, elle pourrait être la suivante :
<xat2 xmlns="http://xat2.etai.fr" version="2.0"> <message-list> <!-- Accusé de réception de la commande --> <message> <message-category>ack</message-category> <technical-description>postBasket processing complete</technical-description> <classification-list> <classification dictionary="Xat2:message" ref="complete" /> </classification-list> </message> </message-list> <shuttle> <transport> <!-- Numéro du bon de livraison --> <admin-list> <classification dictionary="ETAI:admin" ref="deliveryNumber">003 835280</classification> </admin-list> <!-- Statut du panier (complete / partial / rejected) --> <message-list> <message> <message-category>information</message-category> <classification-list> <classification dictionary="ETAI:status" ref="partial" /> </classification-list> </message> </message-list> </transport> <!-- Paramètres du chiffrage --> <default-shuttle-settings> <currency dictionary="ETAI:unit" ref="euro" /> </default-shuttle-settings> <settings> <!-- Taux de TVA --> <VAT-list> <VAT-rate internal-id="ID1"> <value> <amount>20.0</amount> </value> </VAT-rate> </VAT-list> <!-- Remise(s) du Distributeur --> <discount-list> <!-- Remise par défaut pour les pièces et les ingrédients (ref="part") --> <discount internal-id="ID2"> <breakdown-list> <classification dictionary="ETAI:applicability" ref="part" /> </breakdown-list> <value value-type="percent"> <amount>45</amount> </value> </discount> <!-- Remise sur le total de la commande (ref="total") --> <discount internal-id="ID3"> <breakdown-list> <classification dictionary="ETAI:applicability" ref="total" /> </breakdown-list> <value value-type="percent"> <amount>10</amount> </value> </discount> </discount-list> </settings> <!-- Détails du panier --> <part-list> <!-- Montant total du panier --> <price-list> <price VAT-internal-id="ID1" discount-internal-id="ID3"> <breakdown-list> <classification dictionary="ETAI:breakdown" ref="total" /> </breakdown-list> <value-list> <!-- Prix total HT avec remise ID3 --> <value value-type="exclTaxes"> <amount>35.71</amount> <include-deduction> <classification dictionary="ETAI:deductionType" ref="discount" /> </include-deduction> </value> <!-- Prix total TTC avec remise ID3 --> <value value-type="inclTaxes"> <amount>42.85</amount> </value> </value-list> </price> </price-list> <!-- Détails pour la pièce 1 (6 exemplaires livrés) --> <part> <breakdown-list> <classification dictionary="ETAI:Breakdown" ref="part" /> <classification dictionary="ETAI:partIdentification" ref="elementAM" /> </breakdown-list> <reference-list> <classification ref="Y-1005J" source="catalog" /> <classification ref="Y1005J" source="clean" /> </reference-list> <supplier> <abbreviation>NGK</abbreviation> <label> <long-label>NGK (Num STOCK</long-label> </label> <classification-list> <classification dictionary="ETAI:supplier" ref="NGK" /> <classification ref="2425" source="etai" /> </classification-list> </supplier> <!-- Quantité de pièces qui seront livrées --> <quantity value-type="amount"> <amount>6</amount> </quantity> <price-list> <!-- Prix unitaire de la pièce (ref="unit") --> <price> <breakdown-list> <classification dictionary="ETAI:unit" ref="unit" /> </breakdown-list> <value-list> <!-- Prix HT --> <value value-type="exclTaxes"> <amount>10.20</amount> </value> </value-list> </price> <!-- Prix total des N pièce(s) livrées (ref="packet"), lié à la TVA "ID1" et la remise "ID2" --> <price VAT-internal-id="ID1" discount-internal-id="ID2"> <breakdown-list> <classification dictionary="ETAI:unit" ref="packet" /> </breakdown-list> <value-list> <!-- Prix HT avec remise --> <value value-type="exclTaxes"> <amount>33.66</amount> <include-deduction> <classification dictionary="ETAI:deductionType" ref="discount" /> </include-deduction> </value> <!-- Prix TTC avec remise --> <value value-type="inclTaxes"> <amount>40.39</amount> <include-deduction> <classification dictionary="ETAI:deductionType" ref="discount" /> </include-deduction> </value> </value-list> </price> </price-list> <!-- Statut de la commande de la pièce 1 : la demande a été totalement satisfaite --> <status> <classification dictionary="ETAI:status" ref="complete" /> </status> </part> <!-- Détails pour la pièce 2 (un seul exemplaire livré) --> <part> <breakdown-list> <classification dictionary="ETAI:Breakdown" ref="part" /> <classification dictionary="ETAI:partIdentification" ref="elementAM" /> </breakdown-list> <reference-list> <classification ref="L367" source="catalog" /> <classification ref="L367" source="clean" /> </reference-list> <supplier> <abbreviation>PUR</abbreviation> <label> <long-label>PURFLUX</long-label> </label> <classification-list> <classification dictionary="ETAI:supplier" ref="PUR" /> <classification ref="1114" source="etai" /> </classification-list> </supplier> <!-- Quantité de pièces qui seront livrées --> <quantity value-type="amount"> <amount>1</amount> </quantity> <price-list> <!-- Prix unitaire de la pièce (ref="unit") --> <price> <breakdown-list> <classification dictionary="ETAI:unit" ref="unit" /> </breakdown-list> <value-list> <!-- Prix HT --> <value value-type="exclTaxes"> <amount>10.94</amount> </value> </value-list> </price> <!-- Prix total des N pièce(s) livrées (ref="packet"), lié à la TVA "ID1" et la remise "ID2" --> <price VAT-internal-id="ID1" discount-internal-id="ID2"> <breakdown-list> <classification dictionary="ETAI:unit" ref="packet" /> </breakdown-list> <value-list> <!-- Prix HT avec remise --> <value value-type="exclTaxes"> <amount>6.02</amount> <include-deduction> <classification dictionary="ETAI:deductionType" ref="discount" /> </include-deduction> </value> <!-- Prix TTC avec remise --> <value value-type="inclTaxes"> <amount>7.22</amount> <include-deduction> <classification dictionary="ETAI:deductionType" ref="discount" /> </include-deduction> </value> </value-list> </price> </price-list> <!-- Statut de la commande de la pièce 2 : la demande a été en partie satisfaite --> <status> <classification dictionary="ETAI:status" ref="partial" /> </status> </part> </part-list> <!-- Transmission optionnelle d'un commentaire du Distributeur --> <comment-list> <comment>Votre commande du 24/01/2017 à bien été reçue et partiellement prise en compte. Numéro du bon de commande : 003 835280</comment> </comment-list> </shuttle> </xat2>