Les états / statuts de commande
Comment ça se passe au niveau des changements de statuts de commande une fois la synchronisation avec OpenSi en place ?
Chaque commande client passée sur la boutique va évoluer tout au long de son traitement jusqu’à ce qu’elle soit expédiée à l’acheteur. Chacune de ses étapes correspond à un statut (ou un état) de commande différent.
Cela passe en général par le statut « En attente », « En cours de traitement » et « Expédié » (bien qu’une commande puisse en avoir plus ou moins et/ou des statuts de commande dont le nom est différent).
Nous allons voir dans cet article de quelle manière sont traités les différents statuts de commande et quelles sont les informations qu’il est possible d’échanger entre OpenSi et votre boutique.
Cet article aborde les sujets suivants :
Les états/statuts de commande
La synchronisation des états de commande s’effectue d’OpenSi vers la boutique
A chaque étape du traitement de votre commande, un nouveau statut est édité afin de permettre à vos clients de connaître l’état de sa commande. Cela lui permet de suivre l’évolution de son traitement avant expédition.
Vous n’avez rien d’autre à faire que de traiter vos commandes dans OpenSi, les états/statuts se mettant à jour automatiquement sur la boutique par la suite. La plupart du temps, un e-mail indique également au client de la situation à un instant T.
La synchronisation des statuts de commande sur la boutique est effectuée via un webservice qui vient récupérer toutes les informations dans OpenSi avant de les envoyer à la boutique.
Important !
La génération des états de commande s’effectue dans OpenSi (sens de synchronisation : OpenSi › Boutique).
Attention toutefois, les changements de statuts nécessitent un paramétrage afin que cela fonctionne.
En effet, pour que l’état d’une commande puisse être mis à jour sur la boutique, il faut au préalable sélectionner les correspondances dans la configuration du module OpenSi Connect.
Pour cela, il faut vous rendre dans le backoffice de votre boutique, dans la configuration du module (bloc « statuts de commande ») et sélectionner les états de la boutique par rapport à ceux d’OpenSi :
A noter qu’il est possible d’activer/désactiver chacun des statuts de commande si vous ne souhaitez pas les utiliser.
La synchronisation sur la boutique
La synchronisation des statuts de commande est effectuée en standard toutes les 10 minutes (cette fréquence peut néanmoins être modifiée par nos soins selon vos besoins).
Liste des informations synchronisables sur la boutique
Voici la liste exhaustive des champs que vous pouvez synchroniser sur la boutique (sens de synchronisation OpenSi › Boutique). Tous les champs sont obligatoires.
OrderNumber * | Numéro de commande OpenSi (Chaîne de 11 caractères max.) |
WebOrderNumber * | Numéro de commande sur la boutique (Chaîne de 20 caractères max.) |
PayState * | Statut de paiement (Chaîne de 1 caractères max. – N => non payée, P => partiellement payée, T => totalement payée) |
Preparation * | Commande prête à être expédiée (au moins 1 bon de livraison validé – Booléen) |
LogisticState * | Statut logistique (Chaîne de 1 caractères max. – T => non expédiée, E => expédiée) |
OrderState * | Statut de la commande (Chaîne de 1 caractères max. – N => non validée, T => validée, A => annulée, C => terminée) |
DeliveryNumber * | Nombre de bons de livraison validés (Entier) |
PickUpInStore * | Retrait en magasin (Booléen) |
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:setStatesRequest> <open:Website_Code>xxx</open:Website_Code> <!--Zero or more repetitions:--> <open:State> <xsd:OrderNumber>CC20050001</xsd:OrderNumber> <xsd:WebOrderNumber>1</xsd:WebOrderNumber> <xsd:PayState>T</xsd:PayState> <xsd:Preparation>false</xsd:Preparation> <xsd:LogisticState>E</xsd:LogisticState> <xsd:OrderState>C</xsd:OrderState> <xsd:DeliveryNumber>1</xsd:DeliveryNumber> <xsd:PickUpInStore>false</xsd:PickUpInStore> </open:State> </open:setStatesRequest> </soapenv:Body> </soapenv:Envelope>
L’exemple ci-dessus indique à la boutique que la commande 1 (réf. CC20050001 dans OpenSi) est expédiée et facturée.