天天看點

php小程式微信提現,小程式微信退款功能實作方法詳解【基于thinkPHP】

本文執行個體講述了小程式微信退款功能實作方法。分享給大家供大家參考,具體如下:

☹. 背景

微信開發中,既然涉及到了微信支付,對于合理的購物網站,必定會有使用者退款請求

當然,一種方式是登入 微信商戶平台,在 交易清單 中進行微信退款操作

但是,如果業務量龐大,作為友好互動,自然需要進行代碼實作 微信退款 操作咯

稍作一提,這是針對 小程式退款申請 的方法指導(目測跟公衆号退款沒啥差別)

理論上,請對應參考文章:小程式微信支付 執行個體配置詳解

程式設計語言:PHP 使用架構:ThinkPHP3.2.3 (我也覺得過時了,算了,架構啥的隻是個殼子而已!)

☺. 前期準備

工欲善其事, 必先利其器

❶.文檔閱讀

微信小程式 - 申請退款(官方文檔)

畢竟都是人家微信平台的東西,使用起來不去閱讀,總感覺是對開發人員的不尊重

況且,萬一官方不定時地進行了更新,後面的道友們不去閱讀很可能會遇到更多的阻礙哦

此處不多贅述,提取着重注意的要點:

a. 請求需要雙向證書 詳見 證書使用 【可根據提示,直接下載下傳參考微信支付提供的 Demo(PHP)】

b. 對于請求參數,可以隻填寫必選項

php小程式微信提現,小程式微信退款功能實作方法詳解【基于thinkPHP】

❷. 資源準備

首先,小程式的 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

php小程式微信提現,小程式微信退款功能實作方法詳解【基于thinkPHP】

❷. curl_post_ssl_refund() 方法

具體的使用,請閱讀我的注釋代碼就好

php小程式微信提現,小程式微信退款功能實作方法詳解【基于thinkPHP】

附錄:

❶. 實作效果

php小程式微信提現,小程式微信退款功能實作方法詳解【基于thinkPHP】

❷.Github 源碼下載下傳 >>>

強調:如果你的前期準備已經完成,可隻需參考源碼 wxMini-PayDemo\Server-PHP\PayController.class.php

更多關于thinkPHP相關内容感興趣的讀者可檢視本站專題:《ThinkPHP入門教程》、《thinkPHP模闆操作技巧總結》、《ThinkPHP常用方法總結》、《codeigniter入門教程》、《CI(CodeIgniter)架構進階教程》、《Zend FrameWork架構入門教程》及《PHP模闆技術總結》。

希望本文所述對大家基于ThinkPHP架構的PHP程式設計有所幫助。

本條技術文章來源于網際網路,如果無意侵犯您的權益請點選此處回報版權投訴

本文系統來源:php中文網