视频一区二区三区自拍_千金肉奴隷1985未删减版在线观看_国产成人黄色视频在线播放_少女免费播放片高清在线观看_国产精品v欧美精品v

基礎(chǔ)支付
JSAPI支付
APP支付
H5支付
Native支付
小程序支付
合單支付
付款碼支付
經(jīng)營能力
微信支付分(公共API)
微信支付分(免確認(rèn)預(yù)授權(quán)模式)
微信支付分(需確認(rèn)模式)
支付即服務(wù)
行業(yè)方案
智慧商圈
微信支付分停車服務(wù)
電子發(fā)票
營銷工具
代金券
商家券
委托營銷
支付有禮
小程序發(fā)券插件
H5發(fā)券
圖片上傳(營銷專用)
現(xiàn)金紅包
資金應(yīng)用
商家轉(zhuǎn)賬到零錢
分賬
風(fēng)險(xiǎn)合規(guī)
消費(fèi)者投訴2.0
其他能力
清關(guān)報(bào)關(guān)
圖片上傳
視頻上傳
微信支付平臺證書

停車入場狀態(tài)變更通知API

最新更新時(shí)間:2021.08.06 版本說明


從用戶進(jìn)入開通微信支付分停車服務(wù)的停車場(用戶入場通知接口),到用戶離場期間(扣款接口),這個(gè)時(shí)間段內(nèi)如果停車入場狀態(tài)變?yōu)榭捎没蛘卟豢捎茫⑿艜严嚓P(guān)狀態(tài)變更情況(可用/不可用)異步發(fā)送給商戶,回調(diào)url為調(diào)用用戶入場通知接口時(shí)填寫的notify_url字段。商戶在收到停車入場狀態(tài)變更通知后,需進(jìn)行接收處理并返回應(yīng)答。

注意:

? 同樣的通知可能會多次發(fā)送給商戶系統(tǒng)。商戶系統(tǒng)必須能夠正確處理重復(fù)的通知。 推薦的做法是,當(dāng)商戶系統(tǒng)收到通知進(jìn)行處理時(shí),先檢查對應(yīng)業(yè)務(wù)數(shù)據(jù)的狀態(tài),并判斷該通知是否已經(jīng)處理。如果未處理,則再進(jìn)行處理;如果已處理,則直接返回結(jié)果成功。在對業(yè)務(wù)數(shù)據(jù)進(jìn)行狀態(tài)檢查和處理之前,要采用數(shù)據(jù)鎖進(jìn)行并發(fā)控制,以避免函數(shù)重入造成的數(shù)據(jù)混亂。

? 如果在所有通知頻率后沒有收到微信側(cè)回調(diào),商戶應(yīng)調(diào)用查詢車牌服務(wù)開通信息確認(rèn)車牌服務(wù)開通狀態(tài)。


特別提醒:商戶系統(tǒng)對于支付成功通知的內(nèi)容一定要做簽名驗(yàn)證,并校驗(yàn)通知的信息是否與商戶側(cè)的信息一致,防止數(shù)據(jù)泄露導(dǎo)致出現(xiàn)“假通知”,造成資金損失。

接口說明

適用對象:直連商戶

請求URL:該鏈接是商戶[創(chuàng)建停車入場]提交的notify_url參數(shù),必須為https協(xié)議。如果鏈接無法訪問,商戶將無法接收到微信通知。 通知url必須為直接可訪問的url,不能攜帶參數(shù)。示例: “http://www.tg885.com/wxpay/pay.action”

通知規(guī)則

停車入場狀態(tài)變更后,微信會把相關(guān)停車入場狀態(tài)發(fā)送給商戶,商戶需要接收處理該消息,并返回應(yīng)答。

對后臺通知交互時(shí),如果微信收到商戶的應(yīng)答不符合規(guī)范或超時(shí),微信認(rèn)為通知失敗,微信會通過一定的策略定期重新發(fā)起通知,盡可能提高通知的成功率,但微信不保證通知最終能成功。 (通知頻率為15s/15s/30s/3m/10m/20m/30m/30m/30m/60m/3h/3h/3h/6h/6h - 總計(jì) 24h4m)

通知報(bào)文

停車入場狀態(tài)變更通知是以POST方法訪問商戶設(shè)置的通知url,通知的數(shù)據(jù)以JSON 格式通過請求主體(BODY)傳輸。通知的數(shù)據(jù)包括了加密的支付結(jié)果詳情。
(注:由于涉及到回調(diào)加密和解密,商戶必須先設(shè)置好apiv3密鑰后才能解密回調(diào)通知,apiv3密鑰設(shè)置文檔指引詳見APIv3密鑰設(shè)置指引

參數(shù)解密

下面詳細(xì)描述對通知數(shù)據(jù)進(jìn)行解密的流程:

  1. 1、用商戶平臺上設(shè)置的APIv3密鑰【微信商戶平臺—>賬戶設(shè)置—>API安全—>設(shè)置APIv3密鑰】,記為apiv3 key;
  2. 2、針對resource.algorithm中描述的算法(目前為AEAD_AES_256_GCM),取得對應(yīng)的參數(shù)nonce和associated_data;
  3. 3、使用apiv3 key、nonce和associated_data,對數(shù)據(jù)密文resource.ciphertext進(jìn)行解密,得到JSON形式的資源對象;

注: AEAD_AES_256_GCM算法的接口細(xì)節(jié),請參考rfc5116。微信支付使用的密鑰apiv3 key長度為32個(gè)字節(jié),隨機(jī)串nonce長度12個(gè)字節(jié),associated_data長度小于16個(gè)字節(jié)并可能為空。

通知參數(shù)

參數(shù)名 變量 類型[長度限制] 必填 描述
通知ID id string[1,36] 通知的唯一ID
示例值:EV-2018022511223320873
通知創(chuàng)建時(shí)間 create_time string[1,32] 通知創(chuàng)建的時(shí)間,格式為yyyyMMddHHmmss(標(biāo)準(zhǔn)iso8601時(shí)間格式)
遵循rfc3339標(biāo)準(zhǔn)格式,格式為yyyy-MM-DDTHH:mm:ss+TIMEZONE,yyyy-MM-DD表示年月日,T出現(xiàn)在字符串中,表示time元素的開頭,HH:mm:ss.表示時(shí)分秒,TIMEZONE表示時(shí)區(qū)(+08:00表示東八區(qū)時(shí)間,領(lǐng)先UTC 8小時(shí),即北京時(shí)間)。例如:2015-05-20T13:29:35+08:00表示北京時(shí)間2015年05月20日13點(diǎn)29分35秒。
示例值:2015-05-20T13:29:35+08:00
通知類型 event_type string[1,32] 通知的類型,
車牌服務(wù)狀態(tài)通知的類型:VEHICLE.ENTRANCE_STATE_CHANGE
示例值:VEHICLE.ENTRANCE_STATE_CHANGE
通知數(shù)據(jù)類型 resource_type string[1,32] 通知的資源數(shù)據(jù)類型,授權(quán)/解除授權(quán)成功通知為encrypt-resource
示例值:encrypt-resource
+通知數(shù)據(jù) resource object 通知資源數(shù)據(jù)
json格式,見示例
參數(shù)名 變量 類型[長度限制] 必填 描述
加密算法類型 algorithm string[1,32] 對授權(quán)結(jié)果數(shù)據(jù)進(jìn)行加密的加密算法,目前只支持AEAD_AES_256_GCM
示例值:AEAD_AES_256_GCM
數(shù)據(jù)密文 ciphertext string[1,1048576] Base64編碼后的授權(quán)/解除授權(quán)結(jié)果數(shù)據(jù)密文
示例值:sadsadsadsad
附加數(shù)據(jù) associated_data string[1,16] 附加數(shù)據(jù)
示例值:vehicle
隨機(jī)串 nonce string[1,16] 加密使用的隨機(jī)串
示例值:fdasflkja484w
回調(diào)摘要 summary string[1,64] 回調(diào)摘要
示例值:停車入場狀態(tài)通知

通知簽名

加密不能保證通知請求來自微信。微信會對發(fā)送給商戶的通知進(jìn)行簽名,并將簽名值放在通知的HTTP頭Wechatpay-Signature。商戶應(yīng)當(dāng)驗(yàn)證簽名,以確認(rèn)請求來自微信,而不是其他的第三方。簽名驗(yàn)證的算法請參考 《微信支付API v3簽名驗(yàn)證》

回調(diào)示例

入場狀態(tài)變更通知參數(shù)


{
    "id": "cd44cfbb-a6e8-5a12-97f0-3b8a4659cf1e",
	"create_time": "2019-08-14T21:00:00+08:00",
	"resource_type": "encrypt-resource",
	"event_type": "VEHICLE.ENTRANCE_STATE_CHANGE",
	"summary": "停車入場狀態(tài)通知",
	"resource": {
		"original_type": "",
		"algorithm": "AEAD_AES_256_GCM",
		"ciphertext": "KrpYSeK8KZXq8KqT2DtjNsQE6q3aU0GhbdYjQGrobsJanHhi5J4yvn02egVD6F3fNmBIIMu3UfKqr3qWfVZAq/JGtnDsbYTwtn0Kad0cLzfbyqsmPEaNpFiNjfMWr37dY8NM6T/kX/WvCmzRjS2nq2LdDkYIzouaw0O3rPtFao9OIVTJ9hO6Hy4mA7vXpsxNsqF6/lHvFaUzGBBYhAACF0FjVbAxplLfnmNOItRbkSDfJcpEKgXDfZTQ+70iv0TKYWoHfg2rnutd04k=",
		"associated_data": "",
		"nonce": "ArlcYszzVlsD"
	}
}

商戶對resource對象進(jìn)行解密后,得到的資源對象示例


{
    "sp_mchid": "10000100",
    "parking_id": "5K8264ILTKCH16CQ250",
    "out_parking_no":"1212313",
    "plate_number":"粵B888888",
    "plate_color":"BLUE",
    "start_time":"2017-08-26T10:43:39+08:00",
    "parking_name":"歡樂海岸停車場",
    "free_duration":3600,
    "parking_state": "NORMAL",
    "state_update_time": "2015-05-20T13:29:35.120+08:00",
}

入場狀態(tài)變更通知參數(shù)

參數(shù)名 變量 類型[長度限制] 必填 描述
商戶號 sp_mchid string[1,32] 調(diào)用接口提交的商戶號
示例值:1230000109
停車入場id parking_id string [1,32] 車主服務(wù)為商戶分配的入場id
示例值:5K8264ILTKCH16CQ250
商戶入場id out_parking_no string[1,32] 商戶側(cè)入場標(biāo)識id,在同一個(gè)商戶號下唯一
示例值:1213134
車牌號 plate_number string[1,32] 車牌號,僅包括省份+車牌,不包括特殊字符。
示例值:粵B888888
車牌顏色 plate_color string[1,32] 車牌顏色,枚舉值:
BLUE:藍(lán)色
GREEN:綠色
YELLOW:黃色
BLACK:黑色
WHITE:白色
LIMEGREEN:黃綠色
示例值:BLUE
入場時(shí)間 start_time string[1,32] 入場時(shí)間,遵循rfc3339標(biāo)準(zhǔn)格式,格式為yyyy-MM-DDTHH:mm:ss+TIMEZONE,yyyy-MM-DD表示年月日,T出現(xiàn)在字符串中,表示time元素的開頭,HH:mm:ss表示時(shí)分秒,TIMEZONE表示時(shí)區(qū)(+08:00表示東八區(qū)時(shí)間,領(lǐng)先UTC 8小時(shí),即北京時(shí)間)。例如:2015-05-20T13:29:35+08:00表示,北京時(shí)間2015年5月20日 13點(diǎn)29分35秒。
示例值:2015-05-20T13:29:35.120+08:00
停車場名稱 parking_name string[1,32] 所在停車位車場的名稱
示例值:歡樂海岸停車場
免費(fèi)時(shí)長 free_duration int 停車場的免費(fèi)停車時(shí)長
示例值:3600
停車入場狀態(tài) parking_state string [1,32] 本次入場車牌的服務(wù)狀態(tài)
NORMAL:正常狀態(tài),可以使用車主服務(wù)
BLOCKED:不可用狀態(tài),暫時(shí)不可以使用車主服務(wù)
示例值:NORMAL
不可用狀態(tài)描述 blocked_state_description string [1,32] 不可用服務(wù)狀態(tài)描述,返回車牌狀態(tài)為BLOCKED,會返回該字段,描述具體BLOCKED的原因,
PAUSE:已暫停車主服務(wù);
OVERDUE:已授權(quán)簽約但欠費(fèi),不能提供服務(wù),商戶提示用戶進(jìn)行還款,
REMOVE:用戶移除車牌導(dǎo)致車牌不可用。請?zhí)D(zhuǎn)到授權(quán)/開通接口。
示例值:PAUSE
狀態(tài)變更時(shí)間 state_update_time string [1,32] 狀態(tài)變更的發(fā)生時(shí)間(毫秒級),遵循rfc3339標(biāo)準(zhǔn)格式,格式為yyyy-MM-DDTHH:mm:ss+TIMEZONE,yyyy-MM-DD表示年月日,T出現(xiàn)在字符串中,表示time元素的開頭,HH:mm:ss表示時(shí)分秒,TIMEZONE表示時(shí)區(qū)(+08:00表示東八區(qū)時(shí)間,領(lǐng)先UTC 8小時(shí),即北京時(shí)間)。例如:2015-05-20T13:29:35+08:00表示,北京時(shí)間2015年5月20日 13點(diǎn)29分35秒。。
示例值:2015-05-20T13:29:35.120+08:00

通知應(yīng)答

接收成功:HTTP應(yīng)答狀態(tài)碼需返回200或204,無需返回應(yīng)答報(bào)文。

接收失敗:HTTP應(yīng)答狀態(tài)碼需返回5XX或4XX,同時(shí)需返回應(yīng)答報(bào)文,格式如下:


參數(shù)名 變量 類型[長度限制] 必填 描述
返回狀態(tài)碼 code string[1,32] 錯誤碼,SUCCESS為接收成功,其他錯誤碼為失敗。
示例值:FAIL
返回信息 message string[1,64] 返回信息,如非空,為錯誤原因。
示例值:失敗


{  
    "code": "FAIL",
    "message": "失敗"
}



技術(shù)咨詢

文檔反饋