之前對(duì)接支付寶商家扣款的時(shí)候,在簽約協(xié)議的部分卡了很久,今天把之前遇到的簽約問(wèn)題匯總記錄一下~
?文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-741554.html
協(xié)議簽約流程
首先幫大家捋一下簽約的順序,便于直觀理解:
?
?
其次還需要知道的是,支付寶的商家扣款的簽約接口有兩個(gè):
- 一個(gè)是單獨(dú)簽約接口:
?
?
- 另一個(gè)是支付并簽約接口:
?
?
這兩個(gè)接口都可以簽約,主要區(qū)別在于簽約的時(shí)候是否涉及支付,可以根據(jù)業(yè)務(wù)場(chǎng)景去確認(rèn)使用哪個(gè)接口簽約。
具體問(wèn)題一覽
簽約流程看起來(lái)比較簡(jiǎn)單,但在簽約的各個(gè)階段都容易遇到問(wèn)題,比如:
- 生成的簽約串,為什么喚不起簽約頁(yè)面?? ̄へ ̄
- 為什么簽約跳轉(zhuǎn)到支付寶的時(shí)候會(huì)中轉(zhuǎn)一下支付寶頁(yè)面??(▼皿▼#)
- 簽約完成了之后為啥沒(méi)有通知?。?╬ ̄皿 ̄)
- 為什么我收到通知了但是還是簽約失敗了?!(╥╯^╰╥)
雖然問(wèn)題很多,不過(guò)好在最終都順利解決了,下面將詳細(xì)記錄每個(gè)問(wèn)題的解法,供大家參考~
排查思路
問(wèn)題一:生成的簽約串,無(wú)法喚起簽約界面,報(bào)錯(cuò)“開(kāi)通失敗”
?
?
[開(kāi)通失?。合到y(tǒng)異常,簽約失敗,商戶請(qǐng)求數(shù)據(jù)錯(cuò)誤]
遇到這個(gè)問(wèn)題后,搜索參考了官方文檔,發(fā)現(xiàn)這個(gè)報(bào)錯(cuò)的意思就是參數(shù)有問(wèn)題,下次遇到直接檢查參數(shù)即可。
以下這些參數(shù)都有可能導(dǎo)致這個(gè)報(bào)錯(cuò),在此做一匯總,幫大家避坑、自查:
- external_agreement_no 傳了,但是沒(méi)有傳 sign_scene
- external_agreement_no 傳了,但是 sign_scene 是默認(rèn)值
- channel 錯(cuò)誤或者為空
- execute_time 下次扣款時(shí)間為空,或者 格式不是 yyyy-MM-dd
- period_type = DAY 的時(shí)候,period 周期小于 7 天,最小周期不能小于 7 天
- period_type = MONTH 的時(shí)候,execute_time > 28 日
- total_amount < single_amount 總扣款金額小于單次扣款金額
- total_payment 總扣款次數(shù)為 0
?
其它喚起簽約常見(jiàn)報(bào)錯(cuò)可參閱官方文檔:
- [周期扣款支付并簽約報(bào)錯(cuò):系統(tǒng)異常]
- [周期扣款喚起簽約界面報(bào)錯(cuò)系統(tǒng)繁忙]
- [開(kāi)通失敗:簽約賬戶不匹配]
- [支付寶個(gè)人協(xié)議頁(yè)面簽約接口喚起頁(yè)面報(bào)錯(cuò)404]
- [開(kāi)通失?。河脩糇畲蠛灱s次數(shù)檢查失敗]
?
問(wèn)題二:為什么簽約跳轉(zhuǎn)到支付寶的時(shí)候會(huì)中轉(zhuǎn)一下支付寶頁(yè)面
喚起簽約沒(méi)有問(wèn)題之后,遇到了一個(gè)體感不好的地方,就是在喚起簽約跳轉(zhuǎn)到支付寶的過(guò)程中會(huì)遇到先跳轉(zhuǎn)到支付寶頁(yè)面的問(wèn)題,雖然沒(méi)有什么大的影響,但是整體體感上不是很好 =^ =。
這個(gè)找了支付寶客服問(wèn)了下,結(jié)果主要是因?yàn)槲?strong>生成的簽約串的拼接方式有問(wèn)題,使用
alipays://platformapi/startapp?appId=60000157&appClearTop=false&startMultApp=YES&sign_params=
去拼接就可以了,客服給力o( ̄▽ ̄)d
拼接鏈接參考官方文檔:[周期扣款無(wú)線端如何喚起簽約] 即可~
?
其它簽約跳轉(zhuǎn)常見(jiàn)問(wèn)題可參閱官方文檔:
- [商家扣款如何支持H5、PC 、APP、支付寶小程序場(chǎng)景]
- [商家扣款喚起支付寶錢(qián)包鏈接appid是否要更換]
?
問(wèn)題三:簽約完成了之后為啥沒(méi)有通知
原因一:簽約失敗了
這個(gè)問(wèn)題的最重要的是要確認(rèn)是不是簽約成功了?。≈挥泻灱s成功的情況下,支付寶才會(huì)發(fā)送異步通知。
一直沒(méi)有收到通知的情況下,一定要通過(guò)查詢接口去確認(rèn)是不是簽約成功的。
?
原因二:異步地址有問(wèn)題
另外筆者還遇到過(guò)因?yàn)樵O(shè)置的地址有問(wèn)題導(dǎo)致沒(méi)有收到的,此類問(wèn)題可以參考官方文檔:[收不到異步通知]。
商家扣款簽約接口比較特別的是,他的簽約地址可以在三個(gè)地方設(shè)置,分別是:
接口的 sign_notify_url 參數(shù)、接口的 notify_url 參數(shù)、平臺(tái)上的 應(yīng)用網(wǎng)關(guān) 地址。
優(yōu)先級(jí)是 sign_notify_url > notify_url > 應(yīng)用網(wǎng)關(guān)
?
其他常見(jiàn)問(wèn)題可參閱官方文檔:
- [商家扣款如何判斷用戶簽約是否成功]
?
問(wèn)題四:為什么我收到通知了但是還是簽約失敗了
讓我覺(jué)得最「坑」的還是這個(gè)支付并簽約接口了。
剛開(kāi)始收到通知之后覺(jué)得已經(jīng)簽約成功了,但是消息內(nèi)容怎么看都跟之前接收到的不一樣,研究了下發(fā)現(xiàn)是支付的通知,不是簽約的通知。
查了文檔才知道,這個(gè)接口他發(fā)兩條通知,一條支付的,一條簽約的。
而且支付成功不一定簽約成功。
不管怎么說(shuō),一定要根據(jù)是否收到了簽約的異步通知來(lái)判斷簽約狀態(tài),實(shí)在不行就用查詢接口查。
?
另外要注意,如果我們選擇不開(kāi)啟自動(dòng)續(xù)費(fèi)的話,也不會(huì)有簽約成功的通知。
?
?
其他常見(jiàn)問(wèn)題可參閱官方文檔:
- [支付并簽約接口完成支付和簽約之后有幾條異步]
- [如何取消周期/商家扣款的【開(kāi)通支付寶自動(dòng)續(xù)費(fèi)】按鈕]
?
以上就是關(guān)于支付寶接口簽約遇到的所有問(wèn)題啦,希望對(duì)你有所幫助,有問(wèn)題一起溝通~??ヽ(°▽°)ノ?文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-741554.html
到了這里,關(guān)于支付寶代扣接口簽約的各種問(wèn)題排查(建議收藏)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!