第三方 |
token |
openid |
支付 |
回调 |
退款 |
订单查询 |
解密手机号 |
分账 |
模版消息 |
微信小程序 |
✓ |
✓ |
✓ |
✓ |
✓ |
✓ |
✓ |
x |
✓ |
微信 h5 |
x |
x |
✓ |
✓ |
✓ |
✓ |
x |
x |
x |
微信 APP |
x |
✓ |
✓ |
✓ |
✓ |
✓ |
x |
x |
x |
微信公众号 |
x |
x |
✓ |
✓ |
✓ |
✓ |
x |
x |
✓ |
composer require code-lives/weixin 1.0.0
金额单位分 100=1 元
返回结果 array 由开发者自行判断
//引入命名空间
use Applet\Assemble\Weixin;
// 微信小程序
$pay= Weixin::init($config)->set("订单号","金额","描述","描述")->getParam();
// 微信公众号【appid 和secret 换成公众号的】
$pay= Weixin::init($config)->set("订单号","金额","描述","openid")->getParam();
// 微信H5【appid 和secret 换成公众号的】
$pay= Weixin::init($config)->set("订单号","金额","描述")->getH5Param();
// 微信APP (没有openid)
$pay= Weixin::init($config)->set("订单号","金额","描述")->getParam();
参数名字 |
类型 |
必须 |
说明 |
appid |
int |
是 |
小程序 appid |
secret |
int |
是 |
小程序 secret |
mch_id |
string |
是 |
商户 mch_id |
mch_key |
string |
是 |
商户 mch_key |
notify_url |
string |
是 |
异步地址 |
cert_pem |
string |
是 |
cert_pem 证书 |
key_pem |
string |
是 |
key_pem 证书 |
trade_type |
string |
是 |
默认为:JSAPI。MWEB:代表微信 H5 、JSAPI:公众号或小程序 |
$data= Weixin::init($config)->getToken();
返回参数 |
类型 |
必须 |
说明 |
expires_in |
string |
是 |
凭证有效时间,单位:秒 |
access_token |
string |
是 |
获取到的凭证 |
$code="";
$data= Weixin::init($config)->getOpenid($code);
返回参数 |
类型 |
必须 |
说明 |
session_key |
string |
是 |
session_key |
openid |
string |
是 |
用户 openid |
unionid |
string |
是 |
unionid |
$data= Weixin::init($config)->decryptPhone($session_key, $iv, $encryptedData);
echo $phone['phoneNumber'];
$data = Weixin::init($config)->findOrder("订单号");
参数名字 |
类型 |
必须 |
说明 |
out_trade_no |
string |
是 |
平台订单号 |
out_refund_no |
string |
是 |
自定义订单号 |
refund_fee |
int |
是 |
退款金额 |
total_fee |
int |
是 |
订单金额 |
refund_desc |
string |
是 |
退款原因 |
$order = [
'out_trade_no' => '123',
'total_fee' => 0.01,
'out_refund_no' => time(),
'refund_fee' => 0.01,
];
$data= Weixin::init($config)->applyOrderRefund($order);
$data = [
"touser" => "",
"template_id" => "",
"page" => "pages/index/index",
"miniprogram_state" => "developer",
"lang" => "zh_CN",
"data" => [
'thing6' => ['value' => "第一个参数{{thing6.DATA}}"],
'thing7' => ['value' => "第二个参数{{thing7.DATA}}"],
'time8' => ['value' => "第三个参数{{time8.DATA}}"],
],
$data= Weixin::init($config)->sendMsg($data,$token);
$data=[
"errcode" => 0
"errmsg" => "ok"
"msgid" => 123456
]
$pay = Weixin::init($config);
$status = $pay->notifyCheck();//验证
if($status){
$order = $pay->getNotifyOrder();//订单数据
//$order['out_trade_no']//平台订单号
//$order['transaction_id']//微信订单号
echo 'success';exit;
}