天天看點

支付寶預授權接口報錯系統異常自查方案

說明:

本帖主要和大家交流一下調用alipay.fund.auth.order.app.freeze(線上資金授權當機接口)報錯自查的方案

參考以下排查方案:

一、調用方法

alipay.fund.auth.order.app.freeze接口響應參數輸出的調用方法必須是sdkExecute()。

請使用sdkExecute方法,通過response.getBody(),擷取到簽名參數,用于支付接口的orderStr。

二、out_order_no和out_request_no重複導緻

  out_order_no:商戶授權資金訂單号 ,不能包含除中文、英文、數字以外的字元,建立後不能修改,需要保證在商戶端不重複。

  out_request_no:商戶本次資金操作的請求流水号,用于标示請求流水的唯一性,不能包含除中文、英文、數字以外的字元,需要保證在商戶端不重複。

  這兩個參數必須保證每一次請求都是唯一的,不能重複

pay_timeout: 如果傳入了這個訂單付款時間參數,但是沒有指派也會報系統異常,如果不指派預設15M,不傳就整個參數不要傳入

notify_url :這個異步位址參數也需要傳入,需要通過這個當機異步通知傳回的授權碼進行付款

三、賬号資訊不一緻問題

  必須保證調用接口的appid對應的payee_logon_id(收款方支付寶登入号)和payee_user_id(收款方的支付寶唯一使用者号,以2088開頭的16位純數字組成)是一緻的,即對應的是相同的一個賬戶。

  payee_logon_id和payee_user_id可以選擇傳入其中一個  但是不管是傳入其中一個還是兩個都傳入必須保證是和調用接口的appid對應的支付寶賬戶一緻。

注:payee_logon_id表示的是收款方支付寶登入号,比如商戶有一個150****的手機賬号,但是登入賬戶為郵箱賬戶,那麼這個參數傳入的就應該是郵箱賬戶 不能傳入手機号,使用什麼賬号登入,這個參數就傳入什麼,建議使用payee_user_id傳值

四、extra_param參數問題

關于extraParam業務參數的問題可以參考文檔根據自己的實際行業場景入參信用授權類目檢視位址:

[url]https://docs.open.alipay.com/10719[/url]

,這個參數不是必傳的,但是如果調用接口出現系統異常錯誤建議不傳入這個參數來測試一下。另外兩個參數:外部商戶的門店編号outStoreCode和外部商戶的門店簡稱outStoreAlias可根據需求傳入

注:如果想要控制支付管道,enable_pay_channels這個參數是控制支付管道的,餘額寶,花呗,芝麻信用免押金進行支付。(目前管道參數隻開放了這三個)

五、秘鑰問題

調用接口的秘鑰不比對也會導緻出現這個問題 ,建議參考這個文章:[url]https://openclub.alipay.com/read.php?tid=1486&fid=69[/url]   驗證公鑰正确性,确認一下秘鑰時是否比對。