银联接口是指中国银联提供的用于实现银行间支付、查询、转账等金融交易的API接口。通过这些接口,开发者可以构建与银联网络连接的支付系统,支持多种银行卡的支付功能。
以下是一个简单的PHP示例,展示如何使用银联支付接口进行在线支付:
<?php
// 银联支付配置
$merchantId = 'your_merchant_id';
$merKey = 'your_merchant_key';
$notifyUrl = 'http://yourdomain.com/notify.php';
// 构建支付请求参数
$params = [
'version' => '1.0',
'encoding' => 'utf-8',
'certId' => 'your_cert_id',
'bizType' => '000201',
'accessType' => '0',
'merId' => $merchantId,
'orderId' => date('YmdHis') . rand(1000, 9999),
'txnTime' => date('YmdHis'),
'txnAmt' => '100',
'currencyCode' => '156',
'payMode' => '01',
'frontUrl' => 'http://yourdomain.com/front.php',
'backUrl' => $notifyUrl,
];
// 签名
$sign = sign($params, $merKey);
$params['signature'] = $sign;
// 发送支付请求
$response = sendRequest('https://api.unionpay.com/v2/payment', $params);
if ($response['respCode'] == '00') {
echo '支付请求成功,交易流水号:' . $response['txnId'];
} else {
echo '支付请求失败,错误码:' . $response['respCode'];
}
function sign($params, $merKey) {
ksort($params);
$str = '';
foreach ($params as $k => $v) {
if (!empty($v)) {
$str .= '&' . $k . '=' . $v;
}
}
$str = substr($str, 1) . '&key=' . $merKey;
return md5($str)->toUpperCase();
}
function sendRequest($url, $data) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$response = curl_exec($ch);
curl_close($ch);
return json_decode($response, true);
}
?>
通过以上信息,您可以更好地理解和实现银联接口的PHP开发。
领取专属 10元无门槛券
手把手带您无忧上云