導航:首頁 > APP軟體 > 微信支付getprepayid

微信支付getprepayid

發布時間:2025-08-04 03:15:45

『壹』 微信App支付 獲取prepayid後 無法調起微信

APP接支付介面?

『貳』 移動APP 微信支付完整過程(wxPay 方案一)

移動APP微信支付的完整過程如下

  1. 注冊與認證

    • 注冊微信開發平台賬號:開發者首先需要在微信開發平台注冊一個賬號。
    • 創建移動應用:在微信開發平台中創建一個移動應用,並申請開發者資質認證。
    • 獲取urlScheme和apiKey:登錄微信開發平台的管理中心,選擇移動應用,查看並獲取urlScheme和apiKey的具體值,其中urlScheme的值與apiKey相同。
  2. 配置移動應用

    • 編輯config.xml文件:在移動應用的config.xml文件中,復制並設置相關的獲取方式說明以及截圖。
    • 設置urlScheme和apiKey:根據從微信開發平台獲取的值,正確配置移動應用中的urlScheme和apiKey。
  3. 獲取預支付訂單號

    • 伺服器端執行:推薦在伺服器端執行獲取預支付訂單號的操作,以確保安全性。
    • 生成支付請求數據:預支付下單成功後,伺服器會返回拼接好的支付請求數據,包括所有必要的參數,如appid、partnerid、prepayid、noncestr、package、timestamp等。
  4. 構建支付請求

    • 在App端代碼:使用從伺服器返回的支付請求數據,在App端代碼中構建支付請求。
    • 確保簽名正確:特別注意第二次參與簽名的欄位,包括appid、partnerid、prepayid、noncestr、package、timestamp等,確保簽名參數正確無誤。
  5. 執行支付

    • 發起支付請求:App端向微信支付伺服器發起支付請求。
    • 用戶確認支付:用戶在App內確認支付信息,並輸入支付密碼完成支付。
    • 支付結果回調:微信支付伺服器會將支付結果回調給App端或伺服器端,開發者可以根據回調結果進行相應的處理。

在整個支付過程中,開發者需要特別注意簽名的正確性,以及確保所有參數都按照微信支付的要求進行配置和傳遞。如果遇到問題,可以檢查簽名參數、API調用順序等是否正確。

『叄』 微信小程序支付 (一、生成prepay_id) 2018-08-06

微信公眾平台: 微信公眾平台

https://mp.weixin.qq.com/

商戶平台: 商戶平台

https://pay.weixin.qq.com/index.php/core/home/login

開發手冊 api 是: 

https://pay.weixin.qq.com/wiki/doc/api/index.html

https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=9_1

生成XML的測試介面: 測試介面

https://pay.weixin.qq.com/wiki/tools/signverify/

32位隨機碼生成器

1 配置參數, 一個都不能少(這些都是必填的,還有其他選填的參數,也可以隨心情填寫)

    appid        此小程序的唯一標識 例如:wxed9dxxx6d6cxxx9e

    body        可以寫商品描述 例如:我是商品描述,用戶買了兩個饅頭

    mch_id    商戶id 需在 商戶平台  查看(申請商戶平台成功就會得到) 如: 149411***2

    nonce_str    隨機字元串(別帶小數點(沒考證 感覺)) 例如:76521019851170500000

    notify_url    成功後的通知地址 例如:https://.top/callbackofpay

    openid        用戶的唯一標識 在用戶使用小程序的時候通過其 code 換取 openid 

                        例如: obxgc5CgBbgKDrvcxxxxxJ-xxxxx

    out_trade_no        商戶訂單號 例如:20180805740161 需要無重復

    spbill_create_ip    終端ip(伺服器的ip)貌似 127.0.0.1 就行

    total_fee                此單的交易額度(錢 money) 例如:888 單位是 分錢。及8.88元錢 ( 注意是數值型,非字元型,除此之外其他的都是字元型 )

    trade_type    小程序用 'JSAPI' 其他看api

2 將以上參數(必要參數一個不能少)按照 key 字典排序,進行拼接。

例如: appid=wxedxxx2xxx6c03e9e&body=我是商品描述,用戶買了兩個饅頭.&mch_id=149411***2&nonce_str=76521019851170500000 ......

3 在結尾加上 商戶的秘鑰 mch_key (需在商戶平台配置 在:賬戶中心-->賬戶設置-->API安全-->API秘鑰 ,可以用 32位隨機碼生成器  生成)

    + "&key=" + mch_key

5 對拼接成的字元串,進行md5加密-->轉大寫 -->生成 簽名 sign

    例如: 

6 將以上參數拼成  xml

let _xmlUnifiedorder = `

            ${myObj.appid}

            ${myObj.body}

            ${myObj.mch_id}

            ${myObj.nonce_str}

            ${myObj.notify_url}

            ${myObj.openid}

            ${myObj.out_trade_no}

            ${myObj.spbill_create_ip}

            ${myObj.total_fee}

            ${myObj.trade_type}

            ${sign}

        `;

7 攜帶參數 post 訪問  https://api.mch.weixin.qq.com/pay/unifiedorder 介面

    如果正確 會成功得到 xml格式的  prepay_id ,如果簽名錯誤進行下面的錯誤查找。

    ~~:進行錯誤查找  可以拿出參數在  測試介面  進行測試 ,無異常可以正常生成 xml之後,如果還報錯。

    試著 更改 商戶平台的秘鑰 (詳細請看第 3 步)。貌似很多人都踩這個雷了  ...

<code>

// 字典排序 key1=xxx&key2=zzz 拼接成字元串

function joinToStr(_obj) {

    let keyArr = [];

    for (let key in _obj) {

        keyArr.push(key);

    }

    keyArr = keyArr.sort();

    console.log("keyArrSort--->", keyArr);

    //    paySign = MD5(appId=wxd678efh567hg6787&nonceStr=&package=prepay_id=&signType=MD5&timeStamp=1490840662&key=) =

    // _str 是 paySign 中MD5 包裹的字元串部分

    let _str = "";

    let len = keyArr.length;

    for (let i = 0; i < len; i++) {

        if (i == len - 1) {

            _str += (keyArr[i] + "=" + _obj[keyArr[i]]);

        } else {

            _str += (keyArr[i] + "=" + _obj[keyArr[i]] + "&");

        }

    }

    return _str;

}

</code>

『肆』 ios 微信支付xml解析失敗,prepayid獲取失敗!求解決。。

微信支付或訪問一些網站時報錯:
SDKSample[669:19724] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9802)
原因是 :
IOS9 中將 http 請求改成了 HTTPS(加密) 的方式
解決:
在項目的info.plist 文件里加上如下節點:
NSAppTransportSecurity - NSAllowsArbitraryLoads
這個子節點的意思是:是否允許任性的載入? 設為 YES 的話就將禁用了 AppTransportSecurity 轉而使用用戶自定義的設置。
ps:
http://my.oschina.net/jack088/blog/514630

『伍』 php微信支付開發中prepayid是什麼意思

是訂單id
H5調用微信支付API時,需要相應參數,其中就包含package。package一般格式為「prepay_id=***」,prepay_id就是指下單時生成的訂單id,通過調用「統一下單」介面(https://api.mch.weixin.qq.com/pay/unifiedorder)來獲取

閱讀全文

與微信支付getprepayid相關的資料

熱點內容
文件名怎麼做到排列整齊 瀏覽:480
css網站源碼 瀏覽:359
asta文件怎麼導出圖片 瀏覽:976
抖音程序數據怎麼清空 瀏覽:281
視頻文件無法移動 瀏覽:908
怎樣整理電腦文件夾 瀏覽:1
索尼網路監控攝像機sdk 瀏覽:402
改ios手機程序圖標 瀏覽:471
虛擬主機如何使用360網站衛士 瀏覽:750
java介面怎麼用 瀏覽:858
android批量下載文件 瀏覽:848
720文件路徑 瀏覽:647
linux命令行查詢文件夾大小寫 瀏覽:191
在編程貓nemo里怎麼下載圖片 瀏覽:298
羅布樂思游戲怎麼編程 瀏覽:419
eco是什麼意思app 瀏覽:730
psformac安裝教程 瀏覽:459
用圖片來寫js的時鍾 瀏覽:784
linux如何找到最長的文件 瀏覽:127
ug編程法蘭克怎麼調行程 瀏覽:162

友情鏈接