微信二维码扫描支付

1、第一步,生成二维码提供用户扫描。




1.1、商户信息AppId(与微信对应的唯一商户号)、AppKey(密钥,可验证商户唯一身份)、PartnerKey(财付通商户权限密钥)


    这些信息在商户申请商户号的时候由微信提供。




1.2、商品信息:productid(商品id),这些信息由商户生成二维码是对应的唯一商品号,微信后台根据此商品id去商户后台获取


    商品信息。




1.3、签名:sign(加密后的字符串),对前面的其他字段与appKey按照字典顺序排序后,使用SHA1算法得到,由商户后台生成传入,


    加密详情参照微信demo,所有加密的过程中的编码方式必须一样,建议开发者在开发过程中不要使用中文数据,在英文与数字


    测试通过以后再选择性的使用中文,那样开发者容易发现错误的原因。


1.4、商户将准备的参数进行加密后得到密文sign拼接在微信提供的地址后生成二维码,二维码不可使用微信后台生成,目前只能由


    用第三方生成二维码的工具生成,java推荐使用QRCode。





2、微信回调URL地址(return_url),根据productid(商品id)获取商品信息。



2.1、微信回调URL地址是商户在申请商户号时提供给微信的,所以商户在提供此地址时应该考虑在开发过程中此地址在外网是否可以访问,
    
      微信通过url回调地址给用户推送一个数据包,商户网站获取字节流,读取数据包信息,根据签名判断请求是否由微系统提交,数据包

    其中一个参数就是微信从商户网站获取商品信息的凭证(productid 商品id)。




2.2、商户获得微信提交的商品id后,根据商品id生成package数据包,也就是商品信息,在生成package时要注意两点:1、参数中不能有小数点。


    2、url编码时选择的编码方式一定要与第一次选择的编码方式一致,最好整个支付过程统一编码方式。加密方式详细看官方提供文档。



2.3、将所有信息生成xml格式的字符串推送给微信接口。




3、微信补单通知(notify_url),notify_url地址由微信向商户获取商品信息时提供。


3.1、当支付完成以后,微信会按照一定规则给商户notify_url发送“模拟http请求”通知,直到商户网站推送文本信息success才停止通知。


3.2、微信给商户后台发送通知一共有URL数据传输和postData数据包传输两种参数的传输方式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值