专栏首页木头编程 - moTzxx小程序 微信退款功能实现讲解 (PHP方式)

小程序 微信退款功能实现讲解 (PHP方式)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011415782/article/details/82494814

☹. 背景

  • 微信开发中,既然涉及到了微信支付,对于合理的购物网站,必定会有用户退款请求
  • 当然,一种方式是登录 微信商户平台,在 交易列表 中进行微信退款操作
  • 但是,如果业务量庞大,作为友好交互,自然需要进行代码实现 微信退款 操作咯

稍作一提,这是针对 小程序退款申请 的方法指导(目测跟公众号退款没啥区别) 理论上,请对应参考文章:小程序微信支付 实例配置详解

 编程语言:PHP
 使用框架:ThinkPHP3.2.3 (我也觉得过时了,算了,框架啥的只是个壳子而已!)

☺. 前期准备

  • 工欲善其事, 必先利其器

❶.文档阅读

微信小程序 - 申请退款(官方文档)

  • 毕竟都是人家微信平台的东西,使用起来不去阅读,总感觉是对开发人员的不尊重
  • 况且,万一官方不定时地进行了更新,后面的道友们不去阅读很可能会遇到更多的阻碍哦
  • 此处不多赘述,提取着重注意的要点:

a. 请求需要双向证书 详见 证书使用 【可根据提示,直接下载参考微信支付提供的 Demo(PHP)】 b. 对于请求参数,可以只填写必选项

❷. 资源准备

  • 首先,小程序的 appid,和微信支付所需的 mch_id 缺一不可
  • 其次,提前将获得的双向证书放置于自己的项目中,并记录其访问的绝对路径
  • 再者,需要获取订单进行支付时所保存的回调数据,其 json 字符串形式如下:
{
     "appid":"wx81111223333444bc0",
     "bank_type":"CFT",
     "fee_type":"CNY",
     "is_subscribe":"N",
     "nonce_str":"t8wcdduity6f6k5acng33wzv5z56o7sh",
     "openid":"okxsf5YWzAzEPNoV31IRqft-fa1c",
     "out_trade_no":"20180000011119M15362284007942",
     "return_code":"SUCCESS",
     "time_end":"20180906180644",
     "trade_type":"JSAPI",
     "transaction_id":"4200000171201809060657362048"
 }

▷ 上面的 json 字符串是极为重要的,不然无法追索微信支付订单信息 ▷ 前提是在实现 微信支付时就已经做了回调保存 ▷ 未做处理的,可参考我之前整理的文章 :小程序微信支付 实例配置详解

▓. 代码实现

  • 如果你的前期准备已经完成,可直接参考源码 wxMini-PayDemo\Server-PHP\PayController.class.php
  • 其实,核心方法只有两个,介绍如下:

❶. payRefund() 方法

  • 请使用 post 请求方式,传参订单号和退款金额,请认真阅读注释信息,毕竟每个人的业务逻辑都不同
  • 重要的就是获取 array 数组形式的 $wxPayResultJsonRes

❷. curl_post_ssl_refund() 方法

  • 具体的使用,请阅读我的注释代码就好

附录:

❶. 实现效果

❷.Github 源码下载 >>>

  • 强调:如果你的前期准备已经完成,可只需参考源码 wxMini-PayDemo\Server-PHP\PayController.class.php

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • PHP 网站应用微信登录

    版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011415782/article/de...

    泥豆芽儿 MT
  • uniapp 进行微信支付时报错: {"errMsg":"requestPayment:fail:[payment微信:-1]General errors"}

    泥豆芽儿 MT
  • 微信公众平台开发[4] —— ThinkPHP 框架下微信支付

    版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011415782/article/de...

    泥豆芽儿 MT
  • 腾讯王宏岩:互联网的发展与企业微信

    腾讯企业微信产品部行业运营中心高级总监王宏岩,在政务专场上做了以《互联网的发展与企业微信》为主题的分享,以下内容整理自演讲。

    Techeek
  • 不知道这几点,千万别开发微信小程序

    最近经常在各个技术论坛和社区有人吐槽,说:为什么我开发的微信小程序经常审核不通过?为什么别人的半天就能通过,而我的要来来回回的审核,拒绝,再审核,再拒绝呢?

    非著名程序员
  • 「衣食住行」一搜解决,微信的这个功能厉害了!

    为了约到女神,狠话已经撂下了。可是,到底去哪里找好吃的寿司店呢?知晓君先是在浏览器上搜索了一下,出来的是这样的东西:

    知晓君
  • CabloyJS微信模块、企业微信模块已出齐

    当Cabloy-企业微信模块完成时,加上之前已完成的Cabloy-微信模块,关于在CabloyJS中与微信/企业微信对接的任务已经完成了。这些模块的目标就是,只...

    zhennann
  • 2018 微信公开课,张小龙没有告诉你的 5 个秘密

    就像在公开课 Pro 的现场,张小龙与上千名观众一起玩「跳一跳」,轻松秒杀众人一样。他的演讲虽然句句金句、大爆猛料,但听完,却让人陷入了更深的困惑。

    知晓君
  • 线下迁移线上,如何使用企业微信打造数字化企业?

    2019年12月23日微信发布了全新的企业微信3.0,提出对内让信息流转高效,对外连接11亿微信用户。如何在企业微信上创建一个连接客户的应用,将小程序接入企业微...

    腾小云
  • 为什么我们对微信如此依赖?

    之所以大家对微信有如何强烈的依赖,这是社交软件的关键属性所在,从心理上讲大家都喜欢先入为主,特别是已经习惯于在一个熟悉的环境下工作,切换起来的难度就会非常大,微...

    程序员互动联盟

扫码关注云+社区

领取腾讯云代金券