Добавить несколько номеров для отслеживания в заказ Amazon с помощью MWS API - PullRequest
0 голосов
/ 07 сентября 2018

Я пытаюсь загрузить несколько номеров отслеживания в заказ Amazon, используя MWS API в PHP, но не знаю, что будет XML-запрос для этого. Вот XML-код, который я использую, который в итоге загружает последний номер для отслеживания.

$feed = <<<EOD
<?xml version="1.0" encoding="UTF-8"?>
    <AmazonEnvelope xsi:noNamespaceSchemaLocation="amzn-envelope.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
        <Header>
        <DocumentVersion>1.01</DocumentVersion>
        <MerchantIdentifier>XXX</MerchantIdentifier>
        </Header>
        <MessageType>OrderFulfillment</MessageType>
        <Message>
        <MessageID>1</MessageID>
        <OrderFulfillment>
            <AmazonOrderID>$orderId</AmazonOrderID>
            <FulfillmentDate>$FulfillmentDate</FulfillmentDate>
            <FulfillmentData>
                <CarrierCode>$carrierCode</CarrierCode>
                <ShipperTrackingNumber>'1Z7X887R0370783509'</ShipperTrackingNumber>
            </FulfillmentData>
            <Item>
            <Quantity>1</Quantity>
        </Item>

        </OrderFulfillment>
        </Message>
        <MessageID>2</MessageID>
        <OrderFulfillment>
            <AmazonOrderID>$orderId</AmazonOrderID>
            <FulfillmentDate>$FulfillmentDate</FulfillmentDate>
            <FulfillmentData>
                <CarrierCode>$carrierCode</CarrierCode>
                <ShipperTrackingNumber>'1Z7X887R0075127492'</ShipperTrackingNumber>
            </FulfillmentData>
            <Item>
            <Quantity>1</Quantity>
        </Item>
        </OrderFulfillment>
        </Message>
        <MessageID>3</MessageID>
        <OrderFulfillment>
            <AmazonOrderID>$orderId</AmazonOrderID>
            <FulfillmentDate>$FulfillmentDate</FulfillmentDate>
            <FulfillmentData>
                <CarrierCode>$carrierCode</CarrierCode>
                <ShipperTrackingNumber>'1Z7X887R0375972085'</ShipperTrackingNumber>
            </FulfillmentData>
            <Item>
            <Quantity>1</Quantity>
           </Item>

        </OrderFulfillment>
        </Message>
    </AmazonEnvelope>
EOD;

Любая помощь приветствуется!

Ответы [ 2 ]

0 голосов
/ 07 сентября 2018

Похоже, вы не правильно открываете свои сообщения.

Попробуйте это:

</Message>
  Add this -->  <Message>
        <MessageID>2</MessageID>    

 </Message>
Add this -->  <Message>
        <MessageID>3</MessageID>
0 голосов
/ 07 сентября 2018

Попробуйте следующий 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>My Store</MerchantIdentifier>
</Header>  
<MessageType>OrderFulfillment</MessageType>
<Message>     
   <MessageID>1</MessageID>     
   <OrderFulfillment>         
   <MerchantOrderID>1234567</MerchantOrderID>        
   <MerchantFulfillmentID>1234567</MerchantFulfillmentID>         
   <FulfillmentDate>2002-05-01T15:36:33-08:00</FulfillmentDate>         
   <FulfillmentData>            
      <CarrierCode>UPS</CarrierCode>            
      <ShippingMethod>Second Day</ShippingMethod>             
      <ShipperTrackingNumber>1Z7X887R0075127492</ShipperTrackingNumber>        
   </FulfillmentData>          
   <Item>            
      <MerchantOrderItemID>11</MerchantOrderItemID>              
      <MerchantFulfillmentItemID>11</MerchantFulfillmentItemID>            
      <Quantity>2</Quantity>         
   </Item>     
   </OrderFulfillment>
</Message>
<Message>     
   <MessageID>2</MessageID>     
   <OrderFulfillment>         
   <MerchantOrderID>1234567</MerchantOrderID>        
   <MerchantFulfillmentID>1234567</MerchantFulfillmentID>         
   <FulfillmentDate>2002-05-01T15:36:33-08:00</FulfillmentDate>         
   <FulfillmentData>            
      <CarrierCode>UPS</CarrierCode>            
      <ShippingMethod>Second Day</ShippingMethod>             
      <ShipperTrackingNumber>1Z7X887R0075127492</ShipperTrackingNumber>        
   </FulfillmentData>          
   <Item>            
      <MerchantOrderItemID>22</MerchantOrderItemID>              
      <MerchantFulfillmentItemID>22</MerchantFulfillmentItemID>            
      <Quantity>2</Quantity>         
   </Item>     
   </OrderFulfillment>
</Message>
</AmazonEnvelope>

Для получения дополнительной информации о XSD, вы можете обратиться Выполнение заказа на Amazon XSD

...