La gestion des expéditions
Comment gérer les expéditions une fois la connexion à OpenSi effectuée ?
Attention, ce flux webservice est un flux spécifique à Magento, il n’existe pas sous PrestaShop !
La gestion des expéditions est une étape clé pour la satisfaction client. Celui-ci vient de passer commande et attend souvent avec impatience que son colis arrive. Il faut donc que cette étape soit la plus rapide possible mais également qu’il n’y ait pas d’erreurs (un article oublié, une quantité non respectée, etc…).
Il est donc important de pouvoir traiter rapidement celles-ci tout en restant attentif à leur contenu pour éviter toutes erreurs (taille, quantité, couleur, etc…).
Nous allons voir dans cet article de quelle manière vous devez gérer ces expéditions et quelles sont les informations disponibles au niveau des synchronisations entre OpenSi et votre boutique.
Cet article aborde les sujets suivants :
La gestion des expéditions
La synchronisation des expéditions s’effectue d’OpenSi vers la boutique.
De la même manière que vous allez gérer vos commandes directement dans OpenSi une fois la liaison établie, il va s’en dire que vous faire de même avec les expéditions.
Aussi, vous allez effectuer vos expéditions directement dans OpenSi qui sera le « maitre » de ces informations.
Les expéditions sont ensuite envoyées à la boutique via un webservice qui vient les chercher dans OpenSi avant de les ajouter / créer au niveau de chacune des commandes.
Points abordés :
La saisie des informations
Comme indiqué précédemment, une fois votre boutique connectée avec OpenSi, vous allez devoir gérer vos expéditions directement dans OpenSi et non plus sur votre boutique.
La synchronisation des expéditions s’effectue alors dans le sens « OpenSi › Boutique » où un webservice spécifique va récupérer ces données avant de les envoyer à votre boutique où celles-ci seront automatiquement mises à jour.
Important !
La mise à jour des expéditions s’effectue dans OpenSi (sens de synchronisation : OpenSi › Boutique).
L’enregistrement et l’envoi des informations logistiques à la boutique
Dès que vous créez une nouvelle expédition sur une commande dans OpenSi, celle-ci est ensuite renvoyée à la boutique où elle sera ajoutée à la commande concernée lors de la synchronisation suivante.
Un appel webservice est effectué pour demander à OpenSi quelles expéditions ont été ajoutées entre la date de la dernière synchronisation et maintenant et celles-ci sont ensuite créées sur la boutique.
La synchronisation sur la boutique
La synchronisation des expéditions est effectuée en standard toutes les 10 minutes (cette fréquence peut néanmoins être modifiée par nos soins selon vos besoins).
Points abordés :
Liste des informations synchronisables liées à la commande
Voici la liste exhaustive des champs que vous pouvez synchroniser avec votre boutique (récupération des expéditions dans OpenSi).
Tous ces champs sont obligatoires.
WebOrderNumber * | Numéro de la commande (Chaîne de 11 caractères max.) |
OrderShipmentDeliveryNotes * | Détail de l’expédition (voir section suivante) |
Liste des informations synchronisées liées à l’expédition
Voici la liste exhaustive des champs que vous pouvez synchroniser sur la boutique pour chacune des expéditions (attention, les champs sont obligatoires).
DeliveryNoteReference * | Référence de l’expédition (Chaîne de 11 caractères max.) |
OrderShipmentDeliveryNotesDetail * | Détail des articles de l’expédition (voir section suivante) |
Liste des informations synchronisées liées aux articles de l’expédition
Reference * | Référence de l’article (Chaîne de 40 caractères max.) |
Quantity * | Quantité vendue (Nombre décimal de 14 chiffres au total dont 3 chiffres après la virgule) |
Exemple de flux XML
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:open="http://www.opensi.fr" xmlns:xsd="http://www.opensi.fr/xsd"> <soapenv:Header> <open:Header> <open:key>xxxxxxxxxxxxxxxxxxxxxxx</open:key> </open:Header> </soapenv:Header> <soapenv:Body> <open:setOrderShipmentsRequest> <open:Website_Code>xxx</open:Website_Code> <!--Zero or more repetitions:--> <open:OrderShipment> <xsd:WebOrderNumber>100000001</xsd:WebOrderNumber> <!--1 or more repetitions:--> <xsd:OrderShipmentDeliveryNotes> <xsd:DeliveryNoteReference>BL20050001</xsd:DeliveryNoteReference> <!--1 or more repetitions:--> <xsd:OrderShipmentDeliveryNotesDetail> <xsd:Reference>demo_1_ws</xsd:Reference> <xsd:Quantity>1</xsd:Quantity> </xsd:OrderShipmentDeliveryNotesDetail> <xsd:OrderShipmentDeliveryNotesDetail> <xsd:Reference>demo_2</xsd:Reference> <xsd:Quantity>1</xsd:Quantity> </xsd:OrderShipmentDeliveryNotesDetail> <xsd:OrderShipmentDeliveryNotesDetail> <xsd:Reference>demo_3_bl</xsd:Reference> <xsd:Quantity>2</xsd:Quantity> </xsd:OrderShipmentDeliveryNotesDetail> </xsd:OrderShipmentDeliveryNotes> </open:OrderShipment> <open:OrderShipment> <xsd:WebOrderNumber>100000002</xsd:WebOrderNumber> <!--1 or more repetitions:--> <xsd:OrderShipmentDeliveryNotes> <xsd:DeliveryNoteReference>BL20050002</xsd:DeliveryNoteReference> <!--1 or more repetitions:--> <xsd:OrderShipmentDeliveryNotesDetail> <xsd:Reference>demo_1_ws</xsd:Reference> <xsd:Quantity>10</xsd:Quantity> </xsd:OrderShipmentDeliveryNotesDetail> <xsd:OrderShipmentDeliveryNotesDetail> <xsd:Reference>demo_2</xsd:Reference> <xsd:Quantity>1</xsd:Quantity> </xsd:OrderShipmentDeliveryNotesDetail> </xsd:OrderShipmentDeliveryNotes> </open:OrderShipment> </open:setOrderShipmentsRequest> </soapenv:Body> </soapenv:Envelope>
Dans le flux XML ci-dessus, vous pouvez voir que :
- la commande possède 2 expéditions
- la première expédition (BL20050001) concerne 3 articles
- la seconde (BL20050002) concerne 2 articles