微信小程序实现支付接口

本文介绍了微信小程序实现支付接口的详细步骤,包括准备必要的参数、预支付接口开发、支付接口和回调接口的实现,以及小程序端的调用流程。重点讲解了统一下单接口和回调接口的参数处理与签名验证,帮助开发者理解支付过程。
摘要由CSDN通过智能技术生成

最近做小程序涉及到微信支付,连微信支付都没有做过的我无从下手,在网上搜索到了几篇帖子也没看明白,没办法只好照着某一篇(来源:微信小程序中实现微信支付小程序支付,详细过程)硬着头皮先写了,最后经过几次调试终获成功,所以我对支付做一个总结,分享出来方便他人。

一,准备小程序id,小程序密钥,商户号,商户密钥,需要openid(微信登录后获得,调用https://api.weixin.qq.com/sns/jscode2session)

二,接口开发

接口有3个:预支付,支付,回调,php代码在后面

(一)预支付:(1)获取参数:openid,商品信息,金额;(2)设定回调接口地址,自己生成订单号,可将订单号与openid和商品信息一并写入mysql,等支付完成后在修改状态;(3)把所有字段汇集起来做签名一起提交给统一下单地址(https://api.mch.weixin.qq.com/pay/unifiedorder),成功的话会返回prepay_id,将prepay_id输出(给 支付接口)。

统一下单需要的参数:

<xml>
<appid>小程序id</appid>
<body>商品信息,比如商品名称</body>
<mch_id>商户号</mch_id>
<nonce_str>随机字符串,仅用于加密</nonce_str>
<notify_url>回调接口地址</notify_url>
<openid>openid,即用户id</openid>
<out_trade_no>订单号,自己生成</out_trade_no>
<spbill_create_ip>服务器ip</spbill_create_ip>
<total_fee>金额,单位分</total_fee>
<trade_type>交易类型,默认JSAPI</trade_type>
<sign>以上所有字段的签名</sign>
</xml>

统一下单返回数据:

<xml><return_code>状态码,SUCCESS|FAIL</return_code>
<return_msg>状态信息</return_msg>
<appid>小程序id</appid>
<mch_id>商户号</mch_id>
<nonce_str>微信生成的随机字符串</nonce_str>
<sign>签名</sign>
<result_code>同return_code?</result_code>
<prepay_id>预支付id,重要</prepay_id>
<trade_type>交易类型,默认JSAPI</trade_type>
</xml>

(二)支付:支付接口很简单,获取prepay_id后计算签名返回即可,小程序拿到签名后会发起真正的支付。此时会提醒用户输入密码,如下图:

(三)回调:当支付成功时,微信会调用此接口。可以实现自己业务逻辑&

  • 3
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值