Невозможно отправить фид выполнения заказа amazon mws
Я пытаюсь обновить информацию о доставке через API фида, и вот мой фид XML
<?xml version="1.0" encoding="UTF-8"?>
<AmazonEnvelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="amzn-envelope.xsd">
<Header>
<DocumentVersion>1.01</DocumentVersion>
<MerchantIdentifier>Merchant id</MerchantIdentifier>
</Header>
<MessageType>OrderFulfillment</MessageType>
<Message>
<MessageID>1</MessageID>
<OrderFulfillment>
<MerchantOrderID>AmazonOrderId</MerchantOrderID>
<FulfillmentDate>2015-05-23T04:57:09+00:00</FulfillmentDate>
<FulfillmentData>
<CarrierCode>Fedex</CarrierCode>
<ShipperTrackingNumber>78066505</ShipperTrackingNumber>
</FulfillmentData>
<Item>
<MerchantOrderItemID>OrderItemId</MerchantOrderItemID>
</Item>
</OrderFulfillment>
</Message>
</AmazonEnvelope>
Когда я отправляю фид, получая ответ, мы не можем обработать фид XML, потому что один или несколько элементов недействительны. Пожалуйста, повторно отправьте канал. Но и идентификатор заказа, и идентификатор элемента заказа действительны.
В образце корма, представленного Amazon, я вижу <MerchantFulfillmentID>1234567</MerchantFulfillmentID>
а также <MerchantFulfillmentItemID>1234567</MerchantFulfillmentItemID>
но где я могу найти эти идентификаторы.
1 ответ
Как указано здесь Продажа на Amazon Руководство по XML:
Вы можете отправить свои собственные уникальные идентификаторы заказа и товара (MerchantOrderID и MerchantOrderItemID), а не идентификаторы заказа и товара Amazon, если вы установили свои собственные в фиде OrderAcknowledgement.
MerchantOrderID:
Опциональный продавец предоставил идентификатор заказа. Первый шаг - установить MerchantOrderID в фиде подтверждения. Amazon сопоставит MerchantOrderID с AmazonOrderID, и затем вы сможете использовать свой собственный идентификатор заказа (MerchantOrderID) для последующих каналов, связанных с этим заказом. См. Базовый XSD для определения.
MerchantFulfillmentID:
Продавец предоставил уникальный идентификатор для отправки (не используется Amazon)
Если вы не установили свои собственные идентификаторы в ленте OrderAcknowledgement, вы не можете использовать эти поля в ленте выполнения заказов. Вместо этого вы должны speficy AmazonOrderID
а также Item.AmazonOrderItemCode
, AmazonOrderItemCode
это код для этого конкретного продукта в этом конкретном порядке. Это не имеет ничего общего со знаменитым ASIN или что-то.
Рабочий пример для _POST_ORDER_FULFILLMENT_DATA_
кормить хотел бы как:
<AmazonEnvelope>
<Header>
<DocumentVersion>1.01</DocumentVersion>
<MerchantIdentifier>M_TESTSHOP_1337</MerchantIdentifier>
</Header>
<MessageType>OrderFulfillment</MessageType>
<Message>
<MessageID>1</MessageID>
<OrderFulfillment>
<AmazonOrderID>110-64133780-1337563</AmazonOrderID>
<FulfillmentDate>2015-11-02T13:02:14</FulfillmentDate>
<FulfillmentData>
<CarrierName>DHL</CarrierName>
<ShippingMethod>Paket</ShippingMethod>
<ShipperTrackingNumber>1337</ShipperTrackingNumber>
</FulfillmentData>
<Item>
<AmazonOrderItemCode>033521337643</AmazonOrderItemCode>
<Quantity>1</Quantity>
</Item>
</OrderFulfillment>
</Message>
</AmazonEnvelope>