1 須知
閱讀卡券部分接口文檔,請務(wù)必閱讀微信公眾平臺開發(fā)者通用說明文檔《微信開發(fā)者規(guī)范》和《微信公眾號接口權(quán)限說明》兩個(gè)章節(jié),以獲知微信公眾平臺接口的基本調(diào)用方法、開發(fā)者規(guī)范以及調(diào)用過程中異常問題的處理。
2 申請沙箱測試賬號
如果你沒有可用的卡券測試賬號,可以通過微信接口測試號申請工具申請一個(gè)臨時(shí)測試號用于卡券測試。你可以登錄接口測試號申請 通過微信掃一掃獲得一個(gè)全新的appid(已擁有卡券創(chuàng)建權(quán)限,包括朋友的券)和appsecret用于卡券接口調(diào)用。
注意:該appid創(chuàng)建的卡券不會被審核通過,僅限于小范圍測試,開發(fā)者不可用于其他用途。
3 卡券HelloWorld
開發(fā)者可以通過debug工具,快速完成創(chuàng)建卡券、投放卡券和核銷卡券的流程, 若要深入了解卡券接口,則需要對對應(yīng)的部分的文檔詳細(xì)閱讀。
步驟一 獲取access_token
頁面地址:http://mp.weixin.qq.com/debug/
接口類型:基礎(chǔ)支持
接口列表:獲取access_token接口
注意事項(xiàng):參數(shù)填寫開發(fā)者的appid和secret
點(diǎn)擊檢查問題,即可返回access_token,access_token的有效期是兩小時(shí),兩小時(shí)之后須重新獲取
步驟二 上傳卡券logo
頁面地址:http://mp.weixin.qq.com/debug/
接口類型:基礎(chǔ)支持
接口列表:上傳圖片素材接口
access_token: 上一步獲得的access_token
buffer:你選擇的圖片
點(diǎn)擊檢查問題,即可獲取圖片url,在下一步創(chuàng)建卡劵的參數(shù)中需要
步驟三 創(chuàng)建卡券
頁面地址:http://mp.weixin.qq.com/debug/
接口類型:卡劵接口
接口列表:創(chuàng)建卡劵接口
access_token:第一步獲得的access_token
JSON示例:
{
"card": {
"card_type": "GROUPON",
"groupon": {
"base_info": {
"logo_url":
"http://mmbiz.qpic.cn/mmbiz/iaL1LJM1mF9aRKPZJkmG8xXhiaHqkKSVMMWeN3hLut7X7hicFNjakmx ibMLGWpXrEXB33367o7zHN0CwngnQY7zb7g/0",
"brand_name":"微信餐廳",
"code_type":"CODE_TYPE_TEXT",
"title": "132元雙人火鍋套餐",
"sub_title": "周末狂歡必備",
"color": "Color010",
"notice": "使用時(shí)向服務(wù)員出示此券",
"service_phone": "020-88888888",
"description": "不可與其他優(yōu)惠同享\n如需團(tuán)購券發(fā)票,請?jiān)谙M(fèi)時(shí)向商戶提出\n店內(nèi)均可使用,僅限堂食",
"date_info": {
"type": "DATE_TYPE_FIX_TERM",
"fixed_term": 15 ,
"fixed_begin_term": 0
},
"sku": {
"quantity": 500000
},
"get_limit": 3,
"use_custom_code": false,
"bind_openid": false,
"can_share": true,
"can_give_friend": true,
"location_id_list" : [123, 12321, 345345],
"custom_url_name": "立即使用",
"custom_url": "http://www.qq.com",
"custom_url_sub_title": "6個(gè)漢字tips",
"promotion_url_name": "更多優(yōu)惠",
"promotion_url": "http://www.qq.com"
},
"deal_detail": "以下鍋底2選1(有菌王鍋、麻辣鍋、大骨鍋、番茄鍋、清補(bǔ)涼鍋、酸 菜魚鍋可選):\n大鍋1份 12元\n小鍋2份 16元 "}
}
}
注意事項(xiàng):date_info中用的是Unix時(shí)間戳,注意把begin_timestamp修改小于當(dāng)前時(shí)間,end_timestamp修改成今天之后的時(shí)間,這樣在后面核銷卡劵測試才能成功
接口地址:創(chuàng)建卡券接口
步驟四 創(chuàng)建二維碼投放
頁面地址:http://mp.weixin.qq.com/debug/
接口類型:卡劵接口
接口列表:創(chuàng)建二維碼ticket接口
access_token:第一步獲得的access_token
JSON示例:
{
"action_name": "QR_CARD",
"action_info": {
"card": {
"card_id": "po_2DjgJ2zrboM6SzK3qNuje5iWQ",
}
}
}
接口地址:創(chuàng)建二維碼接口
步驟五 顯示二維碼
在上一步的返回中點(diǎn)擊字段show_qrcode_url字段中的鏈接,即可顯示卡券領(lǐng)取二維碼。
打開微信掃一掃,然后領(lǐng)取卡劵,如果顯示卡劵未通過審核,那么需要下一步設(shè)置測試白名單,如果可以領(lǐng)取就忽略第六步。
可掃描以下二維碼體驗(yàn)微信卡券:
步驟六 設(shè)置測試白名單
頁面地址:http://mp.weixin.qq.com/debug/
接口類型:卡劵接口
接口列表:設(shè)置測試白名單接口
access_token:第一步獲得的access_token
JSON示例:
{ "username":["usr1","usr2"] }
注意事項(xiàng):其中usr1,sur2是領(lǐng)取卡劵的微信號
接口地址:設(shè)置白名單接口
步驟七 核銷卡劵
頁面地址:http://mp.weixin.qq.com/debug/
接口類型:卡劵接口
接口列表:核銷卡劵接口
access_token:第一步獲得的access_token
JSON示例:
{ "code":"759733467744" }
注意事項(xiàng):僅支持審核通過且在有效期內(nèi)的卡劵 接口地址:核銷接口
4 卡券接口概覽
微信卡券接口主要圍繞卡券的創(chuàng)建、領(lǐng)取、投放以及卡券核銷設(shè)置了一系列接口,開發(fā)者可以根據(jù)自己想實(shí)現(xiàn)的效果選擇合適的接口
進(jìn)行開發(fā),以實(shí)現(xiàn)行業(yè)各有特色的卡券應(yīng)用。
5 卡券術(shù)語介紹
以下是卡券開發(fā)過程中需要了解的關(guān)鍵概念:
參數(shù)名 | 描述 |
card_id | 卡券ID。一個(gè)卡券ID對應(yīng)一類卡券,包含了相應(yīng)庫存數(shù)量的Code碼。 |
code | 卡券Code碼。一張卡券的唯一標(biāo)識,核銷卡券時(shí)使用此串碼,支持商戶自定義。 |
openid | 用戶在該公眾號下的唯一身份。 |
access_token | 調(diào)用接口的憑證,有效時(shí)間為7200s,每次請求刷新, 通過獲取access_token接口獲取,開發(fā)者需妥善保存并建立緩存機(jī)制。 |
jsapi_ticket | 調(diào)用微信內(nèi)網(wǎng)頁調(diào)用微信原生功能的JS-SDK接口須使用的簽名票據(jù),詳情見:JS-SDK部分 |
api_ticket | 調(diào)用微信卡券接口時(shí)簽名的臨時(shí)票據(jù),有效時(shí)間為7200s, 7200s內(nèi)重復(fù)請求保持不變,獲取api_ticket接口獲取。 |
card_ext | 可擴(kuò)張卡券的附加信息,用于投放卡券是附帶卡券基本信息。 |
outer_id | 領(lǐng)券渠道的場景值。支持商戶自定義場景值填入card_ext進(jìn)行卡券投放, 當(dāng)用戶領(lǐng)取時(shí)會將相應(yīng)場景值通過事件通知商戶。 |
事件推送 | 在卡券通過審核、卡券被領(lǐng)取、卡券被刪除、卡券被核銷時(shí), 均會推送事件通知開發(fā)者,接收地址為公眾平臺開發(fā)者中心填寫的服務(wù)器URL。 |
自定義入口 | 通過API創(chuàng)建卡券支持商戶自定義卡券詳情頁跳轉(zhuǎn)外鏈的單元。 |
6 開發(fā)者注意事項(xiàng)
6.1 微信版本判斷
由于微信6.0.2版本后才支持卡券功能模塊,低版本用戶調(diào)用JS-SDK無效。因此,微信團(tuán)隊(duì)建議商戶通過user agent來確定用戶當(dāng)前的版本號后再調(diào)用添加至卡包JS-SDK接口。以iPhone版本為例,可以通過user agent可獲取如下版本示例信息:
"Mozilla/5.0(iphone;CPU iphone OS 5_1_1 like Mac OS X)
AppleWebKit/534.46(KHTML,like Geocko)Mobile/9B206 MicroMessenger/6.0.2 "
其中6.0.2為用戶安裝的微信版本號。商戶可以判定版本號是否高于或者等于6.0.2。
6.2 卡券投放限制
公眾號會話環(huán)境內(nèi)僅支持調(diào)起該公眾號域名下的卡券。未經(jīng)平臺允許不支持在公眾號會話內(nèi)推送其他商戶的卡券,否則用戶在領(lǐng)券時(shí)會提示:“未經(jīng)制券商家授權(quán),不可投放”。公眾號會話外(如朋友圈、對話環(huán)境)無此限制。
注意事項(xiàng)
公眾號的對話框中發(fā)生的行為以及從公眾號對話框跳轉(zhuǎn)的網(wǎng)頁鏈接均處于該公眾號的會話環(huán)境內(nèi)。
6.3 編碼規(guī)則
所有API接口POST的數(shù)據(jù)只支持UTF-8編碼,否則會返回報(bào)錯(cuò)。
6.4 跳轉(zhuǎn)外鏈帶參數(shù)說明
為了滿足商戶基于卡券本身的擴(kuò)展訴求,允許卡券內(nèi)頁添加url跳轉(zhuǎn)外鏈。
在卡券跳轉(zhuǎn)出去的外鏈均可以帶有卡券信息的參數(shù),用于開發(fā)者在頁面內(nèi)確認(rèn)用戶身份。
帶有的的字段有encrypt_code、card_id、openid、outer_str(僅會員卡)。
注意事項(xiàng): encrypt_code為加密碼碼,需調(diào)用解碼接口獲取真實(shí)Code碼。 假如指定的url為http://www.qq.com,用戶點(diǎn)擊時(shí),跳轉(zhuǎn)的url則為: http://www.qq.com?encrypt_code=ENCRYPT_CODE&card_id=CARDID&openid=xxxx&outer_str=xxxxx
6.5 聯(lián)系我們
遇到卡券開發(fā)問題,可以通過郵箱weixin_card@foxmail.com 聯(lián)系我們。也可以加入開發(fā)者QQ交流群205482166 512568283,驗(yàn)證請務(wù)必說明商家名及業(yè)務(wù)。
7 卡券資料包下載
開發(fā)者可下載卡券接口資料包:
- 創(chuàng)建&簽名工具SDK;
- 卡券接口調(diào)用流程圖;
- 新增接口特性說明;
- SDK for Android;
- SDK for iOS;
更多建議: