商家在门店的日常经营中,期望通过线下 ERP/POS 管理系统统一管理会员,识别 用户并将交易进行电子化,为后续的二次营销触达提供数据基础。为此,阿里全渠道推出手淘 Passport 支付方案,并开放接口与线下 ERP/POS 管理系统进行对接。
子场景 | 模块 | 执行方 | 说明 |
准备工作 | 会员通入驻:旗舰店账号申请商家品牌会员”应用 |
品牌方 | 旗舰店账号申请“商家品牌会员”应用完成会员通入驻; 商家自研:全打通用旗舰店账号,线下通用br账号请“新零售”应用做开发,如果是服务商开发,服务商申请“新零售”应用 |
确定会员扩展字段,告知阿里小二进行配置 | 品牌方 | 字段:姓名,性别,出生年月日,省份,城市,宝宝生日,邮箱; 选择4个,顾客入会时填写,选择越多入会率越低 | |
客户运营平台-忠诚度管理设置开发者账号 | 品牌方 | 商家授权服务商后,服务商可以打开会员测试平台做测试验收 | |
会员打通 | 绑定查询:tmall.mei.crm.member.bind.query | 服务商 | 当用户在手淘页面发起绑定操作时,会触发该请求。详见文档 |
绑定:tmall.mei.crm.bind | 服务商 | 1.当绑定查询返回可绑定时,触发该请求。详见文档 2.当用户解绑时,触发该请求。 |
|
注册:tmall.mei.crm.member.register | 服务商 | 当绑定查询返回可注册时,会触发该请求。详见文档 | |
查询会员信息:tmall.mei.crm.query | 服务商 | 校验会员中心和品牌方会员信息的一致性。详见文档 | |
积分(可选) | 订阅TMC消息 tmall_mei_pointChangeTOP接口 tmall.mei.crm.callback.point.change | 服务商 | 会员中心发起的积分变更,如积分兑换礼品、优惠券等。阿里通过消息通知ISV,ISV处理消息后调用TOP接口告知阿里处理成功,阿里再做积分的增加或扣减。详见文档 |
品牌商通知阿里(TOP接口) tmall.mei.crm.member.sync |
服务商 | 服务商在变更会员积分时,通知手淘进行积分更新详见文档 | |
系统联调 | 会员通联调 | 服务商 | 提供测试平台验证会员链路是否可以跑通,详见文档 |
系统发布上线 | 测试平台点击发布上线 | 服务商 | 测试平台点击发布上线,技术上发布,消费者无入口详见文档 |
CEM会员:阿里提供的线上会员系统,之前没使用过CEM平台(客户运营平台)的可以忽略CEM数据处理的工作。
CEM数据处理:推荐使用接口(① taobao.opencrm.member.hismemberdata.get)批量导出会员数据导商家自己的库中;由阿里技术导出excel为备选方案!
CEM数据查询API:① taobao.opencrm.member.hismemberdata.get 文档地址:点击此处
申请应用开发:创建 新零售 应用,点击创建应用,用于开发接口。在新开页面提交开发者信息。
品牌商入驻签约:品牌会员入驻中心,点击创建应用,在新开页面提交开发者信息。(注意:商家需要用旗舰店账号进行入驻操作!)
【企业资质】请上传企业执照副本图片;
【请填写选用的APPKEY 】如果接入方式为自己研发,请填写无,审核同意后需进行创建应用,应用创建成功后自动赋予【品牌会员基础包】(SPI场景组)和【品牌会员积分包】(API权限包)的权限;如果为第三方ISV代开发,联系isv获取应用的AppKey。无需创建应用,只为商家入驻用!
开发接口文档详见: 会员中心系统接口文档
php版代码demo,下载
注:目前可以给到的会员信息为手机号(必选)、姓名、性别、出生年月日、邮箱,宝宝生日,省份,城市;商家最多在以上字段中选择5个告知小二进行配置;以上信息在注册和绑定接口中,通过extend字段传输给商家系统;
如果需要省份、城市字段,还需要使用接口进行数字转中文:taobao.areas.get
入会渠道: 会员码入会;品牌号入会;天猫旗舰店入会;扫门店码入会;扫导购码入会;支付成功页入会;以接口中extend字段的形式给到商家,具体字段的组合形式及对应的渠道请看接口文档。
②③④⑤为SPI接口,开发者根据接口实现返回json数据即可
②tmall.mei.crm.member.bind.query 绑定查询,阿里提供参数淘宝nick和手机号,服务商系统返回消费者会员等级和积分以及是否可绑定可注册的结果,详见接口文档
③tmall.mei.crm.bind 绑定,阿里提供参数淘宝nick和手机号,服务商系统返回消费者会员等级和积分以及绑定的结果,详见接口文档
④tmall.mei.crm.member.register注册,阿里提供参数淘宝nick和手机号,服务商系统返回消费者会员等级和积分以及注册的结果,详见接口文档
⑤tmall.mei.crm.query查询 阿里发起查询用户数据的接口,确保阿里和商家系统里的消费者信息一致,详见接口文档
⑥tmall.mei.crm.member.getbypaycode 支付码识别会员接口,通过支付码识别会员身份,详见接口文档
在开放平台控制台点击应用管理,选择的appkey进入API服务提供页面,在点击进入开发测试,可配置SPI地址,配置好后点击进入测试,提交测试, 点击完成测试可以配置SPI上线后的url地址如下图所示:
在测试平台测试时,勾选测试地址,调用的是上图填写第一个输入框的地址,不勾选调用第二个输入框中的地址
注意:
a、线上积分变动可以理解为从手淘发起的积分兑礼、积分兑券等活动;这个是选做功能
b、线下积分变动指线下门店、微商城、官网等地方发起的积分变更。这个是必做功能
如果是java开发,消息用长连接可获取,如果是php需要开发者主动获取
⑥接口名称:tmall.mei.crm.member.sync,线下积分变动通知到阿里,保证线上线下积分一致,详见接口文档
⑦接口名称:taobao.tmc.messages.consume 消费消息,消息消费后,指针自动后移,下次调用自动获取到未消费过的消息,但是消费确认后的消息无法再次获取。
⑧接口名称:tmall.mei.crm.callback.point.change,告知阿里服务商系统处理是否成功的结果,一定要确认回调,否则系统会一直补发消息。详见接口文档
⑨接口名称:taobao.tmc.messages.confirm 确认消息,获取消息后,如果不确认,消息服务会选择时机重发,重发次数由消息服务控制,如果消息3天内都没有被确认将会被删除。
如上图所示,在页面的右侧查找名为:tmall_mei_PointChange的消息,确认是否已订阅;如未订阅,点击【订阅】。
程序逻辑上的处理是在http入口处先做签名校验,保证每个SPI接口调用方只能是淘宝,保证接口的安全性。
引入SpiUtil.java包(淘宝开放平台sdk下载,com.taobao.api.internal.spi.SpiUtils),加密串为相关应用的AppSecret(非沙箱AppSecret),签名的测试可在SPI开发中测试。每个SPI接口都要加上如下逻辑
java示例代码:
//IOUtils可参考使用org.apache.commons.io.IOUtils里的 String body = IOUtils.toString(request.getInputStream(), "utf-8"); /**此方法的逻辑是: * ISV根据SPI调用的内容(body,post等参数)和秘钥(appsecrt)进行MD5计算, * 计算出的sign的值跟淘宝用同样的加密方式(SPI调用的内容(body,post等参数)和秘钥(appsecrt)进行MD5计算)计算出来的结果进行比较。 * 比较结果如果是True说明双方都有共同的秘钥(appsecrt),说明调用可信赖.appsecrt注意保密。 * 淘宝计算出的sign值在SPI调用的URL里有。类似http://gw.api.taobao.com/router/rest?sign=5CEC9D0FE251B1CA0DDAE4C37F2421F1×tamp=2017-10-23+12%3A06%3A35 * SpiUtils 在淘宝开放平台 SDK里下载 com.taobao.api.internal.spi.SpiUtils **/ if(!SpiUtils.checkSign4TextRequest(request, body, "此字符串要修改成AppSecret")) { //拒绝访问,非来自淘宝的请求,根据实际情况实现 throw new RuntimeException("非来自淘宝的请求"); }
会员通上线后,商家/ISV可以通过阿里提供的云图监控工具,实时监控会员通接口的失败率、报错内容等信息。
目前云图监控为邀约制
1、商家提供旗舰店账号nick和品牌号账号nick,告知对接群内的技术支持小二,由小二开通白名单
2、商家可以打开该链接,申请配置云图监控:点击打开