微信公众平台卡券API接口开发指南

开通VIP,畅享免费电子书等14项超值服

首页

好书

留言交流

下载APP

联系客服

2021.06.23

以下是卡券开发过程中需要了解的关键概念:

申请一个公众平台账号

公众号开发信息配置

填写服务器配置并验证有效性

下面详细介绍这3个步骤。

账号申请完成后,我们进入公众平台官网的开发-基本配置页面,首先完成公众号开发信息配置,包括启用开发者密码(AppSecret)和配置IP白名单

然后,继续下面的服务器配置点击修改配置按钮,填写服务器地址(URL)、Token和EncodingAESKey,其中

Token可由开发者可以任意填写,用作生成签名

该Token会和接口URL中包含的Token进行比对,因此填写的url地址内需要实现返回业务逻辑,下面会有代码示例,从而验证安全性)。

EncodingAESKey由开发者手动填写或随机生成,将用作消息体加解密密钥。

同时,开发者可选择消息加解密方式:

将token、timestamp、nonce三个参数进行字典序排序

将三个参数字符串拼接成一个字符串进行sha1加密

检验signature的PHP示例代码:

注意

配置好商户开发信息后,商户开发者可依据接口文档实现业务逻辑。

普通卡券包含:代金券、团购券、优惠券、折扣券、兑换券

普通卡券特点

注:以下示例针对普通卡券操作

access_token是公众号的全局唯一接口调用凭据,公众号调用各接口时都需使用access_token。开发者需要进行妥善保存。access_token的存储至少要保留512个字符空间。access_token的有效期目前为2个小时,需定时刷新,重复获取将导致上次获取的access_token失效。

接口调用

请求参数

响应参数

{'access_token':'ACCESS_TOKEN','expires_in':7200}112.上传卡券Logo接口调用

HTTP请求方式:POST/FROM(表单形式提交Logo图片)

响应报文

适用场景

选择卡券背景适用色值

在创建卡券接口中将颜色名(如Color010)填入color字段。

经过上述步骤之后,我们可调用创建卡券接口来创建一类新的卡券,获取card_id。创建卡券成功并通过审核后,商家可以通过文档提供的其他接口将卡券下发给用户,每次成功领取,库存数量相应扣除。

HTTP请求方式:POST

请求参数说明

POST数据示例请参考扩展《卡券创建接口POST报文示例》

普通卡券字段示例会员卡字段示例POST数据格式如下

团购券

{'card':{'card_type':'GROUPON','groupon':{'base_info':{················},'advanced_info':{················},'deal_detail':'示例'}}}12345678910111213141234567891011121314参数名必填类型示例值描述card_type是string(24)GROUPON团购券类型。base_info是JSON结构见扩展《卡券创建接口POST报文示例》基本的卡券数据,见扩展《卡券基础信息base_info字段》,所有卡券类型通用。advanced_info否JSON结构见扩展《卡券创建接口POST报文示例》卡券高级信息字段,见扩展《卡券高级信息advanced_info》,所有卡券类型通用。deal_detail是string(3072)双人套餐\n-进口红酒一支。\n孜然牛肉一份。团购券专用,团购详情。代金券

折扣券

{'card':{'card_type':'DISCOUNT','discount':{'base_info':{················},'advanced_info':{················},'discount':30}}}12345678910111213141234567891011121314参数名必填类型示例值描述card_type是string(24)DISCOUNT折扣券类型。base_info是Json结构见扩展《卡券创建接口POST报文示例》基本的卡券数据,见扩展《卡券基础信息base_info字段》,所有卡券类型通用。advanced_info否JSON结构见扩展《卡券创建接口POST报文示例》卡券高级信息字段,见扩展《卡券高级信息advanced_info》,所有卡券类型通用。discount是int30折扣券专用,表示打折额度(百分比)。填30就是七折。兑换券

优惠券

{'card':{'card_type':'GENERAL_COUPON','general_coupon':{'base_info':{················},'advanced_info':{················},'default_detail':'优惠券专用,填写优惠详情'}}}12345678910111213141234567891011121314参数名必填类型示例值描述card_type是string(24)GENERAL_COUPON优惠券类型。base_info是Json结构见扩展《卡券创建接口POST报文示例》基本的卡券数据,见扩展《卡券基础信息base_info字段》,所有卡券类型通用。advanced_info否JSON结构见扩展《卡券创建接口POST报文示例》卡券高级信息字段,见扩展《卡券高级信息advanced_info》,所有卡券类型通用。default_detail是string(3072)音乐木盒。优惠券专用,填写优惠详情。卡券创建返回报文格式

高级字段为商户额外展示信息字段,非必填,但是填入某些结构体后,须填充完整方可显示:如填入text_image_list结构体时,须同时传入image_url和text,否则也会报错;

预存code模式的卡券须设置quantity为0,导入code后方可增加库存;

注意:最新版本卡券API接口已经不允许使用URL替代方案为小程序。

为了满足商户基于卡券本身的扩展诉求,允许卡券内页添加url跳转外链。带有的的字段有encrypt_code、card_id。

卡券投放类型有:二维码投放、JS-SDK投放、卡券货架投放、群发卡券

二维码方式投放,开发者可调用该接口生成一张卡券二维码供用户扫码后添加到卡券卡包。

POST数据示例

投放单张卡券(非自定义卡券code码无需指定code,非指定用户领取无需指定openid)

{'action_name':'QR_CARD','expire_seconds':1800,'action_info':{'card':{'card_id':'pFS7Fjg8kV1IdDz01r4SQwMkuCKc','code':'198374613512',//自定义Code码的卡券单张投放'openid':'oFS7Fjl0WsZ9AMZqrI80nbIq8xrA',//指定用户可领'is_unique_code':false,'outer_str':'12b'}}}1234567891011121312345678910111213投放多张卡券(一次最多填入5个card_id,否则报错)

POST参数说明

返回参数

注意事项

注意:

目前卡券货架仅支持非自定义code卡券,自定义code卡券需先调用导入code接口,将code导入才能正常使用;

由于卡券有审核要求,为方便公众号调试,可以设置一些测试账号,这些账号可领取未通过审核的卡券,体验整个流程。

调用接口

卡券API接口核销类型

线下核销:指用户到店后,出示二维码或者出示串码,由收银员完成核销动作,如扫码核销、机具核销等

1.查询Code接口

开发者在调用核销code接口之前调用查询code接口,并在核销之前对非法状态的code(如转赠中、已删除、已核销等)做出处理。

POST数据

返回数据(这里以check_consume=true为例)

正常状态

{'errcode':0,'errmsg':'ok','card':{'card_id':'pbLatjk4T4Hx-QFQGL4zGQy27_Qg','begin_time':1457452800,'end_time':1463155199},'openid':'obLatjm43RA5C6QfMO5szKYnT3dM','can_consume':true,'user_card_status':'NORMAL'}123456789101112123456789101112异常状态

2.核销Code接口

消耗code接口是核销卡券的唯一接口,开发者可以调用当前接口将用户的优惠券进行核销,该过程不可逆。

非自定义Code卡券POST数据为

{'code':'12312313'}123123自定义Code卡券的POST数据还需要code_id

返回数据

{'errcode':0,'errmsg':'ok','card':{'card_id':'pFS7Fjg8kV1IdDz01r4SQwMkuCKc'},'openid':'oFS7Fjl0WsZ9AMZqrI80nbIq8xrA'}1234567812345678参数名描述errcode错误码。errmsg错误信息。openid用户在该公众号内的唯一身份标识。card_id卡券ID。注意事项

仅支持核销有效状态的卡券,若卡券处于异常状态,均不可核销。(异常状态包括:卡券删除、未生效、过期、转赠中、转赠退回、失效);

自定义Code码(use_custom_code为true)的优惠券,在code被核销时,必须调用此接口。用于将用户客户端的code状态变更。自定义code的卡券调用接口时,post数据中需包含card_id,否则报invalidserialcode,非自定义code不需上报;

获取api-ticket

由于获取api_ticket的api调用次数非常有限,频繁刷新api_ticket会导致api调用受限,影响自身业务,开发者需在自己的服务存储与更新api_ticket。

数据示例

chooseCard拉取卡券

特别提醒

开发者特别注意:签名错误会导致拉取卡券列表异常为空,请仔细检查参与签名的参数有效性。

2.Code解码接口

Code解码接口支持两种场景:

商家获取choos_card_info后,将card_id和encrypt_code字段通过解码接口,获取真实code;

卡券内跳转外链的签名中会对code进行加密处理,通过调用解码接口获取真实code;

{'errcode':0,'errmsg':'ok','code':'751234212312'}1234512345参数名描述errcode错误码errmsg错误信息code解密后获取的真实Code码注意事项

只能解码本公众号卡券获取的加密code。

开发者若从url上获取到加密code,请注意先进行urldecode,否则报错。

encrypt_code是卡券的code码经过加密处理得到的加密code码,与code一一对应。

开发者只能解密本公众号的加密code,否则报错。

3.查询Code接口

参考上面线下核销—查询Code接口

4.核销Code接口

参考上面线下核销—核销Code接口

查询code接口,可以查询当前code是否可以被核销,并检查code状态。

当前可以被定位状态有:正常、已核销、转赠中、已删除、已失效、无效code

用于获取用户卡包里的,属于该appid下所有可用卡券,包括正常状态和异常状态。

注:

查询用户已领取的卡券需要用户在该商户公众平台的openId,不支持小程序的openId。

如何在小程序查看用户已领取的卡券?

用户在商户小程序内领取卡券,记录用户小程序的openId、领取卡券的card_id和code落地服务端;

通过card_id和code来关联对应用户的公众号的openId和小程序的openId;

删除卡券接口允许商户删除任意一类卡券。删除卡券后,该卡券对应已生成的领取用二维码、添加到卡包JSAPI均会失效。

卡券快速买单优点

可以通过手机公众号、电脑商户后台,轻松操作收款并查看核销记录,交易对账,并支持离线下载。

支持会员营销,二次营销,如会员卡交易送积分,抵扣积分,买单后赠券等。

该接口支持更新所有卡券类型的部分通用字段及特殊卡券(会员卡、飞机票、电影票、会议门票)中特定字段信息

调用该接口增减某张卡券的库存。

为了满足改票、退款等异常情况,可调用卡券失效接口将用户的卡券设置为失效状态。

开发者可调用该接口,查询某个card_id的创建信息,审核状态以及库存数量。

开发者可批量查询指定状态的卡券列表;

开发者准备一个具备卡券权限的公众号和认证后的小程序账号;

通过公众平台或者卡券API接口创建卡券,获取card_id

小程序内记录用户openid,用户领取的code以及card_id;

处理卡券领取事件,记录用户在公众号内的openId,以及用户领取的code及card_id;

步骤

注意:需要改用户所在商户公众平台的openId,不支持小程序openId,具体步骤可参考《如何在小程序内查看已领取卡券列表》

将返回的数据卡券列表,调用wx.openCard()打开某张/多张卡券查看和使用;

JS-SDK使用步骤

绑定域名

登陆公众平台,进入公众号设置—>功能设置填写JS接口安全域名(以便该域名内部有权限访问JSSDK接口)

引入JS文件在需要调用JS接口的页面,引入如下JS文件:

通过config接口注入权限验证配置

通过ready接口处理成功验证

通过error接口处理失败验证

将所有参数字符串拼接成一个字符串进行sha1加密,得到cardSign

cardExt本身是一个JSON字符串,是商户为该张卡券分配的唯一性信息,包含以下字段:

THE END
1.支付宝支付宝,全球领先的独立第三方支付平台,致力于为广大用户提供安全快速的电子支付/网上支付/安全支付/手机支付体验,及转账收款/水电煤缴费/信用卡还款/AA收款等生活服务应用。https://www.alipay.com/
2.去哪儿网去哪儿Qunar.com提供机票,飞机票,特价机票,打折机票的查询预订;99元春秋航空特惠折扣机票,百元南航、海航惊喜特价机票任您挑选,国航、深航1折特价机票和折扣机票一网打尽,更多打折机票尽在Qunar.com。实时提供上百家旅游预订网站机票报价和航空公司直销机票价格,为您找https://www.qunar.com/
3.骑驴游,霸王条款,不让退款骑驴游客服售后投诉维权中心您好,小妹已为您反馈啦,您先别着急,客服MM正在火速为您核实处理,记得保持手机畅通哦! 骑驴游 企业处理 2022-06-14 09:47:40 消费保在线投诉维权平台 审核通过 2022-06-14 09:47:37 罗先生/女士 发布成功 2022-06-14 09:47:35 一切形式的刷单返佣、充值提现都是诈骗。消费保平台处理投诉不收取任何费用、...https://m.xfb315.com/complaints/details/95425885.html
4.淘宝网淘宝网 - 亚洲较大的网上交易平台,提供各类服饰、美容、家居、数码、话费/点卡充值… 数亿优质商品,同时提供担保交易(先收货后付款)等安全交易保障服务,并由商家提供退货承诺、破损补寄等消费者保障服务,让你安心享受网上购物乐趣!...https://www.taobao.com/
1.city.shenchuang.com/city/20241127/1676831.shtml小程序核销流程: step1:购买团购券支付成功; step2:搜索打开“英歌魂”小程序; step3:选择“自取”,左下角“尊享商品券”,使用团购券; step4:加入购物车选择规格,可用优惠券-活动券-选择对应券; step5:提交订单获取取餐码,前往对应门店取餐。 温馨提示:微信搜索公众号【深圳之窗】,关注后回复【美团】获取美团特...https://city.shenchuang.com/city/20241127/1676831.shtml
2.门店通抖音团购功能使用教程在门店后台进入【营销--应用中心-抖音团购】点击“开启功能”按钮开启功能。 注:需获得使用资格的客户才可开启,如没有资格可联系我司领取功能使用资格(名额有限,先到先得)。 2. 门店授权并关联门店商品ID 2.1 门店授权抖音来客平台 开启后,在【抖音团购-门店授权】点击“授权”可进行门店授权。 https://m.pcwap.net/en/h-nd-2696.html
3.社区生鲜团购小程序团购小程序代码利用微信小程序可以实现社区生鲜团购,满足人们生活需求。该小程序主要由客户端和后台管理系统两部分组成,前端采用WXSS、WXML、JS等小程序技术,能够实现用户登录、商品选购、团长申请等功能。选用MySQL数据库,后台管理系统是通过JAVA技术,可以实现团长审核、团长创建活动等功能。该社区生鲜团购小程序通过实际开发程序,模拟流程...https://blog.csdn.net/lf21qp/article/details/130542457
4.茶店活动促销方案为了确保我们的努力取得实效,就需要我们事先制定方案,方案的内容多是上级对下级或涉及面比较大的工作,一般都用带“文件头”形式下发。那么制定方案需要注意哪些问题呢?以下是小编收集整理的茶店活动促销方案,供大家参考借鉴,希望可以帮助到有需要的朋友。 https://www.jy135.com/chunxiaofangan/2479025.html
5.上汽大众汽车有限公司欢迎访问上汽大众官网,上汽大众汽车有限公司是由上汽集团和大众汽车集团合资经营,是国内历史最悠久的汽车合资企业之一。上汽大众目前生产与销售大众和斯柯达两个品牌产品,致力于成为“值得信赖、最具价值、富有创新精神的汽车合资企业”。https://www.csvw.com/
6.门店管理系统抖音团购支持绑定商品ID核销和自助核销教程指引...2. 商家端核销已绑定商品ID的抖音券 当创建好抖音来客平台的商品,且关联绑定好门店商品ID后,客户购买抖音券(团购套餐券/代金券)时,商家可通过扫码核销/开单核销。 2.1扫码核销 商家可在开单界面点击【扫码核销】,选择【抖音验券】输入对应的抖音券码核销。 https://m.yw-jz.com/h-nd-2678.html
7.天天团购注册短信验证码天天团购短信验证插件短信插件是一种能够快速将天天团购接入特定系统的短信集成能力,由短信供应商针对相应系统预先做好开发,开发者便能够非常快速的将短信插件嵌入到系统内,从而接入短信服务,以天天团购为例,天天团购系统专注于为团购平台发展提供完整解决方案,系统采用PHP+mysql开发,内置多种支付接口,另外可通过Ucenter模块,与网站已有系统无缝...https://m.ihuyi.com/baike/1000644694156.html
8.智百威全系列产品已入驻抖音来客,助力商家精准获客!1)搜索门店并购买 消费者通过抖音APP搜索商家门店信息 购买完成后,到店消费时出示团购券二维码或券号完成核销 04 威支付绑定抖音门店 1)获取抖音门店ID 登录商家的抖音来客账号,点击店铺管理>门店管理,将对应门店的门店ID全部复制 2)进入客户门店菜单 https://www.bw8848.com/news_19/785.html
9.淘宝商业计划书(通用17篇)3.村名购物流程 接地购物流程更适合农村淘宝。随着淘宝深入农村,越来越“零基础网民”开始在网上买东西,适当引入简化的购物流程,可以迎合农村网购者。因为很多人连支付宝都没有,所以追求“高大上”反而会阻碍他们网购。村民买东西时,可以暂停付款,先试穿,然后直接向采购人员支付现金;村民在出售物品时,可以自由选择现金...https://www.ruiwen.com/shangyejihuashu/6946909.html
10.社区团购小程序,云开发数据库,51CTO博客1-5-2,搜索结果,支持模糊查询 如我这里只搜‘小’,那么商品中所有包含小 的都可以搜索到 1-6,新品推荐列表页 会把最新发布的商品显示出来 1-7,商品详情页 商品详情页有顶部图片轮播,商品信息,添加购物车,商品描述,用户评价,底部购物车。 同样商品页添加商品也有一个和购物车联动的功能。 https://blog.51cto.com/u_14368928/4929487
11.门店美团团购核销美团券码美团团购券核销在【美团团购】-【门店授权】位置,点击右侧“授权”按钮,可根据门店美团账号类型选择对应的团购业务进行授权。 确认后会跳转至美团授权页,输入美团账号信息并选择门店,即可授权。 门店授权列表显示“已授权”,代表授权成功。 3、关联门店商品ID 商家在授权门店后,可先通过复制门店后台的商品ID,将美团平台的商品与门店...https://m.www.zcdly.com/mtmdtghx.html
12.官方国际入口入口2 保暖层(中等厚度抓绒)衣裤 【本文由“鄂文东_17217818791085”推荐,来自《羽绒服真的是里面穿的越少越暖和吗?》评论区,标题为小编添加】 content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no" /> ...http://m.hjhfgn.top/worbicg.asp
13.一周消费观察罗永浩与抖音正式签约;全球安全套缺口1亿个淘宝微博客户端在下午 4 时左右发布微博表示:“1、一生娃家里就手忙脚乱的,看来平常还得多生多锻炼。淘宝特价版继续明天上线不变。2、大家连接 WiFi,更新手机淘宝到最新版就好了。”同时淘宝微博客户端也否认了网上流传的“系统级 Bug”的传闻,称其为”谣言”。(极客公园) ...https://maimai.cn/article/detail?fid=1438872376&efid=Ti4dFp0BQdkB27vjTRn18g
14.app地址网址入口登录游戏对战系统紧张刺激,需要玩家熟练操作,快速反应,才能取得胜利。这款游戏在当时非常受欢迎,是许多80后玩家的最爱。 三、《街头霸王》【免责声明】上游新闻客户端未标有“来源:上游新闻”或“上游新闻LOGO、水印的文字、图片、音频、视频”等稿件均为转载稿。如转载稿涉及版权等问题,请...http://m.hejunxian.club/431370.html
15....行情数据财经股票基金期货外汇黄金等多种信息服务证券之星——专为华人交易者提供服务的财经门户网站;作为资深交易者门户,证券之星是全球华人交易者获取全方位海量金融资讯信息、交流投资经验的平台。https://www.stockstar.com/