<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # 微信支付 這是用Golang封裝了微信的所有API接口的SDK,并自動生成和解析XML數據,包括微信支付、公眾號、小程序、移動端的工具函數。 * 支持境內普通商戶和境內服務商(境外和銀行服務商沒有條件測試)。 * 支持全局配置應用ID、商家ID等信息。 * 全部參數和返回值均使用`struct`類型傳遞,而不是`map`類型。 ### 安裝 ```shell go get -u gitee.com/cuckoopark/wechat ``` ### 初始化 ```go const ( isProd = true // 生產環境或沙盒環境 isMch = false // 是否是企業模式,僅當調用企業付款時為true serviceType = wechat.ServiceTypeNormalDomestic // 普通商戶或服務商等類型 apiKey = "xxxxxxxx" // 微信支付上設置的API Key certFilepath = "/xxx/yyy/apiclient_cert.p12" // 微信證書文件的本地路徑,僅部分接口使用,如果不使用這些接口,可以傳遞空值 ) config := wechat.Config{ AppId: AppID, MchId: MchID, SubAppId: SubAppId, // 僅服務商模式有效 SubMchId: SubMchID, // 僅服務商模式有效 } client := wechat.NewClient(isProd, isMch, serviceType, apiKey, certFilepath, config) ``` ### 使用 以下是通用的接口,使用上面初始化時生成的實例`client`進行相應函數的調用。其中帶有`(*Client)`字樣的接口,需要使用`wechat.NewClient`創建的實例對象來調用,而不帶的接口,則可以直接使用`wechat.XXX`調用。 使用樣例: ```go func Test() { // 初始化參數 body := wechat.QueryOrderBody{} body.OutTradeNo = "YgENQFTovdeJdFouNyy3nFVOhGD6ZvPH" // 請求訂單查詢 wxRsp, err := client.QueryOrder(body) if err != nil { return } fmt.Printf("返回值: %+v\n", wxRsp) } ``` 注意事項: * 參數或返回值的類型,請查看接口對應的文件,里面有`XXXBody`和`XXXResponse`與之對應。 * 參數或返回值中的常量,請參照constant.go文件。 * 具體使用方法,請參照接口對應的測試文件。 #### 微信支付 對應文件:`wx_pay_xxxxxx.go` * 提交付款碼支付:`(*Client) Micropay`。 * 統一下單:`(*Client) UnifiedOrder`。 * 查詢訂單:`(*Client) QueryOrder`。 * 關閉訂單:`(*Client) CloseOrder`。 * 撤銷訂單:`(*Client) Reverse`。 * 申請退款:`(*Client) Refund`。 * 查詢退款:`(*Client) QueryRefund`。 * 下載對賬單:`(*Client) DownloadBill`。 * 交易保障(JSAPI):`(*Client) ReportJsApi`。 * 交易保障(MICROPAY):`(*Client) ReportMicropay`。 * 下載資金賬單:TODO,client.DownloadFundFlow()。 * 拉取訂單評價數據:TODO,client.BatchQueryComment()。 * 企業付款到零錢:`(*Client) Change`。 * 查詢企業付款到零錢:`(*Client) QueryChange`。 #### 微信支付回調 對應文件:`wx_notify_xxxxxx.go` * 支付回調:`(*Client) NotifyPay`。 * 退款回調:`(*Client) NotifyRefund`。 #### 微信公眾號 對應文件:`wx_service_xxxxxx.go` * 授權碼查詢OpenId:`(*Client) OpenIdByAuthCode`。 * 獲取基礎支持的AccessToken:`GetBasicAccessToken`。 * 獲取用戶基本信息(UnionId機制):`GetUserInfo`。 * 獲取H5支付簽名:`GetH5PaySign`。 #### 微信小程序 對應文件:`wx_applet_xxxxxx.go` * 獲取小程序支付簽名:`GetAppletPaySign`。 * 獲取小程序碼:`GetAppletUnlimitQrcode`。 #### 移動端 對應文件:`wx_app_xxxxxx.go` * 獲取APP支付簽名:`GetAppPaySign`。 ### 文檔 * 微信支付文檔:[https://pay.weixin.qq.com/wiki/doc/api/index.html](https://pay.weixin.qq.com/wiki/doc/api/index.html) * 隨機數生成算法:[https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=4_3](https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=4_3) * 簽名生成算法:[https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=4_3](https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=4_3) * 交易金額:[https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=4_2](https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=4_2) * 交易類型:[https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=4_2](https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=4_2) * 貨幣類型:[https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=4_2](https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=4_2) * 時間規則:[https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=4_2](https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=4_2) * 時間戳:[https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=4_2](https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=4_2) * 商戶訂單號:[https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=4_2](https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=4_2) * 銀行類型:[https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=4_2](https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=4_2) * 單品優惠功能字段:[https://pay.weixin.qq.com/wiki/doc/api/danpin.php?chapter=9_101&index=1](https://pay.weixin.qq.com/wiki/doc/api/danpin.php?chapter=9_101&index=1) * 代金券或立減優惠:[https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=12_1](https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=12_1) * 最新縣及縣以上行政區劃代碼:[https://pay.weixin.qq.com/wiki/doc/api/download/store_adress.csv](https://pay.weixin.qq.com/wiki/doc/api/download/store_adress.csv) ### 開發進度 * 境內普通商戶 * [付款碼支付](https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=5_1) * [JSAPI支付](https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=7_1) * [Native支付](https://pay.weixin.qq.com/wiki/doc/api/native.php?chapter=6_1) * [APP支付](https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=8_1) * [H5支付](https://pay.weixin.qq.com/wiki/doc/api/H5.php?chapter=15_1) * [小程序支付](https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=7_3&index=1) * (TODO) [代金券或立減優惠](https://pay.weixin.qq.com/wiki/doc/api/tools/sp_coupon.php?chapter=12_1) * (TODO) [現金紅包](https://pay.weixin.qq.com/wiki/doc/api/tools/cash_coupon.php?chapter=13_1) * [企業付款](https://pay.weixin.qq.com/wiki/doc/api/tools/mch_pay.php?chapter=14_1) * 境內服務商 * [付款碼支付](https://pay.weixin.qq.com/wiki/doc/api/micropay_sl.php?chapter=5_1) * [JSAPI支付](https://pay.weixin.qq.com/wiki/doc/api/jsapi_sl.php?chapter=7_1) * [Native支付](https://pay.weixin.qq.com/wiki/doc/api/native_sl.php?chapter=6_1) * [APP支付](https://pay.weixin.qq.com/wiki/doc/api/app/app_sl.php?chapter=8_1) * [H5支付](https://pay.weixin.qq.com/wiki/doc/api/H5_sl.php?chapter=15_1) * [小程序支付](https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_sl_api.php?chapter=7_3&index=1) * [現金紅包](https://pay.weixin.qq.com/wiki/doc/api/tools/cash_coupon_sl.php?chapter=13_1) ### 測試方法 修改`client_test.go`中的生成測試Client的代碼,調整沙盒/生產環境、普通商戶/服務商等選項,或者修改環境變量,來調整商戶參數。 環境變量的腳本在`env`文件中,修改后加載環境變量: ```shell source env go test ``` ### TODO - 測試改為不同情境使用不同的用例。 - 繼續調試境內普通商戶和境內服務商的其他模塊API文檔。 - 選擇性調試境外接口。 - 繼續增加公眾號和小程序相關接口。 - 移除`service`開頭的文件。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看