Come modificare la latenza di esecuzione e l'inventario per i prodotti su Amazon utilizzando l'API

Obiettivo del blog:

Dopo aver letto questo blog, sarai in grado di capire in che modo il venditore può modificare l'inventario e la latenza di evasione dei prodotti su Amazon utilizzando l'API.

Informiamoci sulla latenza di evasione

La latenza di evasione è il numero di giorni di cui il venditore deve spedire l'ordine dopo aver ricevuto l'ordine da Amazon. Può anche essere definito come il tempo massimo a disposizione del venditore per la spedizione del pacco. Il tempo di evasione è stabilito dal venditore corrispondente a ciascun prodotto. La latenza di evasione è anche nota come tempo di gestione. L'API di adempimento Amazon aiuta il venditore a impostare l'inventario del prodotto e il tempo di latenza di adempimento su Amazon.

Come modificare la latenza di esecuzione e l'inventario per i prodotti che utilizzano l'API

Facci sapere i campi che dovrai inviare nella richiesta ad Amazon:

Azione

Questo campo specifica l'azione che deve essere eseguita sulla richiesta e questo aiuta a determinare quale parametro deve essere presente nella richiesta. Firma: ogni volta che si invia la richiesta HTTP ad Amazon, è necessario aggiungere la firma con l'URL. Controllando la firma, Amazon può identificare il commerciante da cui è stata ricevuta la richiesta. Utilizziamo il valore di hash (HmacSHA256), alcuni dati della richiesta e la chiave di accesso segreta per creare la firma.

Versioni di firma

Ci sono versioni di firma 2 che

(1) Versione 4:
(2) Versione 2:

Entrambe le versioni possono essere utilizzate per firmare la richiesta ma ti consigliamo di firmare la tua richiesta con la versione della firma 4, ma in questo blog viene utilizzata la versione della firma 2.

Spurgare e sostituire
Il campo di eliminazione e sostituzione sostituisce l'elenco esistente di prodotti da Amazon se il suo valore è true. Quindi devi sempre impostare il suo valore falso nella richiesta se non vuoi rimuovere tutto il listato da Amazon.

FEEDTYPE
Il tipo di feed specifica come devono essere elaborati i dati. Per modificare la latenza di esecuzione e l'inventario, devi specificare il tipo di feed "_POST_INVENTORY_AVAILABILITY_DATA_".

SignatureMethod

I metodi di firma sono i protocolli basati su hash e devi applicare questi metodi per calcolare le firme. Ad esempio HmacSHA256

Timestamp

In questo campo, è necessario aggiungere l'ora in cui si sta facendo richiesta. Per modificare la latenza di esecuzione e l'inventario del prodotto, è necessario inviare i seguenti dati nella richiesta ad 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

Sarà inoltre necessario creare il file XML che conterrà i dettagli di latenza dell'inventario e della realizzazione di quegli SKU per i quali si desidera modificare la latenza e l'inventario di evasione. Il feed di esempio è indicato di seguito: $ xml_file = Il percorso completo del file XML sul server $ xml_data è indicato di seguito

<AmazonEnvelope xmlns:xsi="http://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>

È necessario inviare l'URL della richiesta, i dati xml e l'intestazione insieme in una richiesta. I valori dell'intestazione vengono utilizzati dal server per un controllo end-to-end sui dati e per rilevare modifiche non intenzionali ai dati durante la transizione.

$ 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)) // codifica il file xml);
$ options = array (CURLOPT_URL => $ url, CURLOPT_POST => 1, CURLOPT_FOLLOWLOCATION => true, // segue reindirizzamenti CURLOPT_RETURNTRANSFER => true, // restituisce pagina web CURLOPT_POSTFIELDS => $ xml_data, CURLOPT_HTTPHEADER => $ intestazioni, CURLOPT_ENCODING => "UTF-8", // gestisce tutte le codifiche CURLOPT_AUTOREFERER => true, // imposta il referente sul reindirizzamento CURLOPT_CONNECTTIMEOUT => 120, // timeout sulla connessione CURLOPT_TIMEOUT => 120, // timeout sulla risposta CURLOPT_SSL_VERIFYHOST => 2, CURLOPT_SSL_VERIFYPEER => false, // disabilita il controllo dei certificati CURLOPT_FILE => "$ fp"); $ ch = curl_init ($ url); @curl_setopt_array ($ ch, $ opzioni); $ content = curl_exec ($ ch);

Nella risposta, otterrai il numero di SKU che sono stati elaborati correttamente (significa che la latenza di esecuzione e l'inventario sono stati modificati) e il numero di SKU che non sono stati elaborati a causa di un errore, come indicato nello screenshot del feed di risposta di seguito:
Come modificare la latenza di esecuzione e l&#39;inventario per i prodotti su Amazon utilizzando l&#39;API
?
sommario

Dopo aver letto questo documento, tu (venditore) puoi facilmente modificare la latenza di realizzazione e l'inventario dei prodotti su Amazon utilizzando l'API Amazon MWS.


Shivam Verma

Shivam Verma

Shivam Verma is an experienced software engineer in PHP development and Database design. His area of interest is website development. He likes to be aware of his surroundings and to learn new things by observing others. He believes that by doing this we can learn new things and can also enhance our knowledge everyday. He has started writing technical blogs with a view to help others in studying and learning new things in an easy way.

Leave a Reply

Your email address will not be published. Required fields are marked *