Payment:微信支付发起支付请求文档
来源:互联网 发布:类似沙盘的软件 编辑:程序博客网 时间:2024/05/21 17:50
文档更新太慢,自己都忍不住要抱怨了。可能越来越慢了
Payment 3.0
微信的配置设置文档请 点击这里
项目GitHub地址:https://github.com/helei112g/payment
为了调用方便,提供了统一的 Client\Charge
类来发起支付。需要设置的参数
在上面的参数中,无论微信的哪一种支付都必须提供:
- body
- subject
- order_no
- timeout_express
- amount
- return_param
- client_ip
- terminal_id
这几个参数,是必须进行设置的。
扫码支付
用户扫描商户展示在各种场景的二维码进行支付。这里采用的是模式二。
对于扫码支付,必须提供: product_id 参数,该 product_id
是商户自己平台的信息,可用使用sku。
如果扫码支付时,传入了 openid
,则扫码时,只能使用对应的微信扫码才能完成支付。这里可以根据自己的需求来决定。
扫码支付,模式二介绍
刷卡支付
刷卡支付,就是用于用户向商户展示二维码,商户通过扫码枪获取二维码或者条码信息,完成收款。与上面的扫码支付相对应。 auth_code
是必须设置的参数,扫码支付授权码,设备读取用户微信中的条码或者二维码信息
app支付
适用于商户在移动端APP中集成微信支付功能。
商户APP调用微信提供的SDK调用微信支付模块,商户APP会跳转到微信中完成支付,支付完后跳回到商户APP内,最后展示支付结果。
目前微信支付支持手机系统有:IOS(苹果)、Android(安卓)和WP(Windows Phone)。
该支付方式,无需额外的参数信息,只需要上面表格中标记的必须参数。
客户端教程
公众号支付
商户已有H5商城网站,用户通过消息或扫描二维码在微信内打开网页时,可以调用微信支付完成下单购买的流程。
这里记住一定时微信内部打开h5页面。
openid
是公众号支付必须提供的信息,微信用户在商户对应appid下的唯一标识。openid如何获取,可参考获取openid
这里用到了 openid,也就说明该支付只能由发起支付请求的公众号完成支付。
因此,如果有时候遇到:“下单账号和支付账号不一致” ,那么肯定是发起支付请求的时候是一个帐号,而进行支付时变成了另外一个微信帐号导致的。
小程序支付与公众号支付具有相同的请求参数
公众号调起支付
小程序调起支付
h5支付
H5支付是指商户在微信客户端外的移动端网页展示商品或服务,用户在前述页面确认使用微信支付时,商户发起本服务呼起微信客户端进行支付。
主要用于触屏版的手机浏览器请求微信支付的场景。可以方便的从外部浏览器唤起微信支付
微信这个支付能力,并未完全开放,申请的条件也比较苛刻。不过说实话也不好用。
参数跟app支付一样,不需要添加额外的信息。
外部网页唤起微信支付
代码
下面代码实例一下
use Payment\Common\PayException;use Payment\Client\Charge;$config = require_once('./wxconfig.php');// 微信的配置信息$channel = 'wx_app';// wx_app wx_pub wx_qr wx_bar wx_lite wx_wap$payData = [ 'body' => '一个苹果', 'subject' => '牛逼公司--付款吧', 'order_no' => 'NB12312355', 'timeout_express' => '1489241888', 'amount' => '100', 'return_param' => 'buy some', 'client_ip' => '127.0.0.1', 'terminal_id' => 'WEB', //'product_id' => '888', //'openid' => 'xxxxxxx',];// product_id openid 参数,并不是每一个支付都需要,具体行为阅读上面文档try { $str = Charge::run($channel, $config, $payData);} catch (PayException $e) { // 异常处理 exit;}if (is_array($ret)) { var_dump($ret);} else { header('Location:' . $ret); echo htmlspecialchars($ret);}exit;
关于 channel
的说明:
关于支付返回的各种数据,以及相关支付方式,如果调起微信支付,请自行查看对应文档。
- Payment:微信支付发起支付请求文档
- 发起一个微信支付请求接口— wx.chooseWXPay() – 微信JS开发文档
- 微信支付文档
- IOS-发起微信支付方法
- 微信公众号发起微信支付 c#
- 微信支付接口文档
- 微信支付文档链接
- 微信支付集成文档
- 微信支付文档API
- js 调用 oc 方法来发起微信支付
- Android webview 里面发起的微信支付
- 微信公众号开发_如何接入微信支付?[网页发起支付]
- 微信支付 该支付域名未获授权,无法发起该笔交易问题解决方案
- Java使用微信支付-发起统一下单支付接口
- 支付宝、微信支付网络请求功能的实现
- F1.微信支付网络请求工具
- 【微信支付】开发者文档(链接)
- 微信APP支付接口文档
- MySQL自带数据库
- 轮播图组件
- ViewPager底部圆点指示器
- 静态顺序表
- Logger日志
- Payment:微信支付发起支付请求文档
- 1
- 二叉树的中序遍历
- 2
- 京东2017实习生招聘——在线笔试编程题总结
- 怎样成为一名黑客
- 【百度百科】Nosql科普
- JAVA-6-继承、super、final、多态、抽象类、接口
- 终于等到你——基于深度学习的应用创新