溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

C#如何實現(xiàn)微信公眾號會員卡管理?

發(fā)布時間:2020-06-23 11:36:04 來源:億速云 閱讀:459 作者:清晨 欄目:編程語言

這篇文章將為大家詳細講解有關(guān)C#如何實現(xiàn)微信公眾號會員卡管理?,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

1、會員卡創(chuàng)建 

1)、會員卡創(chuàng)建接口文檔  

   支持開發(fā)者調(diào)用該接口創(chuàng)建會員卡,并獲取card_id,用于投放。調(diào)用該接口前,請開發(fā)者詳讀創(chuàng)建卡券接口部分上傳圖片接口、首頁 部分,快速錄入會員卡卡面必要信息。

接口調(diào)用請求說明

HTTP請求方式: POSTURL:https://api.weixin.qq.com/card/create?access_token=ACCESS_TOKEN

參數(shù)說明

參數(shù)是否必須說明
access_token調(diào)用接口憑證
POST數(shù)據(jù)JSON結(jié)構(gòu)

POST數(shù)據(jù)示例:

{
 "card": {
  "card_type": "MEMBER_CARD",
  "member_card": {
   "background_pic_url": "https://mmbiz.qlogo.cn/mmbiz/",
   "base_info": {
    "logo_url": "http://mmbiz.qpic.cn/mmbiz/iaL1LJM1mF9aRKPZ/0",
    "brand_name": "海底撈",
    "code_type": "CODE_TYPE_TEXT",
    "title": "海底撈會員卡",
    "color": "Color010",
    "notice": "使用時向服務(wù)員出示此券",
    "service_phone": "020-88888888",
    "description": "不可與其他優(yōu)惠同享",
    "date_info": {
     "type": "DATE_TYPE_PERMANENT"
    },
    "sku": {
     "quantity": 50000000
    },
    "get_limit": 3,
    "use_custom_code": false,
    "can_give_friend": true,
    "location_id_list": [
     123,
     12321
    ],
    "custom_url_name": "立即使用",
    "custom_url": "http://weixin.qq.com",
    "custom_url_sub_title": "6個漢字tips",
    "promotion_url_name": "營銷入口1",
    "promotion_url": "http://www.qq.com",
    "need_push_on_view": true
   },
    "advanced_info": {
    "use_condition": {
     "accept_category": "鞋類",
     "reject_category": "阿迪達斯",
     "can_use_with_other_discount": true
    },
    "abstract": {
     "abstract": "微信餐廳推出多種新季菜品,期待您的光臨",
     "icon_url_list": [
      "http://mmbiz.qpic.cn/mmbiz/p98FjXy8LacgHxp3sJ3vn97bGLz0ib0Sfz1bjiaoOYA027iasqSG0sj
 piby4vce3AtaPu6cIhBHkt6IjlkY9YnDsfw/0"
     ]
    },
    "text_image_list": [
     {
      "image_url": "http://mmbiz.qpic.cn/mmbiz/p98FjXy8LacgHxp3sJ3vn97bGLz0ib0Sfz1bjiaoOYA027iasqSG0sjpiby4vce3AtaPu6cIhBHkt6IjlkY9YnDsfw/0",
      "text": "此菜品精選食材,以獨特的烹飪方法,最大程度地刺激食 客的味蕾"
     },
     {
      "image_url": "http://mmbiz.qpic.cn/mmbiz/p98FjXy8LacgHxp3sJ3vn97bGLz0ib0Sfz1bjiaoOYA027iasqSG0sj piby4vce3AtaPu6cIhBHkt6IjlkY9YnDsfw/0",
      "text": "此菜品迎合大眾口味,老少皆宜,營養(yǎng)均衡"
     }
    ],
    "time_limit": [
     {
      "type": "MONDAY",
      "begin_hour":0,
      "end_hour":10,
      "begin_minute":10,
      "end_minute":59
     },
     {
      "type": "HOLIDAY"
     }
    ],
    "business_service": [
     "BIZ_SERVICE_FREE_WIFI",
     "BIZ_SERVICE_WITH_PET",
     "BIZ_SERVICE_FREE_PARK",
     "BIZ_SERVICE_DELIVER"
    ]
   },
   "supply_bonus": true,
   "supply_balance": false,
   "prerogative": "test_prerogative",
   "auto_activate": true,
   "custom_field1": {
    "name_type": "FIELD_NAME_TYPE_LEVEL",
    "url": "http://www.qq.com"
   },
   "activate_url": "http://www.qq.com",
   "custom_cell1": {
    "name": "使用入口2",
    "tips": "激活后顯示",
    "url": "http://www.qq.com"
   },
   "bonus_rule": {
    "cost_money_unit": 100,
    "increase_bonus": 1,
    "max_increase_bonus": 200,
    "init_increase_bonus": 10,
    "cost_bonus_unit": 5,
    "reduce_money": 100,
    "least_money_to_use_bonus": 1000,
    "max_reduce_bonus": 50
   },
   "discount": 10
  }
 }
}

2)、創(chuàng)建會員卡DEMO

A、在創(chuàng)建會員卡之前,我們可以調(diào)用素材管理,上傳logo,backgroup圖片

如下為調(diào)用接口的DEMO

C#如何實現(xiàn)微信公眾號會員卡管理?

DEMO中關(guān)鍵代碼:

 if (string.IsNullOrEmpty(textBoxTmpMedia.Text))
   {
    MessageUtil.ShowTips("請選擇上傳的素材!");
    return;
   }
 
   ImageReJson imageReJson = AddMaterialInterface.Image(richTextBox1.Text, "image", textBoxTmpMedia.Text, "image/jpeg");
   if (string.IsNullOrEmpty(imageReJson.errmsg))
   {
    textBox7.Text = imageReJson.url;
    textBox26.Text = imageReJson.url;
   }
   
   richTextBox6.Text = "執(zhí)行結(jié)果:" + JsonConvert.SerializeObject(imageReJson);

B、在logo與 backgroup圖片上傳后,我們調(diào)用創(chuàng)建會員卡接口來創(chuàng)建會員卡,如下為DEMO

C#如何實現(xiàn)微信公眾號會員卡管理?

在創(chuàng)建成功后,在微信公眾平臺中有剛創(chuàng)建的會員卡套 

C#如何實現(xiàn)微信公眾號會員卡管理?

具體會員卡信息如下:

C#如何實現(xiàn)微信公眾號會員卡管理?

其中關(guān)鍵代碼:

 Base_Info base_info = new Base_Info();
   base_info.logo_url = textBox26.Text;
   base_info.code_type = "CODE_TYPE_BARCODE";
   base_info.brand_name = textBox27.Text;
   base_info.title = textBox28.Text;
 
   Date_Info date_info = new Date_Info();
   date_info.type = "DATE_TYPE_PERMANENT";
 
   base_info.date_info = date_info;
   base_info.color = "Color100";
   base_info.notice = "到店出示會員卡,由店員完成核銷";
   base_info.description = "每人限領(lǐng)取1張\r\n會員權(quán)益不可與其它優(yōu)惠同享\r\n僅限中國(本會員卡不包括港澳臺地區(qū))指定的愛瑪?shù)賹Yu店使用\r\n當年消費獲取的積分僅可當年年底(既12月31日24點)前使用,如未全部使用,則當年的積分會于當年年底清零,不累計到次年\r\n具體使用方式請咨詢專賣店工作人員。";
   base_info.get_limit = 1;
   base_info.can_share = false;
   base_info.can_give_friend = false;
 
   Sku sku = new Sku();
   sku.quantity = 1000000000;
   sku.total_quantity = 1000000000;
 
   base_info.sku = sku;
   base_info.use_all_locations = true;
 
   member_Card.base_info = base_info;
   member_Card.supply_bonus = true;
   member_Card.supply_balance = false;
   member_Card.prerogative = "所有專賣店消費1元即可獲得1積分\r\n可參與豐富的會員專享活動,詳情參看相關(guān)門店活動頁面";
   member_Card.auto_activate = false;
   member_Card.wx_activate = true;
 
   //積分規(guī)則
   Bonus_Rule bonus_rule = new Bonus_Rule();
   bonus_rule.cost_money_unit = 100;
   bonus_rule.increase_bonus = 1;
   bonus_rule.cost_bonus_unit = 2000;
   bonus_rule.reduce_money = 100;
 
   member_Card.bonus_rule = bonus_rule;
   member_Card.background_pic_url = "";
   
   card.member_card = member_Card;
   memberCardJson.card = card;
 
   //創(chuàng)建會員卡json顯示在界面上
   richTextBox2.Text = JsonConvert.SerializeObject(memberCardJson);
 
   //通過接口寫入
   CardReJson createrejson = MemberCardInterface.Create(richTextBox1.Text, memberCardJson);
   richTextBox3.Text = JsonConvert.SerializeObject(createrejson);

C、設(shè)置測試白名單接口

若會員卡暫時未審核通,開發(fā)者可以將測試人員的微信號設(shè)置成白名單,領(lǐng)取未審核通過的卡券。白名單狀態(tài)領(lǐng)取的卡信息不隨卡券實時更新,請開發(fā)者注意。

C#如何實現(xiàn)微信公眾號會員卡管理?

2、設(shè)置開卡字段

1)、設(shè)置開卡字段接口文檔  

   開發(fā)者在創(chuàng)建時填入"wx_activate": true字段后,需要調(diào)用該接口設(shè)置用戶激活時需要填寫的選項,否則一鍵開卡設(shè)置不生效。

C#如何實現(xiàn)微信公眾號會員卡管理?

接口調(diào)用請求說明

HTTP請求方式: POST URL:https://api.weixin.qq.com/card/membercard/activateuserform/set?access_token=TOKEN

參數(shù)說明

參數(shù)是否必須說明
access_token調(diào)用接口憑證
POST數(shù)據(jù)JSON結(jié)構(gòu)

2)、設(shè)置開卡字段DEMO

 在設(shè)置開卡字段之前,我們查看了微信公眾平臺中會員卡的激活信息,只有必填信息,手機號

C#如何實現(xiàn)微信公眾號會員卡管理?

如下為調(diào)用接口程序,設(shè)置開卡字段接口 設(shè)置姓名,手機號是必填,性別、生日、興趣選填

C#如何實現(xiàn)微信公眾號會員卡管理?

在調(diào)用 接口成功后,必填信息與激活信息調(diào)整見下

C#如何實現(xiàn)微信公眾號會員卡管理?

3、投放會員卡--創(chuàng)建二維碼  

1)、接口文檔  

     創(chuàng)建會員卡二維碼,打印后置于店內(nèi),顧客掃碼領(lǐng)取會員卡,掃描下方二維碼體驗領(lǐng)取,若已領(lǐng)取可掃碼快速打開會員卡。

    開發(fā)者可調(diào)用該接口生成一張卡券二維碼供用戶掃碼后添加卡券到卡包。

    自定義Code碼的卡券調(diào)用接口時,POST數(shù)據(jù)中需指定code,非自定義code不需指定,指定openid同理。指定后的二維碼只能被用戶掃描領(lǐng)取一次。

    獲取二維碼ticket后,開發(fā)者可用換取二維碼圖片詳情。

接口調(diào)用請求說明

HTTP請求方式: POSTURL:https://api.weixin.qq.com/card/qrcode/create?access_token=TOKEN

參數(shù)說明

參數(shù)是否必須說明
POST數(shù)據(jù)JSON數(shù)據(jù)
access_token調(diào)用接口憑證

POST數(shù)據(jù)

開發(fā)者可以設(shè)置掃描二維碼領(lǐng)取單張卡券,此時POST數(shù)據(jù)為:

{
 "action_name": "QR_CARD",
 "expire_seconds": 1800,
 "action_info": {
 "card": {
 "card_id": "pFS7Fjg8kV1IdDz01r4SQwMkuCKc",
  "code": "198374613512",
 "openid": "oFS7Fjl0WsZ9AMZqrI80nbIq8xrA",
 "is_unique_code": false ,
 "outer_str":"12b"
 }
 }
}

當開發(fā)者設(shè)置掃描二維碼領(lǐng)取多張卡券,此時POST數(shù)據(jù)為:

{
 "action_name": "QR_MULTIPLE_CARD",
 "action_info": {
 "multiple_card": {
 "card_list": [
 {
  "card_id": "p1Pj9jgj3BcomSgtuW8B1wl-wo88",
  "code":"2392583481",
  "outer_str":"12b"
},
 {
 "card_id": "p1Pj9jgj3BcomSgtuW8B1wl-wo98",
 "code":"2392583482",
 "outer_str":"12b"
}
]
}
}
}

2)、創(chuàng)建二維碼DEMO

C#如何實現(xiàn)微信公眾號會員卡管理?

用戶可以掃描這個二維碼,掃碼后,先領(lǐng)取會員卡,然后激活會員卡

C#如何實現(xiàn)微信公眾號會員卡管理?

C#如何實現(xiàn)微信公眾號會員卡管理?

 在領(lǐng)取與激活會員卡時,會向開發(fā)者接入推送事件,

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

開發(fā)者在收到這些xml后,可以解析處理,比如可以同步會員的初始積分,讀取會員的基礎(chǔ)信息同步到自己的業(yè)務(wù)系統(tǒng),包括CRM或ERP等。

如下是我們接收后,做的系統(tǒng)日志:

C#如何實現(xiàn)微信公眾號會員卡管理?

4、同步會員卡數(shù)據(jù)/激活會員卡

1)、開發(fā)文檔介紹

 開發(fā)者可以在接收到事件通知后調(diào)用激活接口,傳入會員卡號、初始積分等信息或者調(diào)用拉取會員信息接口獲取會員信息,詳情請見:激活會員卡接口

激活方式說明

接口激活通常需要開發(fā)者開發(fā)用戶填寫資料的網(wǎng)頁。通常有兩種激活流程:

用戶必須在填寫資料后才能領(lǐng)卡,領(lǐng)卡后開發(fā)者調(diào)用激活接口為用戶激活會員卡;

是用戶可以先領(lǐng)取會員卡,點擊激活會員卡跳轉(zhuǎn)至開發(fā)者設(shè)置的資料填寫頁面,填寫完成后開發(fā)者調(diào)用激活接口為用戶激活會員卡。

接口詳情

接口調(diào)用請求說明

HTTP請求方式: POSTURL:https://api.weixin.qq.com/card/membercard/activate&#63;access_token=TOKEN

參數(shù)說明

參數(shù)是否必須說明
access_token調(diào)用接口憑證
POST數(shù)據(jù)JSON結(jié)構(gòu)
{
 "init_bonus": 100,
 "init_bonus_record":"舊積分同步",
 "init_balance": 200,
 "membership_number": "AAA00000001",
 "code": "12312313",
 "card_id": "xxxx_card_id",
 "background_pic_url": "https://mmbiz.qlogo.cn/mmbiz/0&#63;wx_fmt=jpeg",
 "init_custom_field_value1": "xxxxx"
}

2)、同步/激活會員卡DEMO

C#如何實現(xiàn)微信公眾號會員卡管理?

  本DEMO中演示了修改membership_number及 初始積分,第一張圖片為原圖,第二張為同步后的圖

C#如何實現(xiàn)微信公眾號會員卡管理?

C#如何實現(xiàn)微信公眾號會員卡管理?

 5、拉取會員信息 

1)、開發(fā)文檔介紹

接口說明

支持開發(fā)者根據(jù)CardID和Code查詢會員信息。

接口調(diào)用請求說明

HTTP請求方式: POSTURL:https://api.weixin.qq.com/card/membercard/userinfo/get&#63;access_token=TOKEN

參數(shù)說明

參數(shù)是否必須說明
POST數(shù)據(jù)JSON結(jié)構(gòu)
access_token調(diào)用接口憑證

POST數(shù)據(jù)

{
 "card_id": "pbLatjtZ7v1BG_ZnTjbW85GYc_E8",
 "code": "916679873278"
}

返回數(shù)據(jù)

{
 "errcode": 0,
 "errmsg": "ok",
 "openid": "obLatjjwDolFj******wNqRXw",
 "nickname": "*******",
 "membership_number": "658*****445",
 "bonus": 995,
 "sex": "MALE",
 "user_info": {
  "common_field_list": [
   {
    "name": "USER_FORM_INFO_FLAG_MOBILE",
    "value": "15*****518"
   },
   {
    "name": "USER_FORM_INFO_FLAG_NAME",
    "value": "HK"
   },
   {
    "name": "USER_FORM_INFO_FLAG_EDUCATION_BACKGROUND",
    "value": "研究生"
   }
  ],
  "custom_field_list": [
  {
  "name": "興趣",
  "value": "鋼琴",
  "value_list": []
  },
  {
  "name": "喜好",
  "value": "郭敬明",
  "value_list": []
  },
  {
  "name": "職業(yè)",
  "value": "",
  "value_list": [
   "賽車手",
   "旅行家"
  ]
  }
 ]
 },
 "user_card_status": "NORMAL",
 "has_active": false
}

2)、拉取會員信息DEMO

C#如何實現(xiàn)微信公眾號會員卡管理?

可以讀取到會員的姓名與手機號等信息,其中可以用手機號作為關(guān)鍵值與公司的CRM、ERP等對接。

 6、更新會員信息

當前會員的積分或儲值在公司的CRM、ERP等系統(tǒng)中變化,這時可以通過這個接口來實現(xiàn)同步。

如下DEMO為同步會員積分:

C#如何實現(xiàn)微信公眾號會員卡管理?

7、設(shè)置會員失效

如下為開發(fā)文檔中的注意事項:

1.設(shè)置卡券失效的操作不可逆,即無法將設(shè)置為失效的卡券調(diào)回有效狀態(tài),商家須慎重調(diào)用該接口。

*2.商戶調(diào)用失效接口前須與顧客事先告知并取得同意,否則因此帶來的顧客投訴,微信將會按照《微信運營處罰規(guī)則》

如下是通過接口實現(xiàn)將會員失效的DEMO

C#如何實現(xiàn)微信公眾號會員卡管理?

8、刪除會員卡

開發(fā)文檔中說明是同刪除卡券接口,刪除卡券接口允許商戶刪除任意一類卡券。刪除卡券后,該卡券對應(yīng)已生成的領(lǐng)取用二維碼、添加到卡包JS API均會失效。 注意:如用戶在商家刪除卡券前已領(lǐng)取一張或多張該卡券依舊有效。即刪除卡券不能刪除已被用戶領(lǐng)取,保存在微信客戶端中的卡券。

如下是通過接口實現(xiàn)刪除會員卡功能的DEMO

C#如何實現(xiàn)微信公眾號會員卡管理?

關(guān)于C#如何實現(xiàn)微信公眾號會員卡管理?就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI