這次給大家?guī)砥髽I(yè)轉(zhuǎn)賬到用戶接口的開通,企業(yè)轉(zhuǎn)賬到用戶接口開通的注意事項(xiàng)有哪些,下面就是實(shí)戰(zhàn)案例,一起來看一下。
在微信公眾號(hào)支付的API中沒有這個(gè)接口,如果企業(yè)需要給用戶轉(zhuǎn)賬,或者讓用戶提現(xiàn)或者給用戶發(fā)紅包等需要再商戶平臺(tái)中的產(chǎn)品中心分別開通。?
一、開通功能
開通就是點(diǎn)擊一下,很簡(jiǎn)單。但需要注意的是支持向用戶轉(zhuǎn)賬的賬戶和收到用戶付款的賬戶不是同一個(gè),而為了滿足此功能,你需要先用財(cái)付通進(jìn)行充值(交易中心--資金管理--充值)。
二、下載證書
證書下載在賬戶中心--API安全,現(xiàn)在需要手機(jī)驗(yàn)證碼和商戶平臺(tái)登錄密碼。下載之后再window上進(jìn)行安裝,安裝的密碼是商戶號(hào)。
安裝之后并將證書放在網(wǎng)站目錄下,用于下一步在代碼中進(jìn)行驗(yàn)證。
三、轉(zhuǎn)賬
微信現(xiàn)在提供的demo中沒有這一塊,下面就根據(jù)官方的demo做一些修改。和之前的例子類似,我們都需要用WxPayData對(duì)象來操作我們的參數(shù)。定義一個(gè)TransfersPay對(duì)象。
??public?class?TransfersPay ????{????????public?string?openid?{?get;?set;?}????????public?int?amount?{?get;?set;?}????????public?string?partner_trade_no?{?get;?set;?}????????public?string?re_user_name?{?get;?set;?}????????public?string?spbill_create_ip?{?get;?set;?}????????public?WxPayData?GetTransfersApiParameters() ????????{ ????????????WxPayData?apiParam?=?new?WxPayData(); ????????????apiParam.SetValue("partner_trade_no",?partner_trade_no); ????????????apiParam.SetValue("openid",?openid); ????????????apiParam.SetValue("check_name",?"NO_CHECK"); ????????????apiParam.SetValue("amount",?amount); ????????????apiParam.SetValue("desc",?"提現(xiàn)"); ????????????apiParam.SetValue("spbill_create_ip",?spbill_create_ip); ????????????apiParam.SetValue("re_user_name",?re_user_name);????????????return?apiParam; ????????} ????}
在官方demo中的WxpayApi中已經(jīng)包含了公眾號(hào)支付的相關(guān)方法。再增加一個(gè)Transfers的方法用來轉(zhuǎn)賬:
?public?static?WxPayData?Transfers(WxPayData?inputData,?int?timeOut?=?6) ????????{????????????var?url?=?"https://api.mch.weixin.qq.com/mmpaymkttransfers/promotion/transfers"; ????????????inputData.SetValue("mch_appid",?WxPayConfig.APPID);//公眾賬號(hào)ID ????????????inputData.SetValue("mchid",?WxPayConfig.MCHID);//商戶號(hào) ????????????inputData.SetValue("nonce_str",?WxPayApi.GenerateNonceStr());//隨機(jī)字符串 ????????????inputData.SetValue("sign",?inputData.MakeSign());//簽名 ????????????string?xml?=?inputData.ToXml();????????????var?start?=?DateTime.Now; ????????????string?response?=?HttpService.Post(xml,?url,?true,?timeOut);????????????//?Portal.MVC.Logger.Info("WxPayApi"+?"UnfiedOrder?response?:?"?+?response); ????????????var?end?=?DateTime.Now;????????????int?timeCost?=?(int)((end?-?start).TotalMilliseconds); ????????????WxPayData?result?=?new?WxPayData(); ????????????result.FromXml(response); ????????????ReportCostTime(url,?timeCost,?result);//測(cè)速上報(bào) ????????????return?result; ????????}
稍微需要注意下的地方就是幾個(gè)默認(rèn)參數(shù)的名字和別的方法不一樣,比如appid和mch_id。轉(zhuǎn)賬中是mch_appid和mchid,紅包中又叫wxappid和mch_id。然后注意到httpService.post方法第三個(gè)參數(shù)是帶true的。也就是會(huì)使用到證書。進(jìn)入post方法中我們可以看到:
?????????//是否使用證書 ????????????????if?(isUseCert) ????????????????{????????????????????string?path?=?HttpContext.Current.Request.PhysicalApplicationPath;????????????????????X509Certificate2?cert?=?new?X509Certificate2(path?+?WxPayConfig.SSLCERT_PATH,?WxPayConfig.SSLCERT_PASSWORD); ????????????????????request.ClientCertificates.Add(cert); ????????????????????Log.Debug("WxPayApi",?"PostXml?used?cert"); ????????????????}
這里使用到了證書的路徑和密碼,密碼即商戶號(hào)。這一切準(zhǔn)備好之后就可以controller中進(jìn)行轉(zhuǎn)賬了:
?? ?[LoginValid]????????public?ActionResult?CashTransfers(string?orderNumber) ????????{????????????//var?order?=?new?Order(){Amount?=?1};???????????//?var?openid?=?"oBSBmwQjqwjfzQlKsFNjxFLSixxx"; ????????????var?user?=?_workContext.CurrentUser;????????????var?order?=?_paymentService.GetOrderByOrderNumber(orderNumber);????????????var?transfer?=?new?TransfersPay ????????????{ ????????????????openid?=?user.OpenId, ????????????????amount?=?(int)?order.Amount*100, ????????????????partner_trade_no?=?order.OrderNumber, ????????????????re_user_name?=?"stoneniqiu", ????????????????spbill_create_ip?=?_webHelper.GetCurrentIpAddress() ????????????};????????????var?data?=?transfer.GetTransfersApiParameters();????????????var?result?=?WxPayApi.Transfers(data);????????????return?Content(result.ToPrintStr()); ????????}
得到結(jié)果
這樣就實(shí)現(xiàn)了轉(zhuǎn)賬/提現(xiàn)的功能。
發(fā)布
在正式的環(huán)境中,我們需要先創(chuàng)建自己的訂單,然后向微信請(qǐng)求轉(zhuǎn)賬,成功之后對(duì)自己的訂單進(jìn)行處理。CashTransfers方法稍作調(diào)整。
???????[LoginValid]????????public?ActionResult?CashTransfers(string?orderNumber) ????????{ ????????????var?user?=?_workContext.CurrentUser;????????????var?order?=?_paymentService.GetOrderByOrderNumber(orderNumber);????????????if?(string.IsNullOrEmpty(user.OpenId)) ????????????{????????????????return?Json(new?PortalResult("請(qǐng)用微信登錄!")); ????????????}????????????if?(order?==?null?||?order.OrderState?!=?OrderState.Padding) ????????????{????????????????return?Json(new?PortalResult("訂單有誤!")); ????????????}???????????? ????????????var?transfer?=?new?TransfersPay ????????????{ ????????????????openid?=?user.OpenId, ????????????????amount?=?(int)?order.Amount*100, ????????????????partner_trade_no?=?order.OrderNumber, ????????????????re_user_name?=?"stoneniqiu", ????????????????spbill_create_ip?=?_webHelper.GetCurrentIpAddress() ????????????};????????????var?data?=?transfer.GetTransfersApiParameters();????????????var?result?=?WxPayApi.Transfers(data);????????????if?(result.GetValue("result_code").ToString()?==?"SUCCESS") ????????????{????????????????return?Json(new?PortalResult(true,?"提現(xiàn)成功")); ????????????}????????????return?Json(new?PortalResult(false,?result.GetValue("return_msg").ToString()));???????????? ????????}
另外一個(gè)要注意的是,發(fā)布之后老是出現(xiàn)操作超時(shí)的錯(cuò)誤,建議就是修改超時(shí)時(shí)間為30秒。默認(rèn)的6秒容易超時(shí)。 統(tǒng)一下單的時(shí)候也是。
?public?static?WxPayData?Transfers(WxPayData?inputData,?int?timeOut?=?30)
如果企業(yè)賬戶的錢沒了,會(huì)出現(xiàn)以下提示:
相信看了本文案例你已經(jīng)掌握了方法,更多精彩請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!
推薦閱讀:
Atas ialah kandungan terperinci 企業(yè)轉(zhuǎn)賬到用戶接口的開通. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Dengan perkembangan pesat media sosial, Xiaohongshu telah menjadi salah satu platform sosial yang paling popular. Pengguna boleh membuat akaun Xiaohongshu untuk menunjukkan identiti peribadi mereka dan berkomunikasi serta berinteraksi dengan pengguna lain. Jika anda perlu mencari nombor Xiaohongshu pengguna, anda boleh mengikuti langkah mudah ini. 1. Bagaimana untuk menggunakan akaun Xiaohongshu untuk mencari pengguna? 1. Buka APP Xiaohongshu, klik butang "Temui" di penjuru kanan sebelah bawah, dan kemudian pilih pilihan "Nota". 2. Dalam senarai nota, cari nota yang disiarkan oleh pengguna yang ingin anda cari. Klik untuk memasuki halaman butiran nota. 3. Pada halaman butiran nota, klik butang "Ikuti" di bawah avatar pengguna untuk memasuki halaman utama peribadi pengguna. 4. Di penjuru kanan sebelah atas halaman utama peribadi pengguna, klik butang tiga titik dan pilih "Maklumat Peribadi"

Dalam sistem Ubuntu, pengguna root biasanya dilumpuhkan. Untuk mengaktifkan pengguna root, anda boleh menggunakan arahan passwd untuk menetapkan kata laluan dan kemudian menggunakan arahan su untuk log masuk sebagai root. Pengguna akar ialah pengguna dengan hak pentadbiran sistem tanpa had. Dia mempunyai kebenaran untuk mengakses dan mengubah suai fail, pengurusan pengguna, pemasangan dan pengalihan keluar perisian, dan perubahan konfigurasi sistem. Terdapat perbezaan yang jelas antara pengguna akar dan pengguna biasa Pengguna akar mempunyai kuasa tertinggi dan hak kawalan yang lebih luas dalam sistem. Pengguna akar boleh melaksanakan perintah sistem yang penting dan mengedit fail sistem, yang tidak boleh dilakukan oleh pengguna biasa. Dalam panduan ini, saya akan meneroka pengguna akar Ubuntu, cara log masuk sebagai akar, dan bagaimana ia berbeza daripada pengguna biasa. Notis

Apabila kami memasang komputer, walaupun proses pemasangannya mudah, kami sering menghadapi masalah dalam pendawaian Selalunya, pengguna tersilap memasangkan talian bekalan kuasa radiator CPU ke SYS_FAN Walaupun kipas boleh berputar, ia mungkin tidak berfungsi apabila komputer dihidupkan. Akan terdapat ralat F1 "CPUFanError", yang juga menyebabkan penyejuk CPU tidak dapat melaraskan kelajuan secara bijak. Mari kita berkongsi pengetahuan bersama tentang antara muka CPU_FAN, SYS_FAN, CHA_FAN dan CPU_OPT pada papan induk komputer. Sains popular pada antara muka CPU_FAN, SYS_FAN, CHA_FAN dan CPU_OPT pada papan induk komputer 1. CPU_FANCPU_FAN ialah antara muka khusus untuk radiator CPU dan berfungsi pada 12V

Sebagai salah satu platform video pendek terbesar di dunia, Douyin telah menarik perhatian banyak jenama dan perniagaan. Pengiklanan di Douyin ialah cara publisiti dan promosi yang penting untuk banyak syarikat. Jadi, bagaimana untuk mengaktifkan model perkongsian pengiklanan Douyin? Isu ini akan dibincangkan di bawah. 1. Bagaimana untuk mengaktifkan perkongsian pengiklanan Douyin? Untuk mengaktifkan perkongsian pengiklanan Douyin, anda perlu melakukan langkah berikut: Daftar dan log masuk: Daftar akaun pada platform pengiklanan Douyin, dan gunakan akaun ini untuk log masuk ke bahagian belakang pengiklan. Buat rancangan pengiklanan: Di bahagian belakang pengiklan, pilih untuk membuat rancangan pengiklanan dan isikan maklumat pengiklanan yang berkaitan, termasuk jenis pengiklanan, tempoh penghantaran, belanjawan, dsb. Sasarkan khalayak: Berdasarkan ciri produk atau perkhidmatan, pilih kumpulan khalayak sasaran yang sesuai dan tetapkan syarat sasaran seperti wilayah, umur, jantina, dsb. sistem

WeChat ialah aplikasi pemesejan segera yang dilancarkan oleh Tencent Ia menyokong pemesejan dan penerimaan silang platform dan pengendali Ia mempunyai fungsi yang kaya, termasuk suara, sembang video, dan perkongsian dalam Moments. WeChat Pay ialah fungsi pembayaran dalam WeChat Wallet, memberikan pengguna pengalaman pembayaran yang lebih mudah. Mari belajar cara mengaktifkan WeChat Pay. Bagaimana untuk mengaktifkan WeChat Pay? Tetapan Pengaktifan WeChat Pay 1. Buka WeChat pada telefon mudah alih anda, klik [Saya] di sudut kanan bawah untuk memasuki laman utama peribadi, 2. Klik pilihan [Perkhidmatan]. 3. Kemudian klik ikon [Dompet]. 4. Di bawah bahagian [Dompet], klik [Split Payment] untuk memasuki halaman pengenalan. 5. Di bahagian bawah halaman pengenalan pembayaran, klik butang [Lihat had pembayaran saya]. 6. Baca edaran dengan teliti

Sebagai bahasa pengaturcaraan yang moden dan cekap, bahasa Go mempunyai paradigma pengaturcaraan yang kaya dan corak reka bentuk yang boleh membantu pembangun menulis kod yang berkualiti tinggi dan boleh diselenggara. Artikel ini akan memperkenalkan paradigma pengaturcaraan biasa dan corak reka bentuk dalam bahasa Go dan memberikan contoh kod khusus. 1. Pengaturcaraan berorientasikan objek Dalam bahasa Go, anda boleh menggunakan struktur dan kaedah untuk melaksanakan pengaturcaraan berorientasikan objek. Dengan mentakrifkan struktur dan kaedah mengikat kepada struktur, ciri berorientasikan objek bagi pengkapsulan data dan pengikatan tingkah laku boleh dicapai. packagemaini

Antara muka dan kelas abstrak digunakan dalam corak reka bentuk untuk penyahgandingan dan kebolehlanjutan. Antara muka mentakrifkan tandatangan kaedah, kelas abstrak menyediakan pelaksanaan separa, dan subkelas mesti melaksanakan kaedah yang tidak dilaksanakan. Dalam corak strategi, antara muka digunakan untuk menentukan algoritma, dan kelas abstrak atau kelas konkrit menyediakan pelaksanaan, membenarkan penukaran dinamik algoritma. Dalam corak pemerhati, antara muka digunakan untuk menentukan tingkah laku pemerhati, dan kelas abstrak atau konkrit digunakan untuk melanggan dan menerbitkan pemberitahuan. Dalam corak penyesuai, antara muka digunakan untuk menyesuaikan kelas yang sedia ada atau kelas konkrit boleh melaksanakan antara muka yang serasi, membenarkan interaksi dengan kod asal.

Analisis mekanisme penyimpanan kata laluan pengguna dalam sistem Linux Dalam sistem Linux, penyimpanan kata laluan pengguna adalah salah satu mekanisme keselamatan yang sangat penting. Artikel ini akan menganalisis mekanisme penyimpanan kata laluan pengguna dalam sistem Linux, termasuk storan kata laluan yang disulitkan, proses pengesahan kata laluan dan cara mengurus kata laluan pengguna dengan selamat. Pada masa yang sama, contoh kod khusus akan digunakan untuk menunjukkan proses operasi sebenar penyimpanan kata laluan. 1. Penyimpanan kata laluan yang disulitkan Dalam sistem Linux, kata laluan pengguna tidak disimpan dalam sistem dalam teks biasa, tetapi disulitkan dan disimpan. L
