以下是一个简单的PHP代码实例,用于对接建行App内部使用H5网页支付:

<?php
// 定义请求参数
$merchantNo = '商户号';
$orderNo = '订单号';
$orderAmount = '订单金额';
$payType = '支付方式';
$notifyUrl = '异步通知地址';
$returnUrl = '支付完成返回地址';

// 构建请求参数数组
$params = array(
    'merchantNo' => $merchantNo,
    'orderNo' => $orderNo,
    'orderAmount' => $orderAmount,
    'payType' => $payType,
    'notifyUrl' => $notifyUrl,
    'returnUrl' => $returnUrl
);

// 生成签名
$sign = generateSign($params);

// 将签名加入请求参数数组
$params['sign'] = $sign;

// 将请求参数数组转换成JSON字符串
$data = json_encode($params);

// 发起请求
$response = sendRequest($data);

// 处理响应结果
$result = json_decode($response, true);
if ($result['resultCode'] == '00') {
    // 支付成功,跳转到支付页面
    header('Location: ' . $result['payUrl']);
} else {
    // 支付失败,处理错误信息
    echo '支付失败:' . $result['resultMsg'];
}

/**
 * 生成签名
 */
function generateSign($params)
{
    // 按照参数名的字母顺序排序
    ksort($params);

    // 拼接参数名和参数值
    $signData = '';
    foreach ($params as $key => $value) {
        $signData .= $key . '=' . $value . '&';
    }

    // 添加商户密钥
    $signData .= '商户密钥';

    // 计算签名(使用MD5加密)
    $sign = md5($signData);

    return $sign;
}

/**
 * 发送请求
 */
function sendRequest($data)
{
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, '建行支付接口URL');
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array(
        'Content-Type: application/json',
        'Content-Length: ' . strlen($data)
    ));
    $response = curl_exec($ch);
    curl_close($ch);

    return $response;
}
?>

在上面的代码中,你需要替换以下变量的值:

  • 商户号:你的商户号
  • 订单号:每个订单的唯一标识
  • 订单金额:订单的金额
  • 支付方式:支付方式,如01表示网银支付,02表示微信支付,03表示支付宝支付等
  • 异步通知地址:支付结果异步通知的URL地址
  • 支付完成返回地址:支付完成后返回的URL地址
  • 商户密钥:你的商户密钥
  • 建行支付接口URL:建行支付接口的URL

请确保你已经在建行支付平台上注册了商户账号,并且已经获得了商户号和商户密钥。此外,你还需要在建行支付平台上创建一个H5网页支付接口,并获取到接口的URL

php对接建行app内部使用h5网页支付 代码实现

原文地址: https://www.cveoy.top/t/topic/iSii 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录