本文整理汇总了PHP中fn_check_payment_script函数的典型用法代码示例。如果您正苦于以下问题:PHP fn_check_payment_script函数的具体用法?PHP fn_check_payment_script怎么用?PHP fn_check_payment_script使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了fn_check_payment_script函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: fn_paypal_complete_checkout
function fn_paypal_complete_checkout($token, $processor_data, $order_info)
{
$pp_response['order_status'] = 'F';
$reason_text = '';
$paypal_checkout_details = fn_paypal_get_express_checkout_details($processor_data, $token);
if (fn_paypal_ack_success($paypal_checkout_details)) {
$result = fn_paypal_do_express_checkout($processor_data, $paypal_checkout_details, $order_info);
if (fn_paypal_ack_success($result)) {
$status = $result['PAYMENTINFO_0_PAYMENTSTATUS'];
$pp_response['transaction_id'] = $result['PAYMENTINFO_0_TRANSACTIONID'];
if ($status == 'Completed' || $status == 'Processed') {
$pp_response['order_status'] = 'O';
$reason_text = 'Accepted, awaiting ipn for processing ';
} elseif ($status == 'Pending') {
$pp_response['order_status'] = 'O';
$reason_text = 'Pending ';
} else {
$reason_text = 'Declined ';
}
$reason_text = fn_paypal_process_add_fields($result, $reason_text);
if (!empty($result['L_ERRORCODE0'])) {
$reason_text .= ', ' . fn_paypal_get_error($result);
}
} else {
$reason_text = fn_paypal_get_error($result);
}
} else {
$reason_text = fn_paypal_get_error($paypal_checkout_details);
}
$pp_response['reason_text'] = $reason_text;
if (fn_check_payment_script($processor_data['processor_script'], $order_info['order_id'])) {
unset($_SESSION['pp_express_details']);
fn_finish_payment($order_info['order_id'], $pp_response);
fn_order_placement_routines('route', $order_info['order_id'], false);
}
}
示例2: fn_get_processor_data
$res_desc = $_POST['RESPMSG'];
$checksum_recv = $_POST['CHECKSUMHASH'];
$paramList = $_POST;
if (fn_check_payment_script('paytm.php', $order_id, $processor_data)) {
if (empty($processor_data)) {
$processor_data = fn_get_processor_data($order_info['email']);
}
$secret_key = $processor_data["processor_params"]['secret_key'];
$bool = "FALSE";
$bool = verifychecksum_e($paramList, $secret_key, $checksum_recv);
$paytmTxnIdText = "";
if (isset($_POST['TXNID']) && !empty($_POST['TXNID'])) {
$paytmTxnIdText = " Paytm Transaction Id : " . $_POST['TXNID'];
}
if (!empty($order_id)) {
if (fn_check_payment_script('paytm.php', $order_id, $processor_data)) {
$pp_response = array();
$order_info = fn_get_order_info($order_id);
if ($bool == "TRUE") {
if ($_REQUEST['RESPCODE'] == 01) {
$pp_response['order_status'] = 'P';
$pp_response['reason_text'] = "Thank you. Your order has been processed successfully." . $paytmTxnIdText;
} else {
$pp_response['order_status'] = 'F';
$pp_response['reason_text'] = "Thank you. Your order has been unsuccessfull" . $paytmTxnIdText;
}
} else {
$pp_response['order_status'] = 'D';
$pp_response['reason_text'] = "Thank you. Your order has been declined due to security reasons." . $paytmTxnIdText;
}
fn_change_order_status($order_id, $pp_response['order_status']);
示例3: __
}
} else {
$pp_response['order_status'] = 'F';
if ($_REQUEST['md5sig'] != $our_md5sig) {
$pp_response['reason_text'] .= __('mb_md5_hashes_not_match');
}
if (!$adjusted_order_total) {
$pp_response['reason_text'] .= __('text_unsupported_currency');
} elseif ($_REQUEST['amount'] != $adjusted_order_total) {
$pp_response['reason_text'] .= __('mb_amounts_not_match');
}
if ($_REQUEST['currency'] != $processor_data['processor_params']['currency']) {
$pp_response['reason_text'] .= __('mb_currencies_not_match');
}
}
if (fn_check_payment_script('skrill_ewallet.php', $_REQUEST['order_id'])) {
fn_finish_payment($_REQUEST['order_id'], $pp_response);
}
exit;
}
} else {
$url = 'https://www.moneybookers.com/app/payment.pl';
$suffix = AREA != 'A' && empty($order_info['repaid']) && defined('IFRAME_MODE') ? '&iframe_mode=true' : '';
$post_data = array('pay_to_email' => $processor_data['processor_params']['pay_to_email'], 'recipient_description' => $processor_data['processor_params']['recipient_description'], 'transaction_id' => $processor_data['processor_params']['order_prefix'] . (!empty($order_info['repaid']) ? $order_id . '_' . $order_info['repaid'] : $order_id), 'return_url' => fn_url("payment_notification.return?payment=skrill_ewallet&order_id={$order_id}{$suffix}", AREA, 'current'), 'return_url_text' => '', 'cancel_url' => fn_url("payment_notification.cancel?payment=skrill_ewallet&order_id={$order_id}{$suffix}", AREA, 'current'), 'status_url' => fn_url("payment_notification.status?payment=skrill_ewallet&order_id={$order_id}{$suffix}", AREA, 'current'), 'language' => $processor_data['processor_params']['language'], 'amount' => $order_info['total'], 'currency' => $processor_data['processor_params']['currency'], 'return_url_target' => '_parent', 'cancel_url_target' => '_parent', 'merchant_fields' => 'platform,mb_sess_id,inner_order_id', 'mb_sess_id' => base64_encode(Tygh::$app['session']->getID()), 'inner_order_id' => $order_id, 'platform' => '21477207');
$post_data['amount'] = fn_mb_adjust_amount($post_data['amount'], $post_data['currency']);
if (!$post_data['amount']) {
if (!empty($suffix)) {
echo __('text_unsupported_currency');
} else {
fn_set_notification('E', __('error'), __('text_unsupported_currency'));
$url = fn_url("payment_notification.unsupported_currency?payment=skrill_ewallet&order_id={$order_id}", AREA, 'current');
示例4: die
//
if (!defined('AREA')) {
die('Access denied');
}
if (defined('PAYMENT_NOTIFICATION')) {
// to avoid bug with the '?' sign
foreach ($_REQUEST as $k => $v) {
if (preg_match("/\\?/", $v)) {
$tmp = explode('?', $v);
$_REQUEST[$k] = $tmp[0];
$tmp = explode('=', $tmp[1]);
$_REQUEST[$tmp[0]] = $tmp[1];
}
}
$order_id = $_REQUEST['order_id'];
if (!fn_check_payment_script('itransact_split_form.php', $order_id, $processor_data)) {
exit;
}
$order_info = fn_get_order_info($order_id);
$pp_response = array();
$check_cntrl = md5('CNTRL_VALUE' . $order_id . $processor_data['params']['merchant_name'] . $order_info['total'] . $processor_data['params']['secret_key']);
if (!empty($_REQUEST['xid']) && preg_match("/\\d+/", $_REQUEST['xid']) && $check_cntrl == $_REQUEST['cntrl']) {
$pp_response['order_status'] = 'P';
$pp_response['reason_text'] = fn_get_lang_var('transaction_approved');
$pp_response['transaction_id'] = $_REQUEST['xid'];
} else {
$pp_response['order_status'] = 'F';
$pp_response['reason_text'] = fn_get_lang_var('transaction_declined');
}
fn_finish_payment($order_id, $pp_response);
fn_order_placement_routines($order_id);
示例5: unset
}
} else {
$pp_response['order_status'] = 'F';
$pp_response['reason_text'] = '';
}
if (!empty($response['Status'])) {
$pp_response['reason_text'] = 'Status: ' . @$response['StatusDetail'] . ' (' . $response['Status'] . ') ';
}
if (!empty($response['VPSTxId'])) {
$pp_response['transaction_id'] = $response['VPSTxId'];
}
if (!empty($response['AVSCV2']) && $response['AVSCV2'] != 'DATA NOT CHECKED') {
$pp_response['reason_text'] .= ' (AVS/CVV2: {' . $response['AVSCV2'] . '}) ';
}
if (!empty($response['AddressResult']) && $response['AddressResult'] != 'NOTPROVIDED') {
$pp_response['reason_text'] .= ' (Address: {' . $response['AddressResult'] . '}) ';
}
if (!empty($response['PostCodeResult']) && $response['PostCodeResult'] != 'NOTPROVIDED') {
$pp_response['reason_text'] .= ' (PostCode: {' . $response['PostCodeResult'] . '}) ';
}
if (!empty($response['CV2Result']) && $response['CV2Result'] != 'NOTPROVIDED') {
$pp_response['reason_text'] .= ' (CV2: {' . $response['CV2Result'] . '}) ';
}
if (!empty($response['3DSecureStatus'])) {
$pp_response['reason_text'] .= ' (3D Result: {' . $response['3DSecureStatus'] . '}) ';
}
if (!empty($secure_verified_3d) && !empty($order_id) && fn_check_payment_script('sagepay_direct.php', $order_id) == true) {
unset($_SESSION['already_posted']);
fn_finish_payment($order_id, $pp_response, false);
fn_order_placement_routines('route', $order_id);
}
示例6: fn_order_placement_routines
fn_order_placement_routines('route', $_REQUEST['order_id']);
}
// Fraud checking notification
} elseif (!empty($_REQUEST['message_type']) && $_REQUEST['message_type'] == 'FRAUD_STATUS_CHANGED') {
if (!empty($_REQUEST['vendor_order_id'])) {
list($order_id) = explode('_', $_REQUEST['vendor_order_id']);
if (!empty($order_id)) {
$payment_id = db_get_field("SELECT payment_id FROM ?:orders WHERE order_id = ?i", $order_id);
$processor_data = fn_get_payment_method_data($payment_id);
$pp_response = array();
if ($_REQUEST['fraud_status'] == 'pass') {
$pp_response['order_status'] = 'P';
} elseif ($_REQUEST['fraud_status'] == 'fail') {
$pp_response['order_status'] = $processor_data['processor_params']['fraud_fail'];
}
if (!empty($pp_response) && fn_check_payment_script('2checkout.php', $order_id)) {
fn_finish_payment($order_id, $pp_response);
}
}
}
}
exit;
} else {
$__bstate = $order_info['b_state'];
if ($order_info['b_country'] != 'US' && $order_info['b_country'] != 'CA') {
$__bstate = "XX";
}
$__sstate = @$order_info['s_state'];
if ($order_info['s_country'] != 'US' && $order_info['s_country'] != 'CA') {
$__sstate = "XX";
}
示例7: md5
$key = md5($processor_data['processor_params']['key2'] . md5($processor_data['processor_params']['key1'] . 'transact=' . $_REQUEST['transact'] . '&amount=' . $amount . '¤cy=' . $processor_data['processor_params']['currency']));
$key_with_fee = md5($processor_data['processor_params']['key2'] . md5($processor_data['processor_params']['key1'] . 'transact=' . $_REQUEST['transact'] . '&amount=' . $amount_with_fee . '¤cy=' . $processor_data['processor_params']['currency']));
}
if (!empty($_REQUEST['transact']) && ($_REQUEST['authkey'] == $key || $_REQUEST['authkey'] == $key_with_fee)) {
$pp_response['order_status'] = 'P';
$pp_response['reason_text'] = __('transaction_approved');
$pp_response['transaction_id'] = $_REQUEST['transact'];
} else {
$pp_response['order_status'] = 'F';
$pp_response['reason_text'] = __('transaction_declined');
}
} else {
$pp_response['order_status'] = 'F';
$pp_response['reason_text'] = __('transaction_declined');
}
if (fn_check_payment_script('dibs.php', $order_id)) {
fn_finish_payment($order_id, $pp_response);
fn_order_placement_routines('route', $order_id);
}
} else {
$currencies = array(208 => 'DKK', 978 => 'EUR', 840 => 'USD', 826 => 'GBP', 752 => 'SEK', 036 => 'AUD', 124 => 'CAD', 352 => 'ISK', 392 => 'JPY', 554 => 'NZD', 578 => 'NOK', 756 => 'CHF', 949 => 'TRY');
$languages = array("da", "sv", "no", "en", "nl", "de", "fr", "fi", "es", "it", "fo", "pl");
$post_address = "https://payment.architrade.com/paymentweb/start.action";
$msg = __('text_cc_processor_connection', array('[processor]' => 'DIBS'));
$lang_code = Registry::get('settings.Appearance.backend_default_language');
$post = array();
$post['order_id'] = $processor_data['processor_params']['order_prefix'] . ($order_info['repaid'] ? $order_id . '_' . $order_info['repaid'] : $order_id);
$post['currency'] = $processor_data['processor_params']['currency'];
$post['amount'] = $order_info['total'] * 100;
$post['accepturl'] = fn_url("payment_notification.accept?payment=dibs&order_id={$order_id}", AREA, 'current');
$post['cancelurl'] = fn_url("payment_notification.cancel?payment=dibs&order_id={$order_id}", AREA, 'current');
示例8: array
$pp_response = array();
if ($status[1] == 'Success') {
$pp_response['order_status'] = 'P';
} elseif ($status[1] == 'Open') {
$pp_response['order_status'] = 'O';
} elseif ($status[1] == 'Cancelled') {
$pp_response['order_status'] = 'I';
} else {
$pp_response['order_status'] = 'F';
}
$pp_response['reason_text'] = "Status code: " . $status[1];
$dat = $date[1];
$time = $dat[0] . $dat[1] . $dat[2] . $dat[3] . '-' . $dat[4] . $dat[5] . '-' . $dat[6] . $dat[7] . ' ' . $dat[8] . $dat[9] . ':' . $dat[10] . $dat[11] . ':' . $dat[12] . $dat[13];
$pp_response['reason_text'] .= " (TimeStamp: " . $time . ")";
$pp_response['transaction_id'] = $transaction[1];
if (fn_check_payment_script('ideal_basic.php', $order_id)) {
fn_finish_payment($order_id, $pp_response);
// Force customer notification
}
}
}
} else {
$langs = array("US" => "en_US", "FR" => "fr_FR", "NL" => "nl_NL", "IT" => "it_IT", "DE" => "de_DE", "ES" => "es_ES", "NO" => "no_NO", "en" => "en_EN");
$validUntil = date("Y-m-d\\TH:i:s", time() + 3600 + date('Z'));
$validUntil = $validUntil . ".000Z";
$pp_merch = $processor_data['processor_params']['merchant_id'];
$pp_secret = $processor_data['processor_params']['merchant_key'];
$pp_curr = $processor_data['processor_params']['currency'];
$pp_test = $processor_data['processor_params']['test'] == 'TRUE' ? "https://idealtest.secure-ing.com/ideal/mpiPayInitIng.do" : "https://ideal.secure-ing.com/ideal/mpiPayInitIng.do";
$pp_lang = $processor_data['processor_params']['language'];
$order_total = $order_info['total'] * 100;
示例9: PxAccess
$pxaccess = new PxAccess($PxAccess_Url, $PxAccess_Userid, $PxAccess_Key, $Mac_Key);
$enc_hex = $result;
//getResponse method in PxAccess object returns PxPayResponse object
//which encapsulates all the response data
$rsp = $pxaccess->getResponse($enc_hex);
$order_alias = $rsp->getMerchantReference();
$order_id = strpos($order_alias, '_') ? substr($order_alias, 0, strpos($order_alias, '_')) : $order_alias;
$pp_response = array();
$pp_response['order_status'] = $rsp->getSuccess() == "1" ? 'P' : 'F';
$pp_response['reason_text'] = $rsp->getResponseText();
if ($pp_response['order_status'] == 'P') {
$pp_response['reason_text'] .= "; Auth code: " . $rsp->getAuthCode();
// from bank
}
$pp_response['transaction_id'] = $rsp->getDpsTxnRef();
if (fn_check_payment_script('dps_access.php', $order_id)) {
fn_finish_payment($order_id, $pp_response, false);
}
fn_order_placement_routines($order_id);
}
} elseif (isset($_REQUEST['result'])) {
DEFINE('AREA', 'C');
DEFINE('AREA_NAME', 'customer');
require './../prepare.php';
require './../init.php';
$_SESSION['dps_access']['result'] = $_REQUEST['result'];
fn_redirect(Registry::get('config.current_location') . '/' . Registry::get('config.customer_index') . "?dispatch=payment_notification.notify&payment=dps_access&order_id={$_SESSION['dps_access']['order_id']}");
} else {
if (!defined('AREA')) {
die('Access denied');
}
示例10: strpos
****************************************************************************/
if (!defined('BOOTSTRAP')) {
require './init_payment.php';
$order_id = strpos($_REQUEST['strCartID'], '_') ? substr($_REQUEST['strCartID'], 0, strpos($_REQUEST['strCartID'], '_')) : $_REQUEST['strCartID'];
if (!isset($_REQUEST['intAccountID'])) {
fn_order_placement_routines('route', $order_id);
} else {
$pp_response = array();
if (empty($_REQUEST['intStatus'])) {
$pp_response['order_status'] = 'F';
$pp_response['reason_text'] = __('failed');
} elseif ($_REQUEST['intStatus'] == 1) {
$pp_response['order_status'] = 'P';
$pp_response['reason_text'] = __('order_id') . '-' . $order_id;
} else {
$pp_response['order_status'] = 'N';
$pp_response['reason_text'] = __('cancelled');
}
$pp_response['transaction_id'] = $_REQUEST['intTransID'];
if (fn_check_payment_script('mcpe.php', $order_id)) {
fn_finish_payment($order_id, $pp_response);
}
}
} else {
$test = $processor_data['processor_params']['mode'];
$_order_id = $order_info['repaid'] ? $order_id . '_' . $order_info['repaid'] : $order_id;
$submit_url = 'https://secure.metacharge.com/mcpe/purser';
$post_data = array('intTestMode' => $test, 'intInstID' => $processor_data['processor_params']['merchant_id'], 'strCartID' => $_order_id, 'fltAmount' => $order_info['total'], 'strCurrency' => $processor_data['processor_params']['currency'], 'strDesc' => "Payment for Order {$order_id}");
fn_create_payment_form($submit_url, $post_data, 'metacharge.com server');
}
exit;
示例11: elseif
if (!empty($_REQUEST['numauto'])) {
$pp_response["order_status"] = 'P';
$pp_response["reason_text"] = "NumAuto: " . $_REQUEST['numauto'];
} else {
$pp_response["order_status"] = 'F';
$pp_response["reason_text"] = "Response code: ";
if (!empty($processor_error[$_REQUEST['erreur']])) {
$pp_response["reason_text"] .= $processor_error[$_REQUEST['erreur']];
} elseif (strstr($_REQUEST['erreur'], '001') == true) {
$pp_response["reason_text"] .= $processor_error["001xx"];
} else {
$pp_response["reason_text"] .= $_REQUEST['erreur'];
}
}
$pp_response['transaction_id'] = $_REQUEST['transac'];
if (fn_check_payment_script('paybox.php', $order_id)) {
fn_finish_payment($order_id, $pp_response);
}
exit;
}
} else {
$paybox_script = Registry::get('config.http_location') . "/payments/paybox_files/modulev2.cgi";
$pbx_devise = $processor_data['params']['currency'];
$r_url = Registry::get('config.current_location') . "/{$index_script}?dispatch=payment_notification.process&payment=paybox&order_id={$order_id}&sl=" . CART_LANGUAGE;
$pbx_annule = $r_url;
$pbx_effectue = $r_url;
$pbx_refuse = $r_url;
$pbx_retour = "montant:M;ref:R;numauto:A;transac:T;erreur:E;maref:R;";
$pbx_total = $order_info['total'] * 100;
$pbx_cmd = $order_info['repaid'] ? $order_id . '_' . $order_info['repaid'] : $order_id;
echo <<<EOT
示例12: array
}
$post_data = array();
$post_data_values = array('mid', 'orderid', 'status', 'orderAmount', 'currency', 'paymentTotal', 'riskScore', 'payMethod', 'txId', 'paymentRef');
foreach ($post_data_values as $post_data_value) {
if (isset($_REQUEST[$post_data_value])) {
$post_data[] = $_REQUEST[$post_data_value];
}
}
$digest = base64_encode(sha1(implode('', $post_data) . $processor_data['processor_params']['shared_secret'], true));
if ($_REQUEST['status'] == 'CAPTURED') {
$pp_response['order_status'] = 'P';
$pp_response['reason_text'] = __('transaction_approved');
$pp_response['transaction_id'] = $_REQUEST['paymentRef'];
}
}
if (fn_check_payment_script('alpha_bank.php', $order_id)) {
fn_finish_payment($order_id, $pp_response);
fn_order_placement_routines('route', $order_id);
}
} else {
if ($processor_data['processor_params']['mode'] == 'test') {
$payment_url = 'https://alpha.test.modirum.com/vpos/shophandlermpi';
} else {
$payment_url = 'https://www.alphaecommerce.gr/vpos/shophandlermpi';
}
$amount = fn_format_price($order_info['total'], $processor_data['processor_params']['currency']);
$confirm_url = fn_url("payment_notification.success?payment=alpha_bank&order_id={$order_id}", AREA, 'current');
$cancel_url = fn_url("payment_notification.fail?payment=alpha_bank&order_id={$order_id}", AREA, 'current');
$post_data = array('mid' => $processor_data['processor_params']['merchant_id'], 'lang' => $processor_data['processor_params']['language'], 'orderid' => time() . $order_id, 'orderDesc' => '#' . $order_id, 'orderAmount' => $amount, 'currency' => $processor_data['processor_params']['currency'], 'payerEmail' => $order_info['email'], 'payerPhone' => $order_info['b_phone'], 'trType' => '1', 'confirmUrl' => $confirm_url, 'cancelUrl' => $cancel_url);
$post_data['digest'] = base64_encode(sha1(implode('', $post_data) . $processor_data['processor_params']['shared_secret'], true));
fn_create_payment_form($payment_url, $post_data, 'Alpha Bank', false);
示例13: fn_get_order_info
if ($mode == 'notify') {
$order_info = fn_get_order_info($_REQUEST['order_id']);
if ($order_info['status'] == 'O') {
$pp_response = array();
$pp_response['order_status'] = 'F';
$pp_response['reason_text'] = 'No response recieved';
fn_finish_payment($_REQUEST['order_id'], $pp_response, false);
}
fn_order_placement_routines('route', $_REQUEST['order_id']);
} elseif ($mode == 'tvp') {
$msg = __('epassporte_msg');
$pp_response = array();
$pp_response['order_status'] = substr($_REQUEST['ans'], 0, 1) == 'Y' ? 'P' : 'F';
$pp_response['reason_text'] = __('order_id') . '-' . $_REQUEST['order_id'];
$pp_response['transaction_id'] = $_REQUEST['credit_trans_idx'];
if (fn_check_payment_script('epassporte.php', $_REQUEST['order_id'])) {
fn_finish_payment($_REQUEST['order_id'], $pp_response);
}
echo <<<EOT
<form method="post" action="https://www.epassporte.com/secure/eppurchaseverify.cgi" name="process">
<input type="hidden" name="credit_trans_idx" value="{$credit_trans_idx}">
<input type="hidden" name="debit_trans_idx" value="{$debit_trans_idx}">
<input type="hidden" name="total_amount" value="{$total_amount}">
<input type="hidden" name="action" value="verify">
<input type="hidden" name="msg" value="{$msg}">
</form>
<script type="text/javascript">
window.onload = function(){
document.process.submit();
};
</script>
示例14: __
$pp_response['reason_text'] = __('kupivkredit_widget_incomplete');
} elseif ($decision == 'closed') {
$pp_response['order_status'] = 'I';
$pp_response['reason_text'] = __('kupivkredit_widget_closed');
} elseif ($decision == 'rej') {
$pp_response['order_status'] = 'D';
$pp_response['reason_text'] = __('kupivkredit_widget_bank_reject');
} elseif ($decision == 'ver') {
$pp_response['order_status'] = 'O';
$pp_response['reason_text'] = __('kupivkredit_widget_open');
} elseif ($decision == 'agr') {
$pp_response['order_status'] = 'P';
$pp_response['reason_text'] = __('kupivkredit_widget_processed');
}
}
if (fn_check_payment_script('kupivkredit.php', $order_id)) {
fn_finish_payment($order_id, $pp_response);
fn_order_placement_routines('route', $order_id, false);
}
} else {
$url = $processor_data['processor_params']['test'] == 'Y' ? 'https://' . KVK_WIDGET_TEST_URL : 'https://' . KVK_WIDGET_URL;
$kvk_order_id = ($order_info['repaid'] ? $order_info['order_id'] . '_' . $order_info['repaid'] : $order_info['order_id']) . '_' . fn_date_format(time(), '%H_%M_%S');
//We should save this iformation for the actions such as 'confirm order', 'cancel order' in the admin area.
fn_update_order_payment_info($order_id, array('kvk_order_id' => $kvk_order_id));
$order = array();
foreach ($order_info['products'] as $k => $item) {
$price = fn_format_price(($item['subtotal'] - fn_external_discounts($item)) / $item['amount']);
$order['items'][] = array('title' => $item['product'], 'category' => db_get_field("SELECT ?:category_descriptions.category FROM ?:category_descriptions LEFT JOIN ?:products_categories ON ?:category_descriptions.category_id = ?:products_categories.category_id WHERE ?:products_categories.product_id = ?i AND ?:products_categories.link_type = ?s AND ?:category_descriptions.lang_code = ?s", $item['product_id'], 'M', $order_info['lang_code']), 'qty' => $item['amount'], 'price' => fn_format_rate_value($price, 'F', 0, '.', '', ''));
}
if (!empty($order_info['shipping_cost'])) {
$order['items'][] = array('title' => __('shipping_cost'), 'category' => '', 'qty' => 1, 'price' => fn_format_rate_value($order_info['shipping_cost'], 'F', 0, '.', '', ''));
示例15: array
$order_status = 'P';
$pp_response = array('order_status' => $order_status);
if (!empty($processor_data['processor_params']['postponed_payments_enabled']) && $processor_data['processor_params']['postponed_payments_enabled'] == 'Y') {
$pp_response['order_status'] = $processor_data['processor_params']['unconfirmed_order_status'];
$pp_response['yandex_postponed_payment'] = true;
$pp_response['yandex_invoice_id'] = $invoiceId;
$pp_response['yandex_merchant_order_id'] = $_REQUEST['merchant_order_id'];
}
if (fn_check_payment_script('yandex_money.php', $order_id)) {
fn_finish_payment($order_id, $pp_response);
}
} else {
$code = 1;
$pp_response['order_status'] = 'N';
$pp_response["reason_text"] = __('error');
if (fn_check_payment_script('yandex_money.php', $order_id)) {
fn_finish_payment($order_id, $pp_response, false);
}
}
$dom = new DOMDocument('1.0', 'utf-8');
$item = $dom->createElement('paymentAvisoResponse');
$item->setAttribute('performedDatetime', $date_time);
$item->setAttribute('code', $code);
$item->setAttribute('invoiceId', $invoiceId);
$item->setAttribute('shopId', $shop_id);
$dom->appendChild($item);
echo $dom->saveXML();
if (!empty($processor_data['processor_params']['logging']) && $processor_data['processor_params']['logging'] == 'Y') {
fn_yandex_money_log_write($dom->saveXML(), 'ym_payment_aviso.log');
}
exit;