コード例 #1
0
ファイル: AuthDeal.php プロジェクト: wjyGamedev/xuezhiweb
<?php

header('Content-type:text/html;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 '../func/log.class.php';
/**
 * 预授权交易
 */
/**
 *	以下代码只是为了方便商户测试而提供的样例代码,商户可以根据自己需要,按照技术文档编写。该代码仅供参考
 */
// 初始化日志
$log = new PhpLog(SDK_LOG_FILE_PATH, "PRC", SDK_LOG_LEVEL);
$log->LogInfo("===========处理后台请求开始============");
$params = array('version' => '5.0.0', 'encoding' => 'utf-8', 'certId' => getSignCertId(), 'signMethod' => '01', 'txnType' => '02', 'txnSubType' => '00', 'bizType' => '000000', 'channelType' => '07', 'backUrl' => SDK_BACK_TRANS_URL, 'accessType' => '0', 'merId' => '898340183980105', 'subMerId' => '', 'subMerName' => '', 'subMerAbbr' => '', 'orderId' => date('YmdHis'), 'txnTime' => date('YmdHis'), 'accType' => '', 'accNo' => '', 'txnAmt' => '1', 'currencyCode' => '156', 'customerInfo' => customerInfo(), 'termId' => '', 'reqReserved' => '', 'reserved' => '', 'riskRateInfo' => '', 'encryptCertId' => '', 'instalTransInfo' => '', 'issInsCode' => '', 'userMac' => '', 'cardTransData' => '', 'vpcTransData' => '', 'orderDesc' => '');
// 检查字段是否需要加密
encrypt_params($params);
// 签名
sign($params);
$log->LogInfo("后台请求地址为>" . SDK_BACK_TRANS_URL);
// 发送信息到后台
$result = sendHttpRequest($params, SDK_BACK_TRANS_URL);
$log->LogInfo("后台返回结果为>" . $result);
//返回结果展示
$result_arr = coverStringToArray($result);
$html = create_html($result_arr, SDK_BACK_NOTIFY_URL);
echo $html;
コード例 #2
0
ファイル: CreateBinding.php プロジェクト: vasiliki02/le2le
		//商户类型为平台类商户接入时必须上送
		'subMerId'=> '',//二级商户代码--C
		//商户类型为平台类商户接入时必须上送
		'subMerName'=> '',//二级商户名称--C
		//商户类型为平台类商户接入时必须上送
		'subMerAbbr'=> '',//二级商户简称--C
		// 
		'orderId'=> date('YmdHis'),//商户订单号--M
		// 
		'txnTime'=> date('YmdHis'),//订单发送时间--M
		// 
		'accType'=> '',//账号类型--O
		//对于前台类交易,返回卡号后4位,后台类交易,原样返回
		'accNo'=> '',//账号--O
		// 
		'customerInfo'=> customerInfo(),//银行卡验证信息及身份信息--O
		//商户自定义保留域,交易应答时会原样返回
		'reqReserved'=> '',//请求方保留域--O
		//格式如下:{子域名1=值&子域名2=值&子域名3=值} 移动支付参考消费委托关系信息 {bindInfo=XXXXX}  特殊商户上送
		'reserved'=> '',//保留域--O
		//格式如下:{子域名1=值&子域名2=值&子域名3=值}有风险级别要求的商户必填 风险级别 {riskLevel=XX}
		'riskRateInfo'=> '',//风险信息域--O
		//当使用银联公钥加密密码等信息时,需上送加密证书的CertID
		'encryptCertId'=> '',//加密证书ID--C
		//移动支付业务需要上送
		'userMac'=> '',//终端信息域--O
		//需做建立委托交易时填写
		'bindId'=> '',//委托关系标识号--M
		//用于填写关联业务类型01:消费02:代收
		'relTxnType'=> '',//关联业务标识--C
		// 
コード例 #3
0
ファイル: pay.php プロジェクト: Chion82/Unionpay_PHP_API
<?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' => '01', 'txnSubType' => '01', 'bizType' => '000301', 'channelType' => '07', 'backUrl' => $SDK_BACK_NOTIFY_URL, 'accessType' => '0', 'merId' => $SDK_MER_ID, 'orderId' => get_order_id(), 'txnTime' => get_order_time(), 'accType' => $card_info['acc_type'], 'accNo' => $card_info['acc_no'], 'txnAmt' => get_payment_amount(), 'currencyCode' => '156', 'customerInfo' => customerInfo($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['sms_code'], $card_info['pin'], $card_info['cvn2'], $card_info['expired']), 'reqReserved' => gen_callback_reserved_string(), 'encryptCertId' => getEncryptCertId(), 'payCardType' => $card_info['card_type']);
// 检查字段是否需要加密
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.', 'error_resp_code' => $result_array['respCode'], 'error_resp_msg' => iconv('gb2312', 'UTF-8', $result_array['respMsg']))));
}
echo json_encode(array('status' => 200, 'message' => 'Success'));