卡券事件推送
卡券事件推送
##
1.更新日誌
版本號 | #更新內容 | 更新時間 |
---|---|---|
V1.0 | #核銷事件新增核銷門店,如果為手機助理核銷則可以推送核銷員openid。 | 2015-8-31 |
V1.1 | ############################################################核銷事件新增買單相關字段,商家訂單號碼和微信支付交易訂單號碼。 | 2015-9-8 |
V1.2 | 新增庫存警報事件,當用戶領取到最好一張卡券的時候推送庫存警報事件 | #2015-9-8 |
V1.3 | 新增庫會員卡內容更新事件,透過事件告知開發者積分和餘額變動情況 | 2015-10-28 |
V1.4 | 新增轉贈會員卡介面 | ##2016-9-19 |
2.卡券事件推送
卡券透過審核、卡券被用戶領取、卡券被用戶刪除、卡券被商家核銷、從卡券進入公眾號等情況都會觸發事件推送,該事件將發送至開發者填寫的URL(登入公眾平台進入【開發者中心設定】)。開發者可透過事件推送完成資料統計、使用者識別等操作。
微信伺服器在五秒鐘內收不到回應會斷掉連接,並且重新發起請求,總共重試三次。關於重試的訊息排重,建議使用FromUserName CreateTime 排重。假如伺服器無法保證在五秒內處理並回复,可以直接回复空串,微信伺服器不會對此作任何處理,並且不會發起重試。
2.1 審核事件推送
#產生的卡券經過審核時,微信會把這個事件推送到開發者填寫的URL。
<xml> <ToUserName><![CDATA[toUser]]></ToUserName> <FromUserName><![CDATA[FromUser]]></FromUserName> <CreateTime>123456789</CreateTime> <MsgType><![CDATA[event]]></MsgType> <Event><![CDATA[card_pass_check]]></Event> //不通过为card_not_pass_check <CardId><![CDATA[cardid]]></CardId> <RefuseReason><![CDATA[非法代制]]></RefuseReason> </xml>
參數說明:
#參數 | 說明 |
---|---|
ToUserName | |
##ToUserName | 開發者微訊號 |
#FromUserName | 發送方帳號(一個OpenID) |
CreateTime | #訊息建立時間(整數) |
MsgType | 訊息類型,event############Event###### ######事件類型,card_pass_check(卡券通過審核)、card_not_pass_check(卡券未通過審核)### |
CardId | 卡券ID |
RefuseReason | 審核不通過原因 |
使用網頁偵錯工具來偵錯此介面
2.2 領取事件推送
使用者在領取卡券時,微信會把這個事件推送到開發者填寫的URL。推送XML封包範例:
<xml> <ToUserName> <![CDATA[gh_fc0a06a20993]]> </ToUserName> <FromUserName> <![CDATA[oZI8Fj040-be6rlDohc6gkoPOQTQ]]> </FromUserName> <CreateTime>1472551036</CreateTime> <MsgType> <![CDATA[event]]> </MsgType> <Event> <![CDATA[user_get_card]]> </Event> <CardId> <![CDATA[pZI8Fjwsy5fVPRBeD78J4RmqVvBc]]> </CardId> <IsGiveByFriend>0</IsGiveByFriend> <UserCardCode> <![CDATA[226009850808]]> </UserCardCode> <FriendUserName> <![CDATA[]]> </FriendUserName> <OuterId>0</OuterId> <OldUserCardCode> <![CDATA[]]> </OldUserCardCode> <OuterStr> <![CDATA[12b]]> </OuterStr> <IsRestoreMemberCard>0</IsRestoreMemberCard> <IsRecommendByFriend>0</IsRecommendByFriend> </xml>
參數說明:
#參數 | 說明 |
---|---|
ToUserName | |
##ToUserName | 開發者微訊號。 |
FromUserName | #領券方帳號(一個OpenID)。 |
CreateTime | #訊息建立時間 (整數)。 |
MsgType | #訊息類型,event############ ###Event############事件類型,user_get_card(使用者領取卡券)。 |
CardId | #卡券ID。 |
IsGiveByFriend | #是否為轉贈領取,1代表是,0代表否。 |
FriendUserName | #當IsGiveByFriend為1時填入的字段,表示發起轉贈用戶的openid |
UserCardCode | code序號。 |
OldUserCardCode | #為保證安全,微信會在轉贈發生後變更該卡券的code號,該字段表示轉贈前的code。 |
OuterStr | #領取場景值,用於領取頻道資料統計。可在產生二維碼介面及新增Addcard介面中自訂該欄位的字串值。 |
IsRestoreMemberCard | #使用者刪除會員卡後可重新找回,當使用者本次操作為找回時,該值為1,否則為0 |
使用網頁偵錯工具偵錯該介面
#2.3轉贈事件推送
用戶在轉贈卡券時,微信會把這個事件推送到開發者填寫的URL。推送XML封包範例:
<xml> <ToUserName><![CDATA[gh_3fcea188bf78]]></ToUserName> <FromUserName><![CDATA[obLatjjwDolFjRRd3doGIdwNqRXw]]></FromUserName> <CreateTime>1474181868</CreateTime> <MsgType><![CDATA[event]]></MsgType> <Event><![CDATA[user_gifting_card]]></Event> <CardId><![CDATA[pbLatjhU-3pik3d4PsbVzvBxZvJc]]></CardId> <UserCardCode><![CDATA[297466945104]]></UserCardCode> <IsReturnBack>0</IsReturnBack> <FriendUserName><![CDATA[obLatjlNerkb62HtSdQUx66C4NTU]]></FriendUserName> <IsChatRoom>0</IsChatRoom> </xml>
參數說明:
########<xml> <ToUserName><![CDATA[toUser]]></ToUserName> <FromUserName><![CDATA[FromUser]]></FromUserName> <CreateTime>123456789</CreateTime> <MsgType><![CDATA[event]]></MsgType> <Event><![CDATA[user_del_card]]></Event> <CardId><![CDATA[cardid]]></CardId> <UserCardCode><![CDATA[12312312]]></UserCardCode> </xml>######參數說明:######
參數 | 說明 |
---|---|
ToUserName | |
##ToUserName | 開發者微訊號。 |
FromUserName | #領券方帳號(一個OpenID)。 |
CreateTime | #訊息建立時間 (整數)。 |
MsgType | #訊息類型,event |
Event | 事件類型,user_gifting_card(使用者轉贈卡券)。 ###############CardId#############卡券ID。 |
FriendUserName | #接收卡券使用者的openid |
UserCardCode | code序號。 |
IsReturnBack | #是否要轉贈退回,0代表不是,1代表是。 |
IsChatRoom | #是否是群組轉贈 |
使用網頁偵錯工具來偵錯該介面
2.4 刪除事件推送
用戶在刪除卡券時,微信會把這個事件推送到開發者填寫的URL。推送XML封包範例:
<xml> <ToUserName> <![CDATA[gh_fc0a06a20993]]> </ToUserName> <FromUserName> <![CDATA[oZI8Fj040-be6rlDohc6gkoPOQTQ]]> </FromUserName> <CreateTime>1472549042</CreateTime> <MsgType> <![CDATA[event]]> </MsgType> <Event> <![CDATA[user_consume_card]]> </Event> <CardId> <![CDATA[pZI8Fj8y-E8hpvho2d1ZvpGwQBvA]]> </CardId> <UserCardCode> <![CDATA[452998530302]]> </UserCardCode> <ConsumeSource> <![CDATA[FROM_API]]> </ConsumeSource> <LocationName> <![CDATA[]]> </LocationName> <StaffOpenId> <![CDATA[oZ********nJ3bPJu_Rtjkw4c]]> </StaffOpenId> <VerifyCode> <![CDATA[]]> </VerifyCode> <RemarkAmount> <![CDATA[]]> </RemarkAmount> <OuterStr> <![CDATA[xxxxx]]> </OuterStr> </xml>
參數說明:
#參數 | 說明 |
---|---|
ToUserName | |
##ToUserName | 開發者微訊號。 |
FromUserName | #傳送方帳號(一個OpenID)########## ######CreateTime############訊息建立時間(整數)。 |
MsgType | #訊息類型,event |
Event | 事件類型,user_del_card(使用者刪除卡券) |
CardId | #卡券ID。 |
UserCardCode | #code序號。自訂code及非自訂code的卡券被領取後都支援事件推送。 |
使用網頁偵錯工具偵錯此介面
2.5 核銷事件推送
卡券被核銷時,微信會把這個事件推送到開發者填寫的URL。推送XML封包範例:
<xml> <ToUserName><![CDATA[gh_e2243xxxxxxx]]></ToUserName> <FromUserName><![CDATA[oo2VNuOUuZGMxxxxxxxx]]></FromUserName> <CreateTime>1442390947</CreateTime> <MsgType><![CDATA[event]]></MsgType> <Event><![CDATA[user_pay_from_pay_cell]]></Event> <CardId><![CDATA[po2VNuCuRo-8sxxxxxxxxxxx]]></CardId> <UserCardCode><![CDATA[38050000000]]></UserCardCode> <TransId><![CDATA[10022403432015000000000]]></TransId> <LocationId>291710000</LocationId> <Fee><![CDATA[10000]]></Fee> <OriginalFee><![CDATA[10000]]> </OriginalFee> </xml>
參數 | #說明 |
---|---|
##ToUserName | 開發者微訊號。 |
FromUserName | #傳送方帳號(一個OpenID)。 |
CreateTime | #訊息建立時間 (整數)。 |
MsgType | 訊息類型,event。 |
Event | #事件類型,user_consume_card(核銷事件) |
CardId | 卡券ID。 |
UserCardCode | #卡券Code碼。 |
ConsumeSource | #核銷來源。支援開發者統計API核銷(FROM_API)、公眾平台核銷(FROM_MP)、卡券商家助理核銷(FROM_MOBILE_HELPER)(核銷員微訊號) |
#LocationName | 門市名稱,目前卡券核銷的門市名稱(只有透過自助核銷和買單核銷時才會出現該欄位) |
StaffOpenId | 核銷該卡券核銷員的openid(只有透過卡券商家助理核銷時才會出現) |
VerifyCode # | 自助核銷時,使用者輸入的驗證碼 |
RemarkAmount | 自助核銷時,使用者輸入的備註金額 |
#OuterStr | 開發者發起核銷時傳入的自訂參數,用於進行核銷頻道統計 |
使用網頁偵錯工具來偵錯該介面
2.6 買單事件推送
微信買單完成時,微信會把這個事件推送到開發者填寫的URL。推送XML封包範例:
<xml> <ToUserName> <![CDATA[gh_fcxxxx6a20993]]> </ToUserName> <FromUserName> <![CDATA[oZI8Fj040-xxxxx6gkoPOQTQ]]> </FromUserName> <CreateTime>1467811138</CreateTime> <MsgType> <![CDATA[event]]> </MsgType> <Event> <![CDATA[user_view_card]]> </Event> <CardId> <![CDATA[pZI8Fj2ezBbxxxxxT2UbiiWLb7Bg]]> </CardId> <UserCardCode> <![CDATA[4xxxxxxxx8558]]> </UserCardCode> <OuterStr> <![CDATA[12b]]> </OuterStr> </xml>