<noframes id="bhrfl"><address id="bhrfl"></address>

    <address id="bhrfl"></address>

    <noframes id="bhrfl"><address id="bhrfl"><th id="bhrfl"></th></address>

    <form id="bhrfl"><th id="bhrfl"><progress id="bhrfl"></progress></th></form>

    <em id="bhrfl"><span id="bhrfl"></span></em>

    全部
    常見問題
    產品動態
    精選推薦

    微信支付簽名錯誤解決方法

    管理 管理 編輯 刪除

    1.V3簽名錯誤

    1.1服務端簽名錯誤(如下單) 參數錯誤和方式錯誤無先后順序

    1.1.1 簽名方式錯誤

    當簽名參數無誤時,就是簽名的方式有問題,可以使用以下方式檢查

    使用官方驗簽工具進行驗簽,地址:https://pay.weixin.qq.com/wiki/doc/apiv3/wechatpay/download/Product_5.zip

    明文填寫方式參考官方簽名生成文檔 ,地址:https://pay.weixin.qq.com/wiki/doc/apiv3/wechatpay/wechatpay4_0.shtml

    94285202306101727412452.png

    注意紅色方框內容,【\n】在驗簽工具明文中是換行的意思,不是字符串,注意一共有5個,所以POST請求在驗簽工具里面最后一行需要換一行,GET需要換兩行,并且GET請求需要在URL末尾附加有’?'和對應的查詢字符串
    POST請求可參考以下截圖

    e2094202306101728257207.png

    GET請求可參考以下截圖,注意【?】為英文狀態下的?

    935a6202306101728359778.png

    1.1.2 簽名參數錯誤(含私鑰等參數) 參數錯誤和方式錯誤無先后順序

    當簽名方式無誤時,就是簽名的參數有問題,可以使用以下方式檢查
    使用官方postman腳本進行測試,地址:https://github.com/wechatpay-apiv3/wechatpay-postman-script
    注意:需要先下載腳本后導入postman里進行配置

    1dafb202306101728499680.png

    嚴格按照官方步驟進行配置,注意這里的配置,Authorization的值就是{{auth}},不需要自己生成簽名

    13cfb202306101729006913.png

    配置好之后先測試下載證書(官方已經配置好,直接可以調用)如果成功下載證書,說明私鑰、商戶號、證書序列號是沒有問題的,根據請求方式選擇【證書下載】或者【發放指定批次的代金券】替換一下參數和請求URL即可測試出錯的接口

    1.1.3 Authorization頭部值錯誤

    1.商戶號mchid 與使用私鑰不匹配或不存在(注意:千萬不可以有空格)
    2.證書序列號serial_no與當前私鑰對應在商戶平臺查看的證書序列號不匹配(注意:如果不匹配可能會導致系統繁忙,請稍后重試)
    3.隨機字符串nonce_str與組成簽名的明文中的隨機字符串一致(注意:千萬不可以有空格)
    4.時間戳timestamp與組成簽名的明文中的時間戳一致(注意:千萬不可以有空格)
    5.組成請求頭時是一行數據,WECHATPAY2-SHA256-RSA2048 mchid=“1900009191”【中間是一個空格,不是換行】

    5d51720230610172911764.png

    6.無論是下單還是喚起,如果是服務商模式,均使用服務商的參數(私鑰、商戶號、證書序列號)喚起和下單一定需要使用相同的私鑰進行簽名

    1.2喚起簽名錯誤

    1.2.1 簽名參數錯誤

    1.嚴格按照文檔需要的參數進行簽名,如小程序喚起支付

    d5fb1202306101729233613.png

    注意參與簽名時不要有空格
    2.私鑰文件需要和下單時一樣,如果是服務商模式,均使用服務商的
    3.喚起的參數字段名大小寫必須與文檔中一致,注意簽名方式為RSA
    4.測試時以上均無誤,則把前端參數寫死后測試

    1.2.2 簽名方式錯誤(前后端簽名方式需一致)

    1.簽名方式按照文檔中的方式進行簽名,可用簽名驗證工具進行驗簽,明文排放規則如下

    04225202306101729374011.png

    這里的【\n】在驗簽工具明文中是換行的意思,不是字符串注意一共有4個,明文最后一行需換行

    d82b9202306101729481516.png

    2.V2簽名錯誤

    2.1服務端簽名錯誤(如下單)

    使用官方簽名工具驗證簽名,復制請求的XML請求串,使用api秘鑰驗簽
    簽名方式按照加密的方式驗證,例如MD5

    75476202306101729584361.png

    點擊校驗簽名,就會得到驗簽的結果

    6bcd3202306101730089837.png

    使用官方簽名工具生成簽名,使用postman測試,無需任何配置,復制粘貼請求地址和請求參數,就可以校驗參數和秘鑰是否正確
    注:需要使用證書的接口,可以自行在網上查詢如何導入證書
    地址:https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=20_1

    f50cb202306101730194028.png

    注意簽名方式和字段簽名方式需要保持一致,填寫時不要有空格,注意大小寫需要與文檔一致
    如果使用驗簽工具生成簽名后請求接口依然提示簽名錯誤,那就是API秘鑰有問題,登錄商戶平臺重置秘鑰后再重試
    秘鑰key設置方式:https://kf.qq.com/faq/161220VnAvUb161220NJRbiM.html
    如果是服務商模式,均使用服務商的秘鑰

    2.2喚起簽名錯誤(前后端簽名方式需一致)

    喚起支付時需要按照文檔要求生成簽名,不是用下單成功后返回的簽名,注意簽名的參數大小寫需要與文檔一致

    88ca6202306101730291361.png

    可以使用驗簽工具生成簽名值寫死在前端進行測試,簽名方式及秘鑰key需要下單時一致
    喚起時的簽名錯誤可能有:
    1.如參與簽名字段的大小寫或者不是文檔規定使用的參數(有缺少或有多余的參數)
    2.生成簽名的秘鑰key錯誤,注意一點是在商戶平臺設置的api秘鑰,設置地址:
    https://kf.qq.com/faq/161220VnAvUb161220NJRbiM.html
    服務商模式下單和喚起都需要使用服務商的秘鑰
    3.前后端交互問題,可能前端傳遞的參數為空或錯誤
    4.注意喚起的方法里的字段需要與文檔中一致,不可以缺少或者多余

    cbbaf202306101730417090.png

    字段注意不要有空格,需要真實參數【appId必須是當前喚起主體的appId,例如小程序就必須是當前喚起支付的小程序appId,且和下單時的appId一致】

    3.V3驗證簽名錯誤

    在代碼中驗簽失敗的時候,可以使用官方驗簽工具進行驗簽,下載地址:https://pay.weixin.qq.com/wiki/doc/apiv3/wechatpay/download/Product_5.zip
    驗簽是需要使用平臺證書,不是使用商戶證書,平臺證書接口文檔:https://pay.weixin.qq.com/wiki/doc/apiv3/wechatpay/wechatpay5_1.shtml
    獲取到平臺證書后需要解密,解密文檔:https://pay.weixin.qq.com/wiki/doc/apiv3/wechatpay/wechatpay4_2.shtml
    明文和簽名填寫方式參考官方驗證簽名文檔 ,文檔地址:https://pay.weixin.qq.com/wiki/doc/apiv3/wechatpay/wechatpay4_1.shtml
    平臺證書、明文、簽名都得到之后,可以使用驗簽工具進行驗簽,文檔中的/n換行在驗簽工具中是需要手動換行的,所以最后一行也是需要換行。如圖

    a7fe6202306101730571195.png

    如有其他簽名錯誤及解決方法歡迎補充

    請登錄后查看

    CRMEB-慕白寒窗雪 最后編輯于2023-06-10 17:31:24

    快捷回復
    回復
    回復
    回復({{post_count}}) {{!is_user ? '我的回復' :'全部回復'}}
    排序 默認正序 回復倒序 點贊倒序

    {{item.user_info.nickname ? item.user_info.nickname : item.user_name}} LV.{{ item.user_info.bbs_level }}

    作者 管理員 企業

    {{item.floor}}# 同步到gitee 已同步到gitee {{item.is_suggest == 1? '取消推薦': '推薦'}}
    {{item.is_suggest == 1? '取消推薦': '推薦'}}
    沙發 板凳 地板 {{item.floor}}#
    {{item.user_info.title || '暫無簡介'}}
    附件

    {{itemf.name}}

    {{item.created_at}}  {{item.ip_address}}
    打賞
    已打賞¥{{item.reward_price}}
    {{item.like_count}}
    {{item.showReply ? '取消回復' : '回復'}}
    刪除
    回復
    回復

    {{itemc.user_info.nickname}}

    {{itemc.user_name}}

    回復 {{itemc.comment_user_info.nickname}}

    附件

    {{itemf.name}}

    {{itemc.created_at}}
    打賞
    已打賞¥{{itemc.reward_price}}
    {{itemc.like_count}}
    {{itemc.showReply ? '取消回復' : '回復'}}
    刪除
    回復
    回復
    查看更多
    打賞
    已打賞¥{{reward_price}}
    7830
    {{like_count}}
    {{collect_count}}
    添加回復 ({{post_count}})

    相關推薦

    快速安全登錄

    使用微信掃碼登錄
    {{item.label}} 加精
    {{item.label}} {{item.label}} 板塊推薦 常見問題 產品動態 精選推薦 首頁頭條 首頁動態 首頁推薦
    取 消 確 定
    回復
    回復
    問題:
    問題自動獲取的帖子內容,不準確時需要手動修改. [獲取答案]
    答案:
    提交
    bug 需求 取 消 確 定
    打賞金額
    當前余額:¥{{rewardUserInfo.reward_price}}
    {{item.price}}元
    請輸入 0.1-{{reward_max_price}} 范圍內的數值
    打賞成功
    ¥{{price}}
    完成 確認打賞

    微信登錄/注冊

    切換手機號登錄

    {{ bind_phone ? '綁定手機' : '手機登錄'}}

    {{codeText}}
    切換微信登錄/注冊
    暫不綁定
    亚洲欧美字幕
    CRMEB客服

    CRMEB咨詢熱線 咨詢熱線

    400-8888-794

    微信掃碼咨詢

    CRMEB開源商城下載 源碼下載 CRMEB幫助文檔 幫助文檔
    返回頂部 返回頂部
    CRMEB客服