微信卡券接口


1  須知

   閱讀卡券部分介面文檔,請務必閱讀微信公眾平台開發者通用說明文件《微信開發者規範》和《微信公眾號介面權限說明兩個章節,以獲知微信公眾平台介面的基本呼叫方法、開發者規格、呼叫過程中異常問題的處理。


#2 #申請沙箱測試帳號

如果你沒有可用的卡券測試帳號,可以透過微信介面測試號申請工具申請一個臨時測試號碼用於卡券測試。你可以登入介面測試號申請 透過微信掃一掃獲得一個全新的appid(已擁有卡券建立權限,包括朋友的券)和appsecret用於卡券介面調用。


注意:該appid創建的卡券不會被審核通過,僅限於小範圍測試,開發者不可用於其他用途。


3 卡券HelloWorld

##開發者可以透過debug工具,快速完成創建卡券、投放卡券和核銷卡券的流程, 若要深入了解卡券接口,則需要對對應的部分的文檔詳細閱讀。


#步驟一取得access_token


步驟一取得access_token

####### ########

頁面位址:http://mp.weixin.qq.com/debug/

介面類型:基礎支援

介面清單:取得access_token介面

注意事項:參數填入開發者的appid和secret

##點擊檢查問題,即可返回access_token,access_token的有效期是兩小時,兩小時之後須重新獲取


##步驟二上傳卡券logo


#

頁面位址:http://mp.weixin.qq.com/debug/

介面類型:基礎支援

介面清單:上傳圖片素材介面

access_token: 上一步驟取得的access_token

buffer:你選擇的圖片

點擊檢查問題,即可取得圖片url,在下一個建立卡劵的參數中需要


步驟三建立卡券


#

頁面位址:http://mp.weixin.qq.com/debug/

介面類型:卡劵介面

介面清單:建立卡劵介面

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": "使用时向服务员出示此券",
          "service_phone": "020-88888888",
          "description": "不可与其他优惠同享\n如需团购券发票,请在消费时向商户提出\n店内均可使用,仅限堂食",
          "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个汉字tips",
          "promotion_url_name": "更多优惠",
        "promotion_url": "http://www.qq.com"
      },
      "deal_detail": "以下锅底2选1(有菌王锅、麻辣锅、大骨锅、番茄锅、清补凉锅、酸 菜鱼锅可选):\n大锅1份 12元\n小锅2份 16元 "}
}
}

注意事項:date_info中用的是Unix時間戳,注意把begin_timestamp修改小於目前時間,end_timestamp修改成今天之後的時間,這樣在後面核銷卡劵測試才能成功

介面位址:建立卡券介面


步驟四建立二維碼投放


#頁面位址:#http ://mp.weixin.qq.com/debug/

介面類型:卡劵介面

介面清單:建立二維碼ticket介面

access_token:第一步取得的access_token

JSON範例:##

{
"action_name": "QR_CARD", 
"action_info": {
"card": {
"card_id": "po_2DjgJ2zrboM6SzK3qNuje5iWQ", 
   }
 }
}

#介面位址:建立二維碼介面


#

步驟五顯示二維碼


#在上一步的返回中點擊字段show_qrcode_url字段中的鏈接,即可顯示卡券領取二維碼。

範例:##https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket=gQEr8ToAAAAAAAAAASxodHRwOi8vd2V********NjRjVuAAIE3kqwVQMEgDPhAQ ==

打開微信掃一掃,然後領取卡劵,如果顯示卡劵未通過審核,那麼需要下一步設定測試白名單,如果可以領取就忽略第六步。

可掃描以下二維碼體驗微信卡券:

二维码

步驟六設定測試白名單


#頁面位址:#http: //mp.weixin.qq.com/debug/

介面類型:卡劵介面

介面清單:設定測試白名單接口

access_token:第一步獲得的access_token


#JSON範例:

{ "username":["usr1","usr2"] }

#注意事項:其中usr1,sur2是領取卡劵的微訊號

#介面位址:設定白名單介面


步驟七核心銷卡劵


頁面位址:http://mp.weixin.qq.com/debug/

介面類型:卡劵介面

介面清單:核銷卡劵介面

#access_token:第一步取得的access_token


##JSON範例:

{ "code":"759733467744" }

注意事項:僅支援審核通過且在有效期間內的卡劵介面位址:核銷介面


4 卡券介面概覽


微信卡券接口主要圍繞卡券的創建、領取、投放以及卡券核銷設置了一系列接口,開發者可以根據自己想實現的效果選擇合適的接口

#進行開發,以實現業界各有特色的卡券應用程式。


#5 卡券術語介紹


以下是卡券開發過程中需要了解的關鍵概念:

#


##參數名稱

描述

#card_id

卡券ID。一個卡券ID對應一類卡券,包含了對應庫存數量的Code碼。

##################code#######

卡券Code碼。一張卡券的唯一標識,核銷卡券時使用此串碼,支援商家自訂。

openid

#用戶在該公眾號下的唯一身分。

access_token

#呼叫介面的憑證,有效時間為7200s,每次請求刷新,

透過取得access_token介面取得,開發者需妥善保存並建立快取機制。

jsapi_ticket#呼叫微信內網頁呼叫微信原生功能的JS-SDK介面鬚使用的簽名票據,詳情請見:JS-SDK部分

#api_ticket##

呼叫微信卡券介面時簽署的臨時票據,有效時間為7200s,

7200s內重複請求保持不變,取得api_ticket介面取得。

card_ext

#可擴張卡券的附加訊息,用於投放卡券是附帶卡券基本資訊。

outer_id

#領券頻道的場景值。支援商家自訂場景值填入card_ext進行卡券投放,

當使用者領取時會將對應場景值透過事件通知商家。

事件推送

卡券透過審核、卡券被領取、卡券被刪除、卡券核銷時,

#

都會推播事件通知開發者,接收位址為公眾平台開發者中心填寫的伺服器URL。

自訂入口

#透過API建立卡券支援商家自訂卡券詳情頁跳轉外鏈的單元。


6 開發者註意事項


6.1 微信版本判斷

由於微信6.0.2版本後才支援卡券功能模組,低版本用戶呼叫JS-SDK無效。因此,微信團隊建議商家透過user agent來決定使用者目前的版本號碼後再呼叫新增至卡包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 卡券投放限制

在公眾號會話環境內僅支援調起該公眾號網域下的卡券。未經平台允許不支援在公眾號會話內推送其他商家的卡券,否則使用者在領券時會提示:「未經製券商家授權,不可投放」。公眾號會話外(如朋友圈、對話環境)無此限制。

注意事項

#公眾號的對話框中發生的行為以及從公眾號對話框跳轉的網頁連結均處於該公眾號的會話環境內。


#

6.3 編碼規則

#所有API介面POST的資料只支援UTF-8編碼,否則會回傳錯誤。


#6.4 跳轉外鏈帶參數說明

為了滿足商家基於卡券本身的擴充訴求,允許卡券內頁加入url跳轉外鏈。

在卡券跳轉出去的外鏈均可帶有卡券資訊的參數,用於開發者在頁面內確認使用者身分。

帶有的的欄位有encrypt_code、card_id、openid、outer_str(僅會員卡)。


注意事項: encrypt_code為加碼碼,需呼叫解碼介面取得真實Code碼。假如指定的url為http://www.qq.com,用戶點擊時,跳轉的url則為: http://www.qq.com?encrypt_code=ENCRYPT_CODE&card_id=CARDID&openid=xxxx&outer_str=xxx


6.5 聯絡我們

##遇到卡券開發問題,可以透過信箱weixin_card@foxmail.com 聯絡我們。也可以加入開發者QQ交流群205482166 512568283,驗證請務必說明商家名稱及業務。


#

7 卡券資料包下載

#開發者可下載卡券介面資料包


- 建立&簽署工具SDK;

- 卡券介面呼叫流程圖;

- 新增介面特性說明;

- SDK for Android;

##- SDK for iOS;

#