Mike Calvert
Mike Calvert

Reputation: 131

Amazon Order Fulfillment Feed API Issue

I am receiving tracking information and updating Amazon through a feed using the following 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>**Commented Out**</MerchantIdentifier>
</Header>
<MessageType>OrderFulfillment</MessageType>
<Message>
    <MessageID>1</MessageID>
    <OrderFulfillment>
        <AmazonOrderID>**Commented Out**</AmazonOrderID>
        <MerchantFulfillmentID>123456</MerchantFulfillmentID>
        <FulfillmentDate>2013-17-09T00:00:00</FulfillmentDate>
        <FulfillmentData>
            <CarrierName>UPS</CarrierName>
            <ShippingMethod>UPS Ground</ShippingMethod>
            <ShipperTrackingNumber>**Commented Out**</ShipperTrackingNumber>
        </FulfillmentData>
        <Item>
            <AmazonOrderItemCode>**Commented Out**</AmazonOrderItemCode>
            <MerchantFulfillmentID>1</MerchantFulfillmentID>
            <Quantity>1</Quantity>
        </Item>
    </OrderFulfillment>
</Message>
</AmazonEnvelope>

I am receiving the following response, and I am unable to determine :

        <Result>
            <MessageID>1</MessageID>
            <ResultCode>Error</ResultCode>
            <ResultMessageCode>25</ResultMessageCode>
            <ResultDescription>We are unable to process the XML feed because one or more items are invalid. Please re-submit the feed.</ResultDescription>
        </Result>

Upvotes: 2

Views: 1701

Answers (2)

kdnerd
kdnerd

Reputation: 341

remove <MerchantFulfillmentID>123456</MerchantFulfillmentID> It will work

You can either have <AmazonOrderID>

Or <MerchantOrderID> this can be only used if you linked your internal order in order acknowledgement feed </MerchantOrderID>

Upvotes: 1

CommaToast
CommaToast

Reputation: 12188

 <CarrierName>UPS</CarrierName>

I believe this should be:

 <CarrierCode>UPS</CarrierCode>

The Selling on Amazon Guide to XML states, "You can use CarrierName instead of CarrierCode if the list of options for CarrierCode (in the base XSD) does not contain the carrier you used."

Maybe it has recognized UPS should be a CarrierCode instead of a CarrierName?

UPDATE:

This is actually what it probably is:

In the "Item" element, your "MerchantFulfillmentID" should actually be "MerchantFulfillmentItemID". I made the same mistake too.

Also the date "2013-17-09T00:00:00" does not appear valid.

Upvotes: 0

Related Questions