Objetivo del blog:
Después de leer este blog, podrá comprender cómo el vendedor puede cambiar el inventario y la latencia de cumplimiento de los productos en Amazon utilizando la API.
Vamos a saber acerca de la latencia de cumplimiento
La latencia de cumplimiento es el número de días que el vendedor debe enviar el pedido después de recibir el pedido de Amazon. También se puede definir como el tiempo máximo disponible para que el vendedor envíe el paquete. El tiempo de cumplimiento lo establece el vendedor correspondiente a cada producto. La latencia de cumplimiento también se conoce como tiempo de manejo. La API de cumplimiento de Amazon ayuda al vendedor a establecer el inventario del producto y el tiempo de latencia de cumplimiento en Amazon.
Cómo cambiar la latencia e inventario de cumplimiento para productos que utilizan API
Háganos saber sobre los campos que deberá enviar en la solicitud a Amazon:
Acción
Este campo especifica la acción que debe realizarse en la solicitud y esto ayuda a determinar qué parámetro debería estar en la solicitud. Firma: siempre que envíe la solicitud HTTP a Amazon, debe agregar la firma con la URL. Al verificar la firma, Amazon puede identificar al comerciante de quien se recibió la solicitud. Utilizamos el valor de hash (HmacSHA256), algunos datos de la solicitud y la clave de acceso secreta para crear la firma.
Versiones de Firma
Hay versiones de firma 2 que
(1) Versión 4:
(2) Versión 2:
Se pueden usar ambas versiones para firmar la solicitud, pero le recomendamos que firme su solicitud con la versión de firma 4, pero en este blog se usa la versión de la firma 2.
Purgar y reemplazar
El campo de purgar y reemplazar reemplaza la lista existente de productos de Amazon si su valor es verdadero. Por lo tanto, siempre debe establecer su valor falso en la solicitud si no desea eliminar todas las listas de Amazon.
FeedType
El tipo de feed especifica cómo se deben procesar los datos. Para cambiar la latencia de cumplimiento y el inventario, debe especificar el tipo de fuente "_POST_INVENTORY_AVAILABILITY_DATA_".
Método de firma
Los métodos de firma son los protocolos basados en hash y debe aplicar estos métodos para calcular firmas. Ej. HmacSHA256
Timestamp
En este campo, debe agregar el tiempo en el que está haciendo la solicitud. Para cambiar la latencia de cumplimiento y el inventario del producto, debe enviar los siguientes datos en la solicitud a 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
También deberá crear el archivo XML que contendrá los detalles de inventario y la latencia de cumplimiento de los SKU para los que desea cambiar la latencia de cumplimiento y el inventario. La fuente de muestra se muestra a continuación: $ xml_file = la ruta completa del archivo XML en el servidor $ xml_data se muestra a continuación
<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>
Debe enviar la URL de solicitud, los datos xml y el encabezado juntos en una solicitud. El servidor utiliza los valores de encabezado para una verificación de extremo a extremo de los datos y para detectar modificaciones no intencionales de los datos durante la transición.
$ 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 el archivo xml);
$ options = array (CURLOPT_URL => $ url, CURLOPT_POSra = = NUMX, CURLOPT_FOLLOWLOCATION => true, // sigue las redirecciones CURLOPT_RETnP.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.LO. "UTF-1", // maneja todas las codificaciones CURLOPT_AUTOREFERER => true, // establezca el referente en redirigir CURLOPT_CONNECTTIMEOUT => 8, //fr. falso, // deshabilitar la comprobación de certificados CURLOPT_FILE => "$ fp"); $ ch = curl_init ($ url); @curl_setopt_array ($ ch, $ options); $ content = curl_exec ($ ch);
En la respuesta, obtendrá el número de SKU que se procesó con éxito (significa que la latencia de cumplimiento y el inventario han sido modificados) y el número de SKU que no se procesaron debido a un error, como se muestra en la captura de pantalla de la fuente de respuesta a continuación:
?
Resumen
Después de leer este documento, usted (el vendedor) puede cambiar fácilmente la latencia de cumplimiento y el inventario de productos en Amazon utilizando la API de Amazon MWS.