本文實例講述了小程序微信退款功能實現(xiàn)方法。分享給大家供大家參考,具體如下:
☹. 背景
- 微信開發(fā)中,既然涉及到了微信支付,對于合理的購物網(wǎng)站,必定會有用戶退款請求
- 當然,一種方式是登錄 微信商戶平臺,在
交易列表
中進行微信退款操作
- 但是,如果業(yè)務(wù)量龐大,作為友好交互,自然需要進行代碼實現(xiàn) 微信退款 操作咯
稍作一提,這是針對 小程序退款申請
的方法指導(目測跟公眾號退款沒啥區(qū)別)
理論上,請對應(yīng)參考文章:小程序微信支付 實例配置詳解
編程語言:PHP 使用框架:ThinkPHP3.2.3 (我也覺得過時了,算了,框架啥的只是個殼子而已!)
☺. 前期準備
❶.文檔閱讀
微信小程序 - 申請退款(官方文檔)
- 畢竟都是人家微信平臺的東西,使用起來不去閱讀,總感覺是對開發(fā)人員的不尊重
- 況且,萬一官方不定時地進行了更新,后面的道友們不去閱讀很可能會遇到更多的阻礙哦
- 此處不多贅述,提取著重注意的要點:
a. 請求需要雙向證書 詳見 證書使用 【可根據(jù)提示,直接下載參考微信支付提供的 Demo(PHP)】
b. 對于請求參數(shù),可以只填寫必選項

❷. 資源準備
- 首先,小程序的
appid
,和微信支付所需的 mch_id
缺一不可
- 其次,提前將獲得的雙向證書放置于自己的項目中,并記錄其訪問的***
絕對路徑
***
- 再者,需要獲取訂單進行支付時所保存的回調(diào)數(shù)據(jù),其
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
字符串是極為重要的,不然無法追索微信支付訂單信息
▷ 前提是在實現(xiàn) 微信支付
時就已經(jīng)做了回調(diào)保存
▷ 未做處理的,可參考我之前整理的文章 :小程序微信支付 實例配置詳解
▓. 代碼實現(xiàn)
- 如果你的前期準備已經(jīng)完成,可直接參考源碼
wxMini-PayDemo\Server-PHP\PayController.class.php
- 其實,核心方法只有兩個,介紹如下:
❶. payRefund()
方法
- 請使用
post
請求方式,傳參訂單號和退款金額,請認真閱讀注釋信息,畢竟每個人的業(yè)務(wù)邏輯都不同
- 重要的就是獲取
array 數(shù)組
形式的 $wxPayResultJsonRes

❷. curl_post_ssl_refund()
方法
- 具體的使用,請閱讀我的注釋代碼就好

附錄:
❶. 實現(xiàn)效果

❷.Github 源碼下載 >>>
- 強調(diào):如果你的前期準備已經(jīng)完成,可只需參考源碼
wxMini-PayDemo\Server-PHP\PayController.class.php
更多關(guān)于thinkPHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結(jié)》、《ThinkPHP常用方法總結(jié)》、《codeigniter入門教程》、《CI(CodeIgniter)框架進階教程》、《Zend FrameWork框架入門教程》及《PHP模板技術(shù)總結(jié)》。
希望本文所述對大家基于ThinkPHP框架的PHP程序設(shè)計有所幫助。
您可能感興趣的文章:- Thinkphp5 微信公眾號token驗證不成功的原因及解決方法
- Thinkphp5微信小程序獲取用戶信息接口的實例詳解
- ThinkPHP實現(xiàn)微信支付(jsapi支付)流程教程詳解
- 基于thinkPHP實現(xiàn)的微信自定義分享功能示例
- thinkPHP微信分享接口JSSDK用法實例
- thinkphp項目如何自定義微信分享描述內(nèi)容
- thinkphp微信開之安全模式消息加密解密不成功的解決辦法
- ThinkPHP框架實現(xiàn)的微信支付接口開發(fā)完整示例
- ThinkPHP框架整合微信支付之JSAPI模式圖文詳解
- thinkphp5框架結(jié)合mysql實現(xiàn)微信登錄和自定義分享鏈接與圖文功能示例