/** * {@inheritdoc} * @see Paranoia\Payment\Adapter\AdapterAbstract::buildSaleRequest() */ protected function buildSaleRequest(Request $request) { $amount = $this->formatAmount($request->getAmount()); $installment = $this->formatInstallment($request->getInstallment()); $currency = $this->formatCurrency($request->getCurrency()); $expireMonth = $this->formatExpireDate($request->getExpireMonth(), $request->getExpireYear()); $type = $this->getProviderTransactionType(self::TRANSACTION_TYPE_SALE); $requestData = array($type => array('ccno' => $request->getCardNumber(), 'expDate' => $expireMonth, 'cvc' => $request->getSecurityCode(), 'amount' => $amount, 'currencyCode' => $currency, 'orderID' => $this->formatOrderId($request->getOrderId()), 'installment' => $installment)); return $requestData; }
/** * returns transaction hash for using in transaction request. * * @param Request $request * @param string $password * @return string */ private function getTransactionHash(Request $request, $password) { $config = $this->config; $orderId = $request->getOrderId(); $terminalId = $config->terminal_id; $cardNumber = $this->isCardNumberRequired($request) ? $request->getCardNumber() : ''; $amount = $this->isAmountRequired($request) ? $this->formatAmount($request->getAmount()) : '1'; $securityData = $this->getSecurityHash($password); return strtoupper(sha1(sprintf('%s%s%s%s%s', $orderId, $terminalId, $cardNumber, $amount, $securityData))); }
/** * @see Paranoia\Payment\Adapter\AdapterAbstract::buildCancelRequest() */ protected function buildCancelRequest(Request $request) { $type = $this->getProviderTransactionType($request->getTransactionType()); $requestData = array('Type' => $type, 'OrderId' => $request->getOrderId()); if ($request->getTransactionId()) { $requestData['TransId'] = $request->getTransactionId(); } return $requestData; }
protected function buildSale3DRequest(Request $request) { $cardNumber = $this->formatCardNumber($request->getCardNumber()); $amount = $this->formatAmount($request->getAmount()); $installment = $this->formatInstallment($request->getInstallment()); $currency = $this->formatCurrency($request->getCurrency()); $expireDate = $this->formatExpireDate($request->getExpireMonth(), $request->getExpireYear()); $type = $this->getProviderTransactionType(self::TRANSACTION_TYPE_SALE_3D); $requestData = array('oosRequestData' => array('posnetid' => $this->configuration->getPosnetId(), 'ccno' => $cardNumber, 'expDate' => $expireDate, 'cvc' => $request->getSecurityCode(), 'amount' => $amount, 'currencyCode' => $currency, 'installment' => $installment, 'XID' => $request->getOrderId(), 'cardHolderName' => $request->getCardHolderName(), 'tranType' => $type)); return $requestData; }
/** * {@inheritdoc} * @see Paranoia\Payment\Adapter\AdapterAbstract::buildCancelRequest() */ protected function buildCancelRequest(Request $request) { $type = $this->getProviderTransactionType(self::TRANSACTION_TYPE_CANCEL); $requestData = array('Type' => $type, 'OrderId' => $this->formatOrderId($request->getOrderId())); if ($request->getTransactionId()) { $requestData['TransId'] = $request->getTransactionId(); } return $requestData; }