卡券事件推送


卡券事件推送

39f4e18a-0faa-389f-9755-1c5b108402ea.png##

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
UserCardCodecode序號。
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
UserCardCodecode序號。

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>
##

使用網頁偵錯工具來偵錯該介面

2.7 進入會員卡事件推送

使用者在進入會員卡時,微信會把這個事件推送到開發者填寫的URL。

需要開發者在建立會員卡#時填入need_push_on_view 欄位並設定為true。開發者須綜合考慮領卡人數和伺服器壓力,決定是否接收此事件。

推送XML封包範例:

<xml> 
  <ToUserName><![CDATA[toUser]]></ToUserName>  
  <FromUserName><![CDATA[FromUser]]></FromUserName>  
  <CreateTime>123456789</CreateTime>  
  <MsgType><![CDATA[event]]></MsgType>  
  <Event><![CDATA[user_enter_session_from_card]]></Event>  
  <CardId><![CDATA[cardid]]></CardId>  
  <UserCardCode><![CDATA[12312312]]></UserCardCode> 
</xml>

參數說明:

參數#說明
##ToUserName開發者微訊號。
FromUserName#傳送方帳號(一個OpenID)。
CreateTime#訊息建立時間 (整數)。
MsgType訊息類型,event。
Event#事件類型,User_pay_from_pay_cell(微信買單事件)
#CardId卡券ID。
UserCardCode#卡券Code碼。
TransId#微信支付交易訂單號碼(只有使用買單功能核銷的卡券才會出現)
LocationId#門市ID,目前卡券核銷的門市ID(只有透過卡券商家助理和買單核銷時才會出現)
Fee實付金額,單位為分
OriginalFee#應付金額,單位為分
參數說明
ToUserName
##ToUserName開發者微訊號。
FromUserName#傳送方帳號(一個OpenID)。
CreateTime#訊息建立時間 (整數)。 ###############MsgType############訊息類型,event。
Event事件類型,user_view_card(使用者點擊會員卡)
CardId卡券ID。
UserCardCode#商家自訂code值。非自定code推送為空串。
OuterStr#商家自訂二維碼頻道參數,用於識別本次掃碼開啟會員卡來源來自於某個頻道值的二維碼

使用網頁偵錯工具來偵錯此介面



2.8 從卡券進入公眾號會話事件推送

#用戶在卡券裡點擊查看公眾號進入會話時(需要用戶已經關注公眾號),微信會把這個事件推送到開發者填寫的URL。開發者可辨識從卡券進入公眾號的使用者身分。推送XML封包範例:

<xml>
  <ToUserName><![CDATA[gh_9e1765b5568e]]></ToUserName>  
  <FromUserName><![CDATA[ojZ8YtyVyr30HheH3CM73y7h4jJE]]></FromUserName>  
  <CreateTime>1445507140</CreateTime>  
  <MsgType><![CDATA[event]]></MsgType>  
  <Event><![CDATA[update_member_card]]></Event>  
  <CardId><![CDATA[pjZ8Ytx-nwvpCRyQneH3Ncmh6N94]]></CardId>  
  <UserCardCode><![CDATA[485027611252]]></UserCardCode>  
  <ModifyBonus>3</ModifyBonus>  
  <ModifyBalance>0</ModifyBalance> 
</xml>

###參數說明:#######
參數說明
ToUserName
##ToUserName開發者微訊號。
FromUserName#傳送方帳號(一個OpenID)########## ######CreateTime############訊息建立時間(整數)。
MsgType#訊息類型,event
Event事件類型,user_enter_session_from_card(使用者從卡片進入公眾號碼會話)
#CardId卡券ID。
UserCardCode#Code碼。
#

使用網頁偵錯工具來偵錯此介面



2.9 會員卡內容更新事件

#當使用者的會員卡積分餘額變動時,微信會推播事件告知開發者。推送XML封包範例:

<xml> 
  <ToUserName><![CDATA[gh_2d62d*****0]]></ToUserName>  
  <FromUserName><![CDATA[oa3LFuBvWb7*********]]></FromUserName>  
  <CreateTime>1443838506</CreateTime>  
  <MsgType><![CDATA[event]]></MsgType>  
  <Event><![CDATA[card_sku_remind]]></Event>  
  <CardId><![CDATA[pa3LFuAh2P65**********]]></CardId>  
  <Detail><![CDATA[the card's quantity is equal to 0]]></Detail> 
</xml>

###參數說明:######卡券ID。 #Code碼。
參數說明
ToUserName
##ToUserName開發者微訊號。
FromUserName#傳送方帳號(一個OpenID)########## ######CreateTime############訊息建立時間(整數)。
MsgType#訊息類型,event
Event事件類型,update_member_card(會員卡內容更新)
CardId
UserCardCode
############ModifyBonus#############變動的積分值。 ##################ModifyBalance#############變動的餘額值。 ################

使用網頁偵錯工具來偵錯此介面


2.10 庫存警報事件

當某個card_id的初始庫存數大於200且目前庫存小於等於100時,使用者嘗試領券會觸發發送事件給商戶,事件每隔12h發送一次。

<xml> 
  <ToUserName><![CDATA[gh_7223c83d4be5]]></ToUserName>  
  <FromUserName><![CDATA[ob5E7s-HoN9tslQY3-0I4qmgluHk]]></FromUserName>  
  <CreateTime>1453295737</CreateTime>  
  <MsgType><![CDATA[event]]></MsgType>  
  <Event><![CDATA[card_pay_order]]></Event>  
  <OrderId><![CDATA[404091456]]></OrderId>  
  <Status><![CDATA[ORDER_STATUS_FINANCE_SUCC]]></Status>  
  <CreateOrderTime>1453295737</CreateOrderTime>  
  <PayFinishTime>0</PayFinishTime>  
  <Desc><![CDATA[]]></Desc>  
  <FreeCoinCount><![CDATA[200]]></FreeCoinCount>  
  <PayCoinCount><![CDATA[0]]></PayCoinCount>  
  <RefundFreeCoinCount><![CDATA[0]]></RefundFreeCoinCount>  
  <RefundPayCoinCount><![CDATA[0]]></RefundPayCoinCount>  
  <OrderType><![CDATA[ORDER_TYPE_SYS_ADD]]></OrderType>  
  <Memo><![CDATA[开通账户奖励]]></Memo>  
  <ReceiptInfo><![CDATA[]]></ReceiptInfo> 
</xml>

###參數說明:#######
參數說明
ToUserName
##ToUserName開發者微訊號
#FromUserName發送方,微信
CreateTime#訊息建立時間(整型)
MsgType訊息類型,event
Event### ###事件類型,card_sku_remind庫存警報###################CardId####卡券ID
Detail警報詳細資料

使用網頁偵錯工具來偵錯此介面


2.11 券點流水詳情事件

#當商家朋友的券券點發生變動時,微信伺服器會推播訊息給商家伺服器。

<xml> 
  <ToUserName> <![CDATA[gh_3fcea188bf78]]></ToUserName>  
  <FromUserName><![CDATA[obLatjlaNQKb8FqOvt1M1x1lIBFE]]></FromUserName>  
  <CreateTime>1432668700</CreateTime>  
  <MsgType><![CDATA[event]]></MsgType>  
  <Event><![CDATA[submit_membercard_user_info]]></Event>  
  <CardId><![CDATA[pbLatjtZ7v1BG_ZnTjbW85GYc_E8]]></CardId>  
  <UserCardCode><![CDATA[018255396048]]></UserCardCode> 
</xml>

###參數說明:#######Memo 系統備註,說明此次變動的緣由,如開通帳戶獎勵、門市獎勵、核銷獎勵以及充值、扣減。 ReceiptInfo#所開發票的詳情
參數說明
ToUserName
##ToUserName開發者微訊號
#FromUserName發送方,微信
CreateTime#訊息建立時間(整型)
MsgType訊息類型,event
Event### ###事件類型,card_pay_order券點流水詳情事件###################OrderId#######################OrderId####本次推送對應的訂單號碼
#Status本訂單等待付款的狀態,ORDER_STATUS_WAITING 等待支付ORDER_STATUS_SUCC 支付成功ORDER_STATUS_FINANCE_SUCC 加代幣成功ORDER_STATUS_QUANTITY_SUCC 加庫存成功ORDER_STATUS_HAS_REFUNDROHA已
##CreateOrderTime#購買券點時,支付二維碼的生成時間
PayFinishTime 購買券點時,當實際支付成功的時間
#Desc 付款方式,一般為微信支付充值
FreeCoinCount剩餘免費券點數量
PayCoinCount剩餘付費券點數
############################################################################################# #RefundFreeCoinCount###本次變更的免費券點數
#RefundPayCoinCount本次變動的付費券點數量
OrderType

#ORDER_TYPE_SYS_ADD 平台贈送券點ORDER_TYPE_WXPAY 充值券點ORDER_TYPE_REFUND 庫存未使用回退券點ORDER_TYPE_REDUCE 券點兌換庫存ORDER_TYPE_SYS_REDUCE 平台扣減
##### #

使用網頁偵錯工具來偵錯此介面

# 2.12 會員卡啟動事件推送

#當使用者透過一鍵啟動的方式提交資訊並點選啟動時,商家會收到使用者啟動的事件推送

rrreee


參數說明

##  建立時間時(#10 # 問題) ##MsgType            訊息類型,event            #’吧#>>>> 卡券Code碼           
參數#開發者微信號           
FromUserName            發送方帳號(一個OpenID)            
CreateTime            #CreateTime c#         
#
CardId            卡券ID            

使用網頁偵錯工具偵錯此介面



########