Пример #1
0
<?php

header('Content-type: application/json;charset=UTF-8');
include_once './func/common.php';
include_once './func/SDKConfig.php';
include_once './func/secureUtil.php';
include_once './func/encryptParams.php';
include_once './func/httpClient.php';
include_once './custom_func.php';
if (!isset($_POST['card_info'])) {
    die(json_encode(array('status' => 400, 'message' => 'Invalid input: card_info is required.')));
}
$decrypted_post_data = decrypt_post_data($_POST['card_info']);
try {
    $card_info = json_decode($decrypted_post_data, True);
} catch (Exception $e) {
    die(json_encode(array('status' => 400, 'message' => 'Error parsing post data.')));
}
$params = array('version' => '5.0.0', 'encoding' => 'GBK', 'certId' => getSignCertId(), 'signMethod' => '01', 'txnType' => '77', 'txnSubType' => '02', 'bizType' => '000301', 'channelType' => '07', 'backUrl' => $SDK_BACK_NOTIFY_URL, 'accessType' => '0', 'merId' => $SDK_MER_ID, 'orderId' => gen_order_id(), 'txnTime' => gen_order_time(), 'accType' => $card_info['acc_type'], 'accNo' => $card_info['acc_no'], 'txnAmt' => get_payment_amount(), 'currencyCode' => '156', 'customerInfo' => customerInfo_sms($card_info['acc_no'], $card_info['certif_tp'], $card_info['certif_id'], iconv("UTF-8", "gb2312", $card_info['customer_name']), $card_info['phone_no'], $card_info['pin'], $card_info['cvn2'], $card_info['expired']), 'encryptCertId' => getEncryptCertId());
// 检查字段是否需要加密
encrypt_params($params);
// 签名
sign($params);
// 发送信息到后台
$result = sendHttpRequest($params, $SDK_BACK_TRANS_URL);
$result_array = coverStringToArray($result);
if ($result_array['respCode'] != '00') {
    die(json_encode(array('status' => -1, 'message' => 'Error querying Unionpay API.', 'error_resp_code' => $result_array['respCode'], 'error_resp_msg' => iconv('gb2312', 'UTF-8', $result_array['respMsg']))));
}
echo json_encode(array('status' => 200, 'message' => 'Success'));
Пример #2
0
//header ( 'Content-type: application/json;charset=UTF-8' );
include_once './func/common.php';
include_once './func/SDKConfig.php';
include_once './func/secureUtil.php';
include_once './func/encryptParams.php';
include_once './func/httpClient.php';
if (!isset($_GET['card_info']) || !isset($_GET['redirect_url'])) {
    die(json_encode(array('status' => 400, 'message' => 'Invalid input: card_info, redirect_url are required.')));
}
$decrypted_post_data = decrypt_post_data($_GET['card_info']);
try {
    $card_info = json_decode($decrypted_post_data, True);
} catch (Exception $e) {
    die(json_encode(array('status' => 400, 'message' => 'Error parsing post data.')));
}
$params = array('version' => '5.0.0', 'encoding' => 'UTF-8', 'certId' => getSignCertId(), 'signMethod' => '01', 'txnType' => '79', 'txnSubType' => '00', 'bizType' => '000301', 'accessType' => '0', 'merId' => $SDK_MER_ID, 'txnTime' => date('YmdHis'), 'orderId' => date('YmdHis'), 'accType' => $card_info['acc_type'], 'accNo' => $card_info['acc_no'], 'customerInfo' => customerInfo_sms($card_info['acc_no'], $card_info['certif_tp'], $card_info['certif_id'], $card_info['customer_name'], $card_info['phone_no'], $card_info['pin'], $card_info['cvn2'], $card_info['expired']), 'encryptCertId' => getEncryptCertId(), 'channelType' => '07', 'backUrl' => $SDK_BACK_NOTIFY_URL, 'frontUrl' => $_GET['redirect_url']);
// 检查字段是否需要加密
encrypt_params($params);
// 签名
sign($params);
// 发送信息到后台
$result = sendHttpRequest($params, $SDK_FRONT_TRANS_URL);
/*$result_array = coverStringToArray($result);

if ($result_array['respCode'] != '00') {
	die(json_encode(array(
			'status'=>'-1',
			'message'=>'Error querying Unionpay API.',
			'error_resp_code'=>$result_array['respCode']
		)));
}