/**
  * @param array $items
  * @return array
  * @throws \Exception
  */
 public function bulk($items)
 {
     if (!is_array($items)) {
         throw new \Exception('Items is not an array', 1466349189);
     }
     $schema = ['/MPItemFeed/MPItem' => ['sendItemsAs' => 'MPItem', 'includeWrappingTag' => false]];
     $a2x = new A2X($items, $schema);
     $xml = $a2x->asXml();
     $file = new PostFile('file', $xml, 'file.xml', ['Content-Type' => 'text/xml']);
     return $this->bulkUpdate(['file' => $file]);
 }
 /**
  * @param array $items
  * @return array
  * @throws \Exception
  */
 public function bulk($items)
 {
     if (!is_array($items)) {
         throw new \Exception('Items is not an array', 1466349195);
     }
     $schema = ['/PriceFeed/Price' => ['sendItemsAs' => 'Price', 'includeWrappingTag' => false], '/PriceFeed/Price/Price/pricingList/pricing' => ['attributes' => ['effectiveDate', 'expirationDate']], '/PriceFeed/Price/Price/pricingList/pricing/currentPrice/value' => ['attributes' => ['currency', 'amount']], '/PriceFeed/Price/Price/pricingList/pricing/comparisonPrice/value' => ['attributes' => ['currency', 'amount']], '/PriceFeed/Price/Price/pricingList/pricing/priceDisplayCode' => ['attributes' => ['submapType']]];
     $a2x = new A2X($items, $schema);
     $xml = $a2x->asXml();
     $file = new PostFile('file', $xml, 'file.xml', ['Content-Type' => 'text/xml']);
     return $this->bulkUpdate(['file' => $file]);
 }
 /**
  * Refund an order
  * @param string $purchaseOrderId
  * @param array $order
  * @return array
  * @throws \Exception
  */
 public function refund($purchaseOrderId, $order)
 {
     if (!is_numeric($purchaseOrderId)) {
         throw new \Exception("purchaseOrderId must be numeric", 1448480783);
     }
     $schema = ['/orderRefund' => ['namespace' => 'ns3', 'childNamespace' => 'ns3'], '/orderRefund/orderLines' => ['sendItemsAs' => 'orderLine'], '/orderRefund/orderLines/orderLine/refunds' => ['sendItemsAs' => 'refund'], '/orderRefund/orderLines/orderLine/refunds/refund/refundCharges' => ['sendItemsAs' => 'refundCharge'], '@namespaces' => ['ns3' => 'http://walmart.com/mp/v3/orders']];
     $a2x = new A2X($order, $schema);
     $xml = $a2x->asXml();
     return $this->refundOrder(['purchaseOrderId' => $purchaseOrderId, 'order' => $xml]);
 }