百度智能小程序 通知退款狀態(tài)

2020-09-05 15:01 更新

使用場景

當(dāng)小程序開發(fā)者開發(fā)者申請的退款有結(jié)果后(退款狀態(tài)為:退款成功、退款失?。俣仁浙y臺會把相關(guān)結(jié)果發(fā)送開發(fā)者的退款回調(diào)地址(開發(fā)者平臺注冊的退款回調(diào)地址),開發(fā)者需要接收處理,并返回應(yīng)答。

接口注意事項(xiàng)

  1. 冪等性:開發(fā)者接口需要具備冪等性平臺技術(shù)術(shù)語---冪等性;
  2. 超時時間:開發(fā)者接口的耗時要求小于 2s(超過 2s 會觸發(fā)平臺的超時重試,重試間隔:2min/4min/10min/30min/1h...);
  3. 返回值判斷:errno 為 0 表示開發(fā)者已經(jīng)成功收到退款成功信息,并妥善處理。errno 不為 0 將認(rèn)為是同步退款結(jié)果信息失敗,會發(fā)起重試(不限次數(shù),重試間隔:2min/4min/10min/30min/1h...);
  4. 訂單狀態(tài)同步:開發(fā)者收到通知退款狀態(tài)回調(diào)切嚴(yán)格按照文檔提示返回參數(shù),后臺訂單狀態(tài)才會同步且顯示“已退款”;
如未收到回調(diào)請求,請檢查服務(wù)器網(wǎng)關(guān)是否有準(zhǔn)入限制,如有限制參照阿里云安全組設(shè)置中的 IP 地址設(shè)置白名單。

通知參數(shù)說明

參數(shù) 參數(shù)名稱 類型(長度范圍) 參數(shù)說明 是否可空 樣例
userId 用戶 ID Long 百度收銀臺用戶 ID 149235070
orderId 訂單 ID Long 百度平臺訂單 ID 1068881223
tpOrderId 開發(fā)者訂單 ID String 開發(fā)者訂單 ID 11119800
refundBatchId 退款批次號 String 平臺退款批次號【冪等性標(biāo)識參數(shù)】(用于重入判斷) 149235070
refundStatus 退款狀態(tài) Integer 1:退款成功,2:退款失敗。 1
rsaSign 參數(shù)簽名 String 平臺生成的 sign 全部參數(shù)參與簽名,詳見簽名與驗(yàn)簽。

備注:這里對全部參數(shù)簽名是對平臺的所有 POST 參數(shù)進(jìn)行簽名,如果開發(fā)者 URL 里包含 GET 類型參數(shù),不會參與簽名。驗(yàn)簽需要使用正確格式的平臺公鑰,可以在服務(wù)詳情中查詢,詳見簽名與驗(yàn)簽第 8 項(xiàng)內(nèi)容。

返回參數(shù)說明

名稱 類型 是否必須 示例值 描述
errno Integer 0 返回碼
msg String success 返回信息
data Object {} 返回數(shù)據(jù)

通知觸發(fā)條件

退款成功后,平臺會調(diào)用該接口,將退款成功消息通知到開發(fā)者。

開發(fā)者服務(wù)器通知參數(shù)獲取

  1. 百度收銀臺是用 POST 方式發(fā)送通知信息,參數(shù)以 URL param 的方式返回。
    PHP 服務(wù)推薦參數(shù)獲取方式:$_POST['xxx']。
    Java 服務(wù)推薦參數(shù)獲取方式:@RequestParam(value="xxx")。
  2. 百度收銀臺主動發(fā)起通知,該方式才會被啟用。
  3. 程序執(zhí)行完后須同步返回符合要求的 JSON 字符串。如果開發(fā)者返回給百度收銀臺的字符不是合法 JSON 或者解析出來的 errno 不為 0,會再次重發(fā)。

開發(fā)者通知參數(shù)合法性驗(yàn)證

當(dāng)百度收銀臺通過調(diào)用接口同步退款信息給給開發(fā)者時,開發(fā)者獲得這些數(shù)據(jù)后,必須進(jìn)行如下處理:

  1. 驗(yàn)證簽名
    首先必需驗(yàn)證簽名,然后驗(yàn)證是否是百度收銀臺發(fā)來的通知,請參見簽名與驗(yàn)簽。
  2. 業(yè)務(wù)數(shù)據(jù)處理注意事項(xiàng)
    開發(fā)者需要驗(yàn)證該通知數(shù)據(jù)中的 orderId 是否為開發(fā)者系統(tǒng)中記錄的百度訂單號,若未發(fā)現(xiàn)該訂單,則表明本次通知是異常通知,務(wù)必忽略。在上述驗(yàn)證通過后開發(fā)者請?zhí)幚硗丝畛晒ο?,將處理結(jié)果返回。如果開發(fā)者未正確處理業(yè)務(wù)通知,存在潛在的風(fēng)險,開發(fā)者自行承擔(dān)因此而產(chǎn)生的所有損失。

DEMO

  • 入?yún)?REQUEST) DEMO:
https:://xxx.tpbusiness.xxx/notifyRefundRes?orderId=800020199&refundBatchId=100058888&refundStatus=1&rsaSign=Gzu1RT2toJSDthcLPG1ZWROI3jzvxFtO7yCPUqMT3L7cmnARncm5IIIQ6x+7S/02zWxr5FC9945WFSurO9kepVbU7YS6Lh9SEVQhvTO0YKG7TlLFTpH3Ik7JeHQalAKXYe/jNREDpHmTF9Jrq/wABeZGYXJn1M75A37h9zUt+kw=
  • 返回(RESPONSE) DEMO:
{"errno":0,"msg":"success","data":{}}


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號