Ejemplo n.º 1
0
 /**
  * returns params to capture orders
  *
  * @param object $order
  * @param array $postionIds
  * @param bool $finalize
  * @param bool $includeShipment
  * @return \Payone_Api_Request_Parameter_Capture_Business 
  */
 public function buildOrderCapture($order, $postionIds, $finalize, $includeShipment = false)
 {
     $paymentName = $order->getPayment()->getName();
     $params = $this->getAuthParameters($order->getPayment()->getId());
     $params['txid'] = $order->getTransactionId();
     $params['sequencenumber'] = $this->getParamSequencenumber($order);
     $params['amount'] = $this->getParamCaptureAmount($order, $postionIds, $includeShipment);
     $params['currency'] = $order->getCurrency();
     //create business object (used for settleaccount param)
     $business = new Payone_Api_Request_Parameter_Capture_Business();
     if ($this->payonePaymentHelper->isPayonePayInAdvance($paymentName) || $this->payonePaymentHelper->isPayoneInstantBankTransfer($paymentName)) {
         $business->setSettleaccount($finalize ? Payone_Api_Enum_Settleaccount::YES : Payone_Api_Enum_Settleaccount::NO);
     } else {
         $business->setSettleaccount($finalize ? Payone_Api_Enum_Settleaccount::YES : Payone_Api_Enum_Settleaccount::AUTO);
     }
     $params['business'] = $business;
     return $params;
 }