通联支付php接口,php对接第三方支付--通联支付(H5版)

发布时间:2025-12-09 19:19:41 浏览次数:5

###第三方支付--通联支付

1.文档地址:通联H5对接文档

2.对接流程:用户注册请求接口-->页面订单提交接口-->支付结果回调接口

# 整理数据

MCHTID = $setting['payment']['allinpay']['merchantId'];

self::$receiveUrl = trim($setting['payment']['allinpay']['receiveUrl']);

self::$pickupUrl = trim($setting['payment']['allinpay']['pickupUrl']);

}

public function postdata($order_id){

if($order_id==''){

return false;

}

// 字符集(注意顺序&文档地址:http://www.allinpaysupport.com/news_show.aspx?id=110)

//基本必填数据

$data['inputCharset'] = 1;//表示utf-8格式

$data['pickupUrl'] = self::$pickupUrl; // 跳转地址

$data['receiveUrl'] = self::$receiveUrl;// 回调通知

$data['version'] = "v1.0"; // 版本

$data['language'] = 1; // 语言

$data['signType'] = 0;//默认填 0 md5验证,1 证书验证;

// 商户号

$data['merchantId'] = $this->MCHTID;

// 订单号

$orderInfo = pdo_get('ewei_shop_order',['id'=>$order_id],['ordersn','price']);

$data['orderNo'] = $orderInfo['ordersn'];

// 订单总金额

//$data['orderAmount'] = (int)$orderInfo['price']*100;//强制转换整型

$data['orderAmount'] = 1;//强制转换整型

$data['orderCurrency'] = 0; // 0 和 156 代表人民币、840 代表美元、344 代表港币,跨境支付商户不建议使用 0

// 提交时间

$data['orderDatetime'] = date('YmdHis');

// 通联用户id

$allinpay_uid = self::reg_data();

$data['ext1'] = "$allinpay_uid"; // H5必须带这个参数

$data['ext2'] = "first";//商户自定义通联会原样fanh

//$data['ext1'] = "180324786448063"; // H5必须带这个参数

// 支付类型

$data['payType'] = 33; // H5支付

$data['signMsg'] = self::sign($data);

return $data;

}

//签名处理

public static function sign($data){

return com('Allinpay')->signdata($data);

}

//注册会员

public function reg_data(){

$mid = m('member')->getMid();//获取用户id

$data['signType'] = 0;

$data['merchantId'] = $this->MCHTID;

// 用户id

$data['partnerUserId'] =$mid;

$data['signMsg'] =com('Allinpay')->signdata2($data);

//H5必须注册&模拟post提交数据

$url = "https://cashier.allinpay.com/usercenter/merchant/UserInfo/reg.do";

load()->func('communication');//微擎自带curl

$result = ihttp_request($url,$data);

$allinpay_uid=json_decode($result['content'],true);

return $allinpay_uid['userId'];

}

//验签处理

// public static function checksign($data){

// $check=com('Allinpay')->verify_sign($data);

// $check_one=com('Allinpay')->verify_sign($data_one);

// }

}

loadX509($certfile);

$pubkey = $x509->getPublicKey();

$rsa = new Crypt_RSA();

$rsa->loadKey($pubkey); // public key

$rsa->setSignatureMode(CRYPT_RSA_SIGNATURE_PKCS1);

$verifyResult = $rsa->verify($bufSignSrc, base64_decode(trim($signMsg)));

$value = null;

//

// return strtoupper(md5($bufSignSrc));

// }

}

需要做网站?需要网络推广?欢迎咨询客户经理 13272073477