小程序卡券相关问题
发布于 6 年前 作者 zcao 8324 次浏览 来自 问答
昨天公司让我研究小程序卡券,发现使用小程序卡券要求是要讲小程序和公众号绑定到开放平台(http://open.weixin.qq.com)

还需要升级公众号卡券成为小程序卡券。

准备工作做好后,将微信公众号卡券升级成小程序卡券。(很顺利升级了)

麻烦的问题是,小程序领取卡券,看了文档
1 打通主要支持特性
支持在小程序中领取/查看/使用公众号AppId创建的会员卡、票、券(含通用卡)。
注:创建卡券部分可见卡券接口文档。

2 商家需要做什么
2.1. 需在open平台绑定公众号AppId与小程序AppId,详情查看https://open.weixin.qq.com/cgi-bin/announce?action=getannouncement&key=1439297282&version=10&lang=zh_CN&token=;
2.2. 原卡券中配置的自定义外链基础上新增一组小程序页面配置字段,支持将卡券内链接升级为小程序;
2.3. 以小程序AppId调用添加/查看卡券JS-API,签名参数与公众号Addcard/Opencard JS-SDK一致;
2.4. 核销卡券、数据查看保持现网路径,商家无需调整。

3 商家接入落地的接口内容
3.1. 创建接口/更新卡券信息接口base_info中新增进入小程序页面字段,商家需将小程序字段配置进原自定义外链结构体中,小程序页面新增字段示例如下:

{ "card": {
    "card_type": "MEMBER_CARD",
    "member_card": {
        "base_info": {
            "custom_url_name": "立即使用",
            "custom_url": "http://www.qq.com",
            "custom_app_brand_user_name": "gh_86a091e50ad4[@app](/user/app)",
            "custom_app_brand_pass":"API/cardPage",
            "custom_url_sub_title": "6个汉字tips",
            "promotion_url_name": "更多优惠",
          "promotion_url": "http://www.qq.com",
            "promotion_app_brand_user_name": "gh_86a091e50ad4[@app](/user/app)",
            "promotion_app_brand_pass":"API/cardPage"        }
        }
}
字段名
字段描述
字段示例
custom_app_brand_user_name
自定义使用入口跳转小程序的user_name,格式为原始id+[@app](/user/app)
gh_86a091e50ad4[@app](/user/app)
custom_app_brand_pass
自定义使用入口小程序页面地址
API/cardPage
center_app_brand_user_name
小程序的user_name
gh_86a091e50ad4[@app](/user/app)
center_app_brand_pass
自定义居中使用入口小程序页面地址
API/cardPage
promotion_app_brand_user_name
小程序的user_name
gh_86a091e50ad4[@app](/user/app)
promotion_app_brand_pass
自定义营销入口小程序页面地址
API/cardPage
activate_app_brand_user_name
小程序的user_name,
gh_86a091e50ad4[@app](/user/app)
activate_app_brand_pass
激活小程序页面地址
API/cardPage
--
--        --
*需调用卡券更新接口将相应小程序页面更新至对应跳转外链结构体中,原跳转H5字段保留。

3.2. 领取/查看卡券的接口参数不变,以小程序的AppId调用JSSDK,填入公众号AppId下的参数。查看接口文档。
// 微信低版本下尚未支持小程序卡券 wx.addCard, wx.openCard,
// 这两个接口调用前请先判断,示例:
if ( typeof wx.addCard === 'function' ) {
            wx.addCard({
                cardList: [{
                        cardId: '',
                        cardExt: ''
                                           }], // 需要添加的卡券列表,cardExt内的签名使用公众号appid获取
                success: function (res) {
                               var cardList = res.cardList; // 添加的卡券列表信息
                                        }
                                   })};


没搞懂什么是以小程序的AppId调用JSSDK,填入公众号AppId下的参数。
至今卡在这一步,试了几种写法都行不通,不知有没有开发过小程序卡券的大佬指点!
4 回复

如何把微信公众号券升级成小程序

我咋能加你和你对话?

如何把微信公众号券升级成小程序

文档描述有问题,小程序卡券是不需要传递 appid 参数的,稍后更新下这个文档。

可参考这个示例调用

wx.addCard({
  cardList: [
    {
      cardId: '',
      cardExt: '{"code": "", "openid": "", "timestamp": "", "signature":""}'
    }, {
      cardId: '',
      cardExt: '{"code": "", "openid": "", "timestamp": "", "signature":""}'
    }
  ],
  success: function(res) {    console.log(res.cardList) // 卡券添加结果
  }
})
回到顶部