Ce guide s'applique à la version 2.1 de Google Content API for Shopping et ne fournit pas d'informations sur les appels obsolètes de la version 2.
Ce guide traite des processus associés à Orders API suivants :
- Cycle de vie d'une commande
- Processus de retour d'une commande
- Procédure de remboursement d'une commande sans retour
- Processus de réservation
- Processus en cas de commande non livrée
Présentation
Une commande (order
) contient des lignes faisant référence à un ou plusieurs produits. Elle reprend les informations suivantes disponibles au moment de l'achat :
- Mode de livraison sélectionné par le client
- Adresse de livraison du client
- Préférences du client concernant les e-mails
Chaque commande possède un état qui résume son degré d'avancement. Cet état est généralement issu des lignes de la commande.
Par exemple, si tous les articles ont été expédiés, l'état de la commande est shipped
. Si tous les articles ont été retournés et qu'un remboursement est accordé, l'état est returned
. Pour obtenir la description complète d'une commande, consultez la page sur la ressource Orders.
Commandes
Les commandes sont créées par les clients et traitées par les marchands à l'aide de Google Content API for Shopping. Elles sont ensuite examinées, confirmées, traitées et expédiées.
Récapitulatif du processus de commande
Voici les étapes du processus de commande :
- Le client passe une commande
- Un client passe une nouvelle commande sur Google Shopping.
- Google vérifie la commande et les informations de paiement
- Google vérifie la commande et les informations de paiement. Une fois la commande validée pour le paiement et après un délai permettant au client de changer d'avis, l'état de la commande passe à
pendingShipment
. Notez que vous ne devez pas lancer le processus de traitement de la commande tant que celle-ci ne présente pas l'étatpendingShipment
. - Le marchand confirme la commande
- Marquez la commande comme
acknowledged
afin de faciliter le filtrage des nouvelles commandes. - Le marchand vérifie que les articles sont disponibles et réserve les produits commandés
- Lancez le traitement de la commande et vérifiez que les produits commandés sont disponibles.
Si vous utilisez le processus de réservation, vérifiez également que les produits réservés sont disponibles.
Si un produit est indisponible, informez-en Google. L'intégralité de la commande ou une partie de celle-ci est alors définie sur
canceled
. - Le marchand débite le client (facultatif)
- Lorsque vous êtes prêt à expédier le premier article de la commande, appelez
captureOrder
pour débiter le client. Si le débit aboutit, expédiez l'article. S'il échoue, annulez la commande. - Le marchand expédie la commande et traite le paiement
- Expédiez l'intégralité ou une partie de la commande dans les trois jours suivant le temps de traitement que vous avez indiqué. Utilisez l'appel d'API
orders.shiplineitem
pour marquer la commande comme expédiée. Google finalise alors le paiement. - Le marchand effectue le suivi de l'expédition
- Continuez à suivre l'expédition et mettez à jour la commande avec les informations de suivi. Google se charge du suivi pour les transporteurs acceptés.
- Google met à jour les informations de livraison
- Google définit l'état de la commande sur
delivered
oupartiallyDelivered
une fois que la commande complète ou partielle a été livrée, ou surundeliverable
si la commande ne peut pas être livrée. Pour ce faire, Google vous demande de faire appel à des transporteurs acceptés et d'ajouter des numéros de suivi valides. - Google finalise le paiement
- Google finalise le processus de paiement et de facturation pour les marchands qui peuvent utiliser
OrderInvoice
. Une fois que tous les articles de la commande ont été expédiés, l'état de la commande est défini surshipped
. - Le client reçoit la commande
- Le client reçoit la commande et a la possibilité de la renvoyer.
Processus de commande détaillé
Voici un aperçu plus détaillé du processus de commande :
- Réception de la commande
- Le processus commence lorsqu'un client passe une commande. Google lui envoie alors un e-mail de confirmation contenant le numéro de commande Google.
- Vérification de la commande et des informations de paiement
- Google passe ensuite à l'étape de vérification antifraude. Pendant cette procédure, le client bénéficie d'un court laps de temps pour annuler sa commande. Si la commande est valide, son état est défini sur
pendingShipment
. Vous pouvez alors commencer à la traiter en utilisantorders.acknowledge
. - Recherche de nouvelles commandes
- Vous pouvez également récupérer des commandes interactives en programmant une interrogation périodique via la méthode
orders.list
, en définissantpendingShipment
comme filtre pour le champ d'état. Vous devez définir l'intervalle d'interrogation (c'est-à-dire la fréquence à laquelle vous recherchez de nouvelles commandes) en fonction de la fréquence ou du volume de commandes que vous prévoyez de recevoir. - Produits réservés et commandes partielles
- Si les articles commandés sont réservés, les étapes consistant à vérifier la disponibilité des produits et à créer des commandes partielles sont ignorées. Dans ce cas, procédez à l'expédition de la commande en utilisant
orders.shiplineitem
pour les produits réservés. - Définition de l'ID marchand de la commande
- Vous pouvez éventuellement utiliser
orders.updatemerchantorderid
pour définir votre ID lors de l'étape d'envoi de l'ID marchand de la commande à Google. Google définit ensuite l'état de la commande suracknowledge
. L'appel d'une méthode sur une commande donnée (autre que la récupération de ses détails) confirme automatiquement la commande. - Retards et annulations
Si vous décidez de ne pas traiter la commande, annulez-la en appelant la méthode
orders.cancel
et en transmettant un code de motif pour l'annulation. L'état de la commande est alors défini surcancel
. Consultez la liste des codes de motifs valides sur la page concernant la ressource Orders.Si vous pensez que votre commande ne peut pas être expédiée à temps, vous devez en informer Google avec
orders.updatelineitemshippingdetails
. Cette méthode vous permet de définir de nouvelles datesshipByDate
etdeliveryByDate
pour un article (lineitemId
) de la commande. Les commandes qui ne sont pas expédiées dans les trois jours suivant le temps de traitement que vous avez indiqué peuvent être automatiquement annulées. Google prend en compte les nouvelles valeursshipByDate
etdeliveryByDate
lors du processus d'annulation automatique de la commande, et communique les nouvelles informations de livraison au client par e-mail. En savoir plus sur les Règles relatives à la livraison pour Acheter sur GoogleSi aucun des articles de la commande n'est disponible, annulez-la à l'aide de la méthode
orders.cancel
. Si un ou plusieurs articles ne sont pas disponibles, annulez-les individuellement à l'aide de la méthodeorders.cancellineitem
. L'état de la commande pour ces articles passe alors àcanceled
.- Expédition de la commande
Le marchand expédie ensuite la commande. Utilisez
orders.shiplineitem
pour expédier l'ensemble ou une partie de la commande selon la disponibilité des articles. L'état de la commande est alors défini surshipped
oupartiallyShipped
. Si la commande est partiellement expédiée, certains articles peuvent toujours présenter l'étatpendingShipment
. Une fois que tous les articles présentent l'étatshipped
oucanceled
, l'état de la commande est défini surshipped
.Google envoie un e-mail au client pour confirmer les détails de la commande, et finalise le traitement du paiement avec l'appel d'API
orders.shiplineitem
. Les articles qui ne sont pas marqués comme expédiés dans les trois jours suivant le temps de traitement que vous avez indiqué sont automatiquement annulés. Consultez les Règles relatives à la livraison pour en savoir plus.- Création d'une facture
Les marchands autorisés peuvent éventuellement utiliser l'API
orderinvoices.createchargeinvoice
au niveau des articles pour plus de flexibilité et de précision au moment de générer les factures et de calculer les taxes. L'état du paiement de la commande marchand est défini surpaymentCaptured
une fois cette API exécutée pour tous les articles. Les articles présentent ensuite l'étatshipped
, et le client reçoit un e-mail de confirmation lorsque la commande a été entièrement expédiée. Si vous souhaitez utiliser cette ressource, contactez notre équipe d'assistance aux États-Unis ou en France.- Mise à jour de l'état de la livraison
Nous vous conseillons d'effectuer le suivi de chaque livraison. Lorsqu'une commande a été livrée, appelez
orders.updateshipment
pour définir l'état de la livraison surdelivered
(pour les transporteurs acceptés, Google se charge de la mise à jour). Si la commande n'a pas été livrée, le processus en cas de commande non livrée doit être suivi.
Finalisation de la commande
La commande est terminée lorsque :
- tous les articles de la commande ont été expédiés ;
- toutes les commandes partielles présentent l'état
delivered
; - un e-mail de confirmation a été envoyé au client.
Sachez que les clients peuvent retourner une commande qui leur a été livrée. Le processus de retour est décrit ci-dessous.
Processus en cas de commande non livrée
Si le client ne reçoit pas sa commande, vous devez suivre un processus bien organisé pour qu'il soit malgré tout satisfait. Le diagramme ci-dessous décrit ce processus, ainsi que les étapes suivies par Google dans ce cas.
Le sous-processus Commande non livrée succède au processus de commande détaillé :
Si le transporteur a suivi le processus d'expédition, mais que la commande n'a toujours pas été livrée, son état doit être défini sur undeliverable
.
De plus, un client peut ne pas recevoir une commande pour diverses raisons. Dans les cas suivants, appelez orderreturns.createorderreturn
pour lancer le retour, puis orderreturns.process
pour traiter le retour et émettre un remboursement :
Si le colis vous a été retourné en raison du refus de la livraison par le client, vérifiez que celui-ci est complet. Si le colis contient tous les articles commandés, utilisez
orderreturns.process
pour que Google définisse l'état de la commande surreturned
et envoie un e-mail de confirmation de remboursement au client.Si le colis ne contient pas l'intégralité de la commande, utilisez
orderreturns.process
pour que Google définisse l'état de la commande surpartiallyReturned
et envoie une confirmation de remboursement partiel au client.Si le colis n'a pas été retourné, continuez à en effectuer le suivi et décidez de procéder ou non au remboursement. Si vous choisissez d'accorder un remboursement, utilisez
orderreturns.process
. Si vous décidez de ne pas rembourser l'article, la commande est facturée au client.
Processus de réservation
Le sous-processus du workflow de réservation permet aux marchands de réserver un sous-ensemble du produit qu'ils vendent sur Google.
Pour utiliser le workflow de réservation, vous devez connaître votre inventaire, en effectuer le suivi dans votre système et utiliser l'attribut sell_on_google_quantity
pour partager les informations le concernant.
Cette section s'adresse aux marchands qui respectent le processus de commande détaillé. Le présent workflow remplace la première partie de ce processus.
Vous devez suivre le sous-processus de réservation lorsqu'un client commande un produit que vous avez mis de côté dans votre inventaire. Une fois la commande passée, Google définit son état sur inProgress
. Vous pouvez récupérer les nouvelles commandes à l'aide de l'appel d'API orders.list
en filtrant celles qui comportent l'état inProgress
.
Si vous détectez des commandes contenant des produits que vous gérez via votre processus de réservation, précisez leur OrderId
. Si vous décidez de fournir votre ID via l'appel d'API orders.updatemerchantorderid
, Google met à jour cette information et définit automatiquement la commande sur acknowledged
. Si vous ne fournissez pas votre OrderId
marchand, vous devez utiliser orders.acknowledge
pour marquer la commande comme confirmée.
Vérifiez dans votre système que tous les articles commandés sont disponibles. Veillez à maintenir à jour l'attribut sell_on_google_quantity
pour partager des informations correctes sur votre inventaire. Si tous les produits commandés sont disponibles, mettez-les de côté pour cette commande. Si certains produits réservés ne sont pas disponibles, utilisez l'appel d'API orders.cancellineitem
pour les annuler tant que l'état de la commande est toujours inProgress
et acknowledged
.
SI aucun des produits commandés n'est disponible dans l'inventaire de réservation, annulez la commande via l'appel d'API orders.cancel
. Une fois cette opération effectuée, Google procède à l'annulation, en informe le client et lance le processus de facturation par défaut afin de le rembourser.
Pour finaliser le processus, revenez au workflow de traitement de la commande. Rappelez-vous que la commande présente désormais l'état acknowledged
.
Retours
Les clients peuvent renvoyer une commande de différentes façons :
- Via le portail Google Shopping
- En contactant le service client Google
- En magasin
Les marchands peuvent utiliser le service orderreturns
pour traiter les retours et émettre des remboursements.
Une commande (Order
) ne passe à l'état returned
ou partiallyReturned
que si les critères suivants sont remplis :
- Le marchand accepte le retour.
- Le marchand appelle
orderreturns.process
ouordereturns.createorderreturn
.
Le schéma suivant résume le processus de retour d'une commande.
Récapitulatif du processus
Processus de retour d'une commande :
Demande de retour par le client : le client retourne la commande directement via le menu de commande de l'application Google Shopping ou en contactant le centre d'aide Google. Il doit indiquer le motif du retour (par exemple, erreur d'article ou de taille).
Examen de la demande par Google ou le marchand :
Examen de la demande de retour par Google : Google examine le motif de la demande et, en cas d'approbation, envoie au client un e-mail contenant une étiquette de retour au format PDF.
Examen de la demande de retour par le marchand : si le marchand gère ses propres conditions de retour, il importe l'étiquette de retour pour le client. Une fois l'étiquette importée, le retour est défini sur l'état
new
.
Renvoi du colis par le client : le client imprime l'étiquette et expédie le colis. Le colis est expédié à l'adresse de retour configurée dans Merchant Center.
Récupération des retours : le marchand vérifie régulièrement s'il a reçu de nouveaux retours à l'aide des méthodes
get
oulist
du serviceOrderReturns
.Création du retour : si aucun retour n'est trouvé, le marchand peut utiliser
createorderreturn
pour procéder à un retour.Traitement du retour : le marchand accepte ou refuse le colis retourné avec
process
.Émission du remboursement par Google : Google traite le remboursement et met à jour les données de commande correspondantes. L'état de la commande est alors défini sur
returned
oupartiallyReturned
.Réception des fonds par le client : le client reçoit une notification de remboursement. La somme lui est remboursée sur son compte sous quelques jours.
Processus détaillé du retour d'une commande
Utilisez cet organigramme si un client retourne sa commande. Pour faciliter la lecture, nous avons divisé le processus en trois parties distinctes :
- Processus de retour côté client
- Recherche de retours via l'API
- Acceptation ou refus du colis et traitement de la décision par Google
- Le client renvoie le colis
Le processus de retour d'une commande débute lorsqu'un client reçoit une commande et prend la décision de renvoyer un ou plusieurs des articles livrés. Il peut appeler le centre d'aide Google ou utiliser l'application Shopping pour effectuer une demande de retour. Notez que plusieurs facteurs déterminent si un article peut être retourné ou non : sa date de retour est-elle passée ? L'article a-t-il déjà été renvoyé ?
Si vous choisissez de gérer votre propre processus de retour dans Merchant Center, l'état
pending
est attribué au retour lors de sa création. Une fois que vous avez importé l'étiquette dans Merchant Center, le retour passe à l'étatnew
. Si vous choisissez d'utiliser Google pour gérer le processus de retour, Google crée les étiquettes et les envoie aux clients pour les retours. L'état initial des retours de commandes gérés par Google estnew
.- Le marchand recherche des retours
Utilisez la méthode
orderreturns.list
pour rechercher de nouveaux retours en temps réel. Si un retour est détecté, utilisez le nom du transporteur et le numéro de suivi fournis pour anticiper la livraison et informer le personnel de votre établissement qu'un colis retourné va bientôt arriver. Notez que les colis retournés seront envoyés à votre établissement même si vous n'utilisez pas cette méthode pour rechercher de nouveaux retours.Une fois que vous avez reçu le colis, utilisez la méthode
orderreturns.get
pour le récupérer, puis vérifiez le bordereau de marchandises et le contenu du colis afin de vous assurer qu'il a été renvoyé pour un motif valable. Vous pouvez ensuite décider d'accepter le colis retourné ou de le refuser.Si le colis retourné peut être récupéré auprès de Google, vous pouvez appeler
orderreturns.process
afin d'émettre le remboursement ou refuser le retour. En cas de remboursement, les données du colis retourné récupérées fournissent des informations concernant le prix remboursable. Celles-ci peuvent vous aider à déterminer le montant du remboursement de chaque article.Si le colis retourné ne peut pas être récupéré, c'est parce que le client a expédié les articles sans effectuer de retour auprès de Google (ce qui est rare). Dans ce cas, vous pouvez appeler
orders.returnrefundlineitem
pour effectuer le remboursement ou appelerorders.rejectreturnlineitem
pour refuser le retour.- Google traite les retours
Une fois l'appel d'API de traitement du retour reçu, Google lance les opérations correspondantes, telles que l'émission du remboursement, la mise à jour des états et l'envoi d'une notification au client.
Remboursement sans retour
Le schéma suivant illustre le processus permettant de rembourser un produit sans demander de retour.
Le client demande un remboursement : le client demande un remboursement en contactant Google ou le marchand directement. Il doit indiquer la raison pour laquelle il souhaite être remboursé (par exemple, produit endommagé ou prix facturé erroné).
Le marchand décide d'émettre un remboursement
Acceptation ou refus de la demande de remboursement : en fonction du motif indiqué par le client, le marchand accepte ou refuse la demande de remboursement. Les remboursements peuvent être accordés pour des articles spécifiques ou pour l'intégralité d'une commande.
Remboursement exceptionnel : le marchand propose un remboursement à titre exceptionnel au client, sans que celui-ci ne le demande. Les remboursements peuvent être accordés pour n'importe quelle raison, par exemple un ajustement du prix ou des taxes.
Traitement du remboursement : le marchand procède au remboursement de la commande. S'il souhaite rembourser des articles spécifiques ou des frais de port, il doit utiliser la méthode
orders.refunditem
. S'il ne connaît pas la répartition par article du remboursement, il doit utiliser la méthodeorders.refundorder
. Ces deux méthodes sont compatibles avec les remboursements partiels et totaux.Émission du remboursement : Google traite la demande et émet le remboursement partiel ou total. Google définit ensuite l'attribut
refunds
sur la ressourceorders
.Réception des fonds : le client reçoit le remboursement partiel ou total.