$xml = '<?xml version="1.0"?>
mazonEnvelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="amzn-envelope.xsd">
<Header>
DocumentVersion>1.01</DocumentVersion>
MerchantIdentifier>' . $this->getMerchantId() . '</MerchantIdentifier>
</Header>
<MessageType>OrderFulfillment</MessageType>
<Message>
MessageID>1</MessageID>
OrderFulfillment>
<AmazonOrderID>' . $order['amazon_order_id'] . '</AmazonOrderID>
<FulfillmentDate>' . date('c') . '</FulfillmentDate>
foreach ($order['products'] as $product) {
$xml .= '
<Item>
<AmazonOrderItemCode>' . $product['amazon_order_item_code'] . '</AmazonOrderItemCode>
<Quantity>' . $product['quantity'] . '</Quantity>
</Item>
}
$xml .= '
/OrderFulfillment>
</Message>
AmazonEnvelope>';
$headers = array(
'Content-Type: text/xml',
'Content-MD5: ' . base64_encode(md5($xml, true)),
);
$args = $this->getCommonParameters();
$args['Merchant'] = $this->getMerchantId();
$args['Action'] = 'SubmitFeed';
$args['Version'] = '2009-01-01';
$args['FeedType'] = '_POST_ORDER_FULFILLMENT_DATA_';
$response = $this->getMwsResponse('POST', '/', $args, array(), $xml, $headers);
$response_xml = simplexml_load_string($response);
$cba_log = new Log('cba.log');
$cba_log->write('Marked order ' . $order['amazon_order_id'] .' as shippped. Response ' . print_r($response_xml, 1));