微信会员卡卡包开发

微信会员卡卡包开发_第1张图片

1:先获取ACCESS_TOKEN

https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

请求方式为GET请求

2:调用创卡接口

https://api.weixin.qq.com/card/create?access_token=ACCESS_TOKEN

请求方式POST,参数需要进行封装

这里的建卡接口返回“cardId”,将用于后续的领卡操作

POST请求数据示例

{
    "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": "使用时向服务员出示此券",
                "service_phone": "020-88888888",
                "description": "不可与其他优惠同享",
                "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": "此菜品迎合大众口味,老少皆宜,营养均衡"
                   }
               ],
               "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张图片

参数说明

参数名 必填 类型 描述
card_type string 会员卡类型。
background_ pic_ur l string(128) 商家自定义会员卡背景图,须 先调用 上传图片接口 将背景图上传至CDN,否则报错, 卡面设计请遵循 微信会员卡自定义背景设计规范 ,像素大小控制在 1000像素*600像素以下
base_info JSON 基本的卡券数据,见下表,所有卡券类型通用。
prerogative strin g(3072) 会员卡特权说明,限制1024汉字。
auto_activate bool 设置为true时用户领取会员卡后系统自动将其激活,无需调用激活接口,详情见 自动激活 。
wx_activate bool 设置为true时会员卡支持一键开卡,不允许同时传入activate_url字段,否则设置wx_activate失效。填入该字段后仍需调用接口设置开卡项方可生效,详情见 一键开卡 。
supply_bonus bool 显示积分,填写true或false,如填写true,积分相关字段均为必 填 若设置为true则后续不可以被关闭。
bonus_url string(128) 设置跳转外链查看积分详情。仅适用于积分无法通过激活接口同步的情况下使用该字段。
supply_balance bool 是否支持储值,填写true或false。如填写true,储值相关字段均为必 填 若设置为true则后续不可以被关闭。该字段须开通储值功能后方可使用, 详情见: 获取特殊权限
balance_url string(128) 设置跳转外链查看余额详情。仅适用于余额无法通过激活接口同步的情况下使用该字段。
custom_field1 JSON结构 自定义会员信息类目,会员卡激活后显示,包含name_type (name) 和url字段
custom_field2 JSON结构 自定义会员信息类目,会员卡激活后显示,包含name_type(name)和url字段
custom_field3 JSON结构 自定义会员信息类目,会员卡激活后显示,包含name_type (name) 和url字段
name_type string(24) 会员信息类目半自定义名称,当开发者变更这类类目信息的value值时 可以选择触发系统模板消息通知用户。 FIELD_NAME_TYPE_LEVEL 等级 FIELD_NAME_TYPE_COUPON 优惠券 FIELD_NAME_TYPE_STAMP 印花 FIELD_NAME_TYPE_DISCOUNT 折扣 FIELD_NAME_TYPE_ACHIEVEMEN 成就 FIELD_NAME_TYPE_MILEAGE 里程 FIELD_NAME_TYPE_SET_POINTS 集点 FIELD_NAME_TYPE_TIMS 次数
name string(24) 会员信息类目自定义名称,当开发者变更这类类目信息的value值时 不会触发系统模板消息通知用户
url string(128) 点击类目跳转外链url
bonus_cleared string(128) 积分清零规则。
bonus_rules string(128) 积分规则。
balance_rules string(128) 储值说明。
activate_url string(128) 激活会员卡的url。
activate_app_brand_user_name string(128) 激活会原卡url对应的小程序user_name,仅可跳转该公众号绑定的小程序
activate_app_brand_pass string(128) 激活会原卡url对应的小程序path
custom_cell1 JSON结构 自定义会员信息类目,会员卡激活后显示。
name string(15) 入口名称。
tips string(18) 入口右侧提示语,6个汉字内。
url string(128) 入口跳转链接。
bonus_rule JSON结构 积分规则 。
cost_money_unit int 消费金额。以分为单位。
increase_bonus int 对应增加的积分。
max_increase _bonus int 用户单次可获取的积分上限。
init_increase _bonus int 初始设置积分。
cost_bonus_unit int 每使用5积分。
reduce_money int 抵扣xx元,(这里以分为单位)
least_moneyto use_bonus int 抵扣条件,满xx元(这里以分为单位)可用。
max_reduce _bonus int 抵扣条件,单笔最多使用xx积分。
discount int 折扣,该会员卡享受的折扣优惠,填10就是九折。

base_info字段:

参数名 必填 类型 描述
logo_url string(128) 卡券的商户logo,建议像素为300*300。
code_type string(16) Code展示类型, "CODE_TYPE_TEXT" 文本 "CODE_TYPE_BARCODE" 一维码 "CODE_TYPE_QRCODE" 二维码 "CODE_TYPE_ONLY_QRCODE" 仅显示二维码 "CODE_TYPE_ONLY_BARCODE" 仅显示一维码 "CODE_TYPE_NONE" 不显示任何码型
pay_info JSON 支付功能结构体,swipe_card结构
swipe_card JSON 刷卡功能结构体,包含is_swipe_card字段
is_swipe_card bool 是否设置该会员卡支持拉出微信支付刷卡界面
is_pay_and_qrcode bool 是否设置该会员卡中部的按钮同时支持微信支付刷卡和会员卡二维码
brand_name string 商户名字,字数上限为12个汉字。
title string 卡券名,字数上限为9个汉字 (建议涵盖卡券属性、服务及金额)。
color string 券颜色。按色彩规范标注填写Color010-Color100
notice string 卡券使用提醒,字数上限为16个汉字。
description string 卡券使用说明,字数上限为1024个汉字。
sku JSON 商品信息。
quantity int 卡券库存的数量,不支持填写0,上限为100000000。
date_info JSON 使用日期,有效期的信息。
type string 使用时间的类型 支持固定时长有效类型 固定日期有效类型 永久有效类型( DATE_TYPE_PERMANENT)
begin _timestamp int type为DATE_TYPE_FIX_TIME_RANGE时专用, 表示起用时间。从1970年1月1日00:00:00至起用时间的秒数 ( 东八区时间,UTC+8,单位为秒 )
end _timestamp int type为DATE_TYPE_FIX_TERM_RANGE时专用,表示结束时间 ( 东八区时间,UTC+8,单位为秒 )
fixed_term int type为DATE_TYPE_FIX_TERM时专用,表示自领取后多少天内有效,领取后当天有效填写0(单位为天)
fixed_begin _term int type为DATE_TYPE_FIX_TERM时专用,表示自领取后多少天开始生效。(单位为天)
use_custom _code bool 是否自定义Code码。填写true或false,默认为false 通常自有优惠码系统的开发者选择自定义Code码,详情见 是否自定义code
bind_openid bool 是否指定用户领取,填写true或false。默认为false
service_phone string(24) 客服电话
location_id_list array 门店位置ID。调用 POI门店管理接口 获取门店位置ID。
use_all_locations bool 会员卡是否支持全部门店,填写后商户门店更新时会自动同步至卡券
center_title string(18) 卡券中部居中的按钮,仅在卡券激活后且可用状态 时显示
center_sub _title string(24) 显示在入口下方的提示语 , 仅在卡券激活后且可用状态时显示
center_url string(128) 顶部居中的url ,仅在卡券激活后且可用状态时显示
custom_url _name string(15) 自定义跳转外链的入口名字。
custom_url string(128) 自定义跳转的URL。
custom_url _sub_title string(18) 显示在入口右侧的提示语。
promotion _url_name string(15) 营销场景的自定义入口名称。
promotion _url string(128) 入口跳转外链的地址链接。
promotion_ url_sub_title string(18) 显示在营销入口右侧的提示语。
get_limit int 每人可领券的数量限制,建议会员卡每人限领一张
can_share bool 卡券领取页面是否可分享,默认为true
can_give _friend bool 卡券是否可转赠,默认为true
need_push_on _view bool 填写true为用户点击进入会员卡时推送事件,默认为false。详情见 进入会员卡事件推送

Advanced_info(卡券高级信息)字段

字段 是否必填 类型 说明
advanced_info JSON结构 创建优惠券特有的高级字段
use_condition JSON结构 使用门槛(条件)字段,若不填写使用条件则在券面拼写 :无最低消费限制,全场通用,不限品类;并在使用说明显示: 可与其他优惠共享
accept_category string(512) 指定可用的商品类目,仅用于代金券类型 ,填入后将在券面拼写适用于xxx
reject_category string(512) 指定不可用的商品类目,仅用于代金券类型 ,填入后将在券面拼写不适用于xxxx
least_cost int 满减门槛字段,可用于兑换券和代金券 ,填入后将在全面拼写消费满xx元可用。
object_use_for string(512) 购买xx可用类型门槛,仅用于兑换 ,填入后自动拼写购买xxx可用。
can_use_with_other_discount bool 不可以与其他类型共享门槛 ,填写false时系统将在使用须知里 拼写“不可与其他优惠共享”, 填写true时系统将在使用须知里 拼写“可与其他优惠共享”, 默认为true
abstract JSON结构 封面摘要结构体名称
abstract string(24 ) 封面摘要简介。
icon_url_list string(128 ) 封面图片列表,仅支持填入一 个封面图片链接, 上传图片接口 上传获取图片获得链接,填写 非CDN链接会报错,并在此填入。 建议图片尺寸像素850*350
text_image_list JSON结构 图文列表,显示在详情内页 ,优惠券券开发者须至少传入 一组图文列表
image_url string(128 ) 图片链接,必须调用 上传图片接口 上传图片获得链接,并在此填入, 否则报错
text string(512 ) 图文描述
business_service arry 商家服务类型: BIZ_SERVICE_DELIVER 外卖服务; BIZ_SERVICE_FREE_PARK 停车位; BIZ_SERVICE_WITH_PET 可带宠物; BIZ_SERVICE_FREE_WIFI 免费wifi, 可多选
time_limit JSON结构 使用时段限制,包含以下字段
type string(24) 限制类型枚举值:支持填入 MONDAY 周一 TUESDAY 周二 WEDNESDAY 周三 THURSDAY 周四 FRIDAY 周五 SATURDAY 周六 SUNDAY 周日 此处只控制显示, 不控制实际使用逻辑,不填默认不显示
begin_hour int 当前type类型下的起始时间(小时) ,如当前结构体内填写了MONDAY, 此处填写了10,则此处表示周一 10:00可用
begin_minute int 当前type类型下的起始时间(分钟) ,如当前结构体内填写了MONDAY, begin_hour填写10,此处填写了59, 则此处表示周一 10:59可用
end_hour int 当前type类型下的结束时间(小时) ,如当前结构体内填写了MONDAY, 此处填写了20, 则此处表示周一 10:00-20:00可用
end_minute int 当前type类型下的结束时间(分钟) ,如当前结构体内填写了MONDAY, begin_hour填写10,此处填写了59, 则此处表示周一 10:59-00:59可用

返回说明

{
   "errcode":0,
   "errmsg":"ok",
   "card_id":"p1Pj9jr90_SQRaVqYI239Ka1erkI"
}
参数名 描述
errcode 错误码,0为正常。
errmsg 错误信息。
card_id 卡券ID。
 

微信会员卡开放类目调整通知

微信会员卡卡包开发_第3张图片

错误返回码释义

返回码           说明           常见错误

-1           系统繁忙,此时请开发者稍候再试。           无权限或者频繁调用超过调用次数

0           请求成功           OK

40009           图片文件超长。

40013           不合法的Appid,请开发者检查           AppID的正确性,避免异常字符,注意大小写。

40053           不合法的actioninfo,请开发者确认参数正确。           1.       确认请求链接是否正确   2.       确认action name是否正确

40071           不合法的卡券类型。           1.       卡券类型与结构体名不一致    2.       卡券类型与特有字段不对应

40072           不合法的编码方式。

40078           不合法的卡券状态。           卡券处于转赠删除或者失效状态

40079           不合法的时间。           卡券未到有效期

40080           不合法的CardExt。           1.       card_ext缺乏关键必填参数   2.       card_ext格式错误

40099           卡券已被核销。

40100           不合法的时间区间。           时间戳错误

40116           不合法的Code码。

40122           不合法的库存数量。

40124           会员卡设置查过限制的custom_field字段。           设置超过2个以上的custom_field

40127           卡券被用户删除或转赠中。

41012           缺少cardid参数。

45030           该cardid无接口权限。

45031           库存为0。

45033           用户领取次数超过限制get_limit

41011           缺少必填字段。

45021            字段超过长度限制,请参考相应接口           的字段说明。

40056           不合法的Code码。

43010           无储值权限,请前往公众平台申请。           需要开通处置权限

3:使用wx.config方法请求页面

主要接口

获取token:https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

获取ticket:https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=ACCESS_TOKEN&type=jsapi

signature组装规则,noncestr(随机数),jsapi_ticket(接口获取),timestamp(时间戳),url(使用js的页面地址路径)进行SHA-1处理

详情网页跳转

4:使用wx.addCard方法请求领卡页面

主要接口

获取token:https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

获取card_ticket:https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=ACCESS_TOKEN&type=wx_card

signature组装规则:code(会员卡卡号,传值生成),ticket,timestamp,nonce_str,openid(用户openId),cardId数据排序后进行SHA-1处理

详情网页跳转

最后整体流程也可以参考微信平台,这里是本人开发完之后简单总结一下

微信平台卡包

可以留言交流

 

 

 

你可能感兴趣的:(微信资源)