/** * Build a payment request * @param array $parameters the parameters to build a request * @param string $transactionType the transaction type * @param strng $lang to be used * @return the request built */ static function buildPaymentRequest($parameters, $transactionType, $lang = null) { if (!isset($lang)) { $lang = PayU::$language; } $request = CommonRequestUtil::buildCommonRequest($lang, PayUCommands::SUBMIT_TRANSACTION); $transaction = null; if (TransactionType::AUTHORIZATION_AND_CAPTURE == $transactionType || TransactionType::AUTHORIZATION == $transactionType) { $transaction = RequestPaymentsUtil::buildTransactionRequest($parameters, $lang); } else { if (TransactionType::VOID == $transactionType || TransactionType::REFUND == $transactionType || TransactionType::CAPTURE == $transactionType) { $transaction = RequestPaymentsUtil::buildTransactionRequestAfterAuthorization($parameters); } } $transaction->type = $transactionType; $request->transaction = $transaction; return $request; }