Objectif:
Après avoir lu ce blog, vous serez en mesure de comprendre comment le vendeur peut modifier l’inventaire et la latence d’exécution des produits sur Amazon à l’aide de l’API.
Informez-vous sur la latence d’exécution
La latence d’exécution est le nombre de jours pendant lesquels le vendeur doit expédier la commande après avoir reçu la commande d’Amazon. Il peut également être défini comme le délai maximum dont dispose le vendeur pour expédier le colis. Le délai d’exécution est fixé par le vendeur correspondant à chaque produit. La latence d’exécution est également appelée temps de traitement. L’API d’exécution d’Amazon aide le vendeur à définir l’inventaire du produit et le temps de latence d’exécution sur Amazon.
Comment modifier la latence d’exécution et l’inventaire pour les produits utilisant l’API ?
Faites-nous savoir les champs que vous devrez envoyer dans la demande à Amazon :
Action
Ce champ spécifie l’action qui doit être effectuée sur la demande et cela aide à déterminer quel paramètre doit être dans la demande. Signature : chaque fois que vous envoyez la requête HTTP à Amazon, vous devez ajouter la signature avec l’URL. En vérifiant la signature, Amazon peut identifier le marchand de qui la demande a été reçue. Nous utilisons une valeur de hachage (HmacSHA256), certaines données de la requête et une clé d’accès secrète pour créer une signature.
Versions signées
2 versions de signature sont prises en charge et ces versions sont :
(1)Version 4 :
(2)Version 2 :
Les deux versions peuvent être utilisées pour signer la demande mais nous vous recommandons de signer votre demande avec Signature Version 4 dans ce blog, la signature version 2 est utilisée.
Purger et remplacer
Le champ purger et remplacer remplace la liste existante des produits d’Amazon si sa valeur est vraie. Vous devez donc toujours définir sa valeur sur false dans la requête si vous ne souhaitez pas supprimer listingsting d’AmazFreeTypeCatégorie
Le type de flux spécifie comment les données doivent être traitées. Pour modifier la latence de traitement et l’inventaire, vous devez spécifier le type de flux “_POST_INVENTORY_AVAILABILITY_DATA_”.
Méthode de signature
Les méthodes de signature sont basées sur des protocoles basés sur le hachage et vous devez appliquer ces méthodes pour calculer les signatures. Par exemple HmacSHA256
Horodatage
Dans ce champ, vous devez ajouter l’heure à laquelle vous faites la demande. Pour modifier la latence d’exécution et l’inventaire du produit, vous devez envoyer les données suivantes dans la demande à Amazon : $url =
https://mws.amazonservices.co.uk // Here you need to write the End point /?AWSAccessKeyId=XXXXXXXXXXXXXXXXXXXX // Here write your AWS Access Key &Action=SubmitFeed // Action should be SubmitFeed &FeedType=_POST_INVENTORY_AVAILABILITY_DATA_ // Feed Type &MarketplaceIdList.Id.1= XXXXXXXXXXXXXX // Here write your marketplace list id &Merchant=XXXXXXXXXXXXXX // Here write your seller id or merchant id &Signature=1234Knowband1234example1234 // Here you need to write the signature &SignatureMethod=HmacSHA256 // Hash method which used to create signature &SignatureVersion=2 &Timestamp=gmdate("Y-m-d\TH:i:s\Z",time())) &Version=2009-01-01 &PurgeAndReplace=false // Always set purgeAndReplace Value as false // else it will replace all the existing product data
Vous devrez également créer le fichier XML qui contiendra les détails de l’inventaire et de la latence d’exécution des SKU pour lesquels vous souhaitez modifier la latence d’exécution et l’inventaire. L’exemple de flux est donné ci-dessous :
$xml_file = Le chemin complet du fichier XML sur le serveur $xml_data est donné ci-dessous
<AmazonEnvelope xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="amzn-envelope.xsd"> <Header> <DocumentVersion>1.01</DocumentVersion> <MerchantIdentifier>XXXX-XXXX-XXXX</MerchantIdentifier> </Header> <MessageType>Inventory</MessageType> <Message> <MessageID>1</MessageID> <OperationType>Update</OperationType> <Inventory> <SKU>p-25976-MB</SKU> <Quantity>0</Quantity> <FulfillmentLatency>2</FulfillmentLatency> </Inventory> </Message> <Message> <MessageID>2</MessageID> <OperationType>Update</OperationType> <Inventory> <SKU>p-25976-XSB</SKU> <Quantity>0</Quantity> <FulfillmentLatency>2</FulfillmentLatency> </Inventory> </Message> <Message> <MessageID>3</MessageID> <OperationType>Update</OperationType> <Inventory> <SKU>p-25976-X-L</SKU> <Quantity>0</Quantity> <FulfillmentLatency>2</FulfillmentLatency> </Inventory> </Message> <Message> <MessageID>4</MessageID> <OperationType>Update</OperationType> <Inventory> <SKU>p-25976-SB</SKU> <Quantity>0</Quantity> <FulfillmentLatency>2</FulfillmentLatency> </Inventory> </Message> <Message> <MessageID>5</MessageID> <OperationType>Update</OperationType> <Inventory> <SKU>p-25976-LB</SKU> <Quantity>0</Quantity> <FulfillmentLatency>2</FulfillmentLatency> </Inventory> </Message> </AmazonEnvelope>
Vous devez envoyer les données XML UXML de la requête et l’en-tête ensemble dans une requête. Les valeurs d’en-tête sont utilisées par le serveur pour une vérification de bout en bout des données et pour détecter des modifications involontaires des données plus loin dans la transition.
$headers = array ( 'Expect: ', 'Accept: ', 'Transfer-Encoding: chunked', 'Content-Type: application/x-www-form-urlencoded; charset=utf-8', 'Content-MD5: ' .base64_encode(md5_file($xml_file, true)) //encoder le fichier xml );
$options = array( CURLOPT_URL => $url, CURLOPT_POST => 1, CURLOPT_FOLLOWLOCATION => true, // suivre les redirections CURLOPT_RETURNTRANSFER => true, // retourner la page web CURLOPT_POSTFIELDS => $xml_data, CURLOPT_HTTPHEADER => $headers, CURLOPT_ENCODING => "UTF-8", // gérer tous les encodages CURLOPT_AUTOREFERER => true, // définir le référent sur la redirection CURLOPT_CONNECTTIMEOUT => 120, // timeout sur la connexion CURLOPT_TIMEOUT => 120, // timeout sur la réponse CURLOPT_SSL_VERIFYHOST => 2, CURLOPT_SSL_VERIFYPEER => false, // désactive la vérification des certificats CURLOPT_FILE => "$fp" ); $ch = curl_init( $url ); @curl_setopt_array( $ch, $options ); $content = curl_exec( $ch );
Dans la réponse, vous obtiendrez le nombre de SKU qui ont été traités avec succès (ce qui signifie que la latence d’exécution et l’inventaire ont été modifiés) et le nombre de SKU qui n’ont pas été traités en raison d’une erreur, comme indiqué dans la capture d’écran du flux de réponse ci-dessous :
![Comment modifier la latence d'exécution et l'inventaire des produits sur Amazon à l'aide de l'API](https://www.knowband.com/blog/wp-content/uploads/2019/07/Picture5.png)
,war
Résumé
Après avoir lu ce document, vous (vendeur) pouvez facilement modifier la latence d’exécution et l’inventaire des produits sur Amazon à l’aide de l’API Amazon MWS.
Groupe de connaissances offre des services de développement de commerce électronique et peut vous aider à créer un tout nouveau site Web de commerce électronique. Pour fournir à nos clients le service après-vente le plus performant et le plus efficace, nous avons une équipe d’assistance dédiée qui est constamment disponible pour les aider. Nous continuons à remplir nos devoirs envers les clients qui souhaitent obtenir de l’aide pour des problèmes urgents sur le site Web, même le week-end.
Les meilleurs modules Magento, Opencart, Prestashop et Magento 2 sont également disponibles. One Page SuperCheckout, Multi-Vendor Marketplace, Mobile App Builder, Spin and Win Module, Abandoned Cart et d’autres modules populaires ne sont que quelques-uns de ce que Knowband a à offrir. Vous pouvez nous joindre à support@knowband.com si vous avez des questions.