商户会员卡模板创建一直持续了大半个月的时间,天天与支付宝的技术进行沟通,终于创建成功了,这里Mark一下。
1. 构建模板参数
下面的模板参数中,有许多前面加了注释符号,基本都是可选参数,而且容易导致报 “入参错误” 的参数,如果您有需要,请自行尝试或联系支付宝技术客服。
/**
* @todo: 组建 会员卡模板 相关参数数组
* @return array
*/
public function addMarketCardJson(){
$json_data = array();
$json_data['request_id'] = date('YmdHis').mt_rand(10000,99999);
$json_data['card_type'] = 'OUT_MEMBER_CARD';
$json_data['biz_no_prefix'] = 'prex';
$json_data['biz_no_suffix_len'] = '10';
$json_data['write_off_type'] = 'qrcode'; #qrcode: 二维码 dqrcode: 动态二维码 barcode: 条码 dbarcode: 动态条码 text: 文本
$json_data['template_style_info']['card_show_name'] = '高端会员卡';
$json_data['template_style_info']['logo_id'] = 'YS6zsqoES5iHcD4uGwrP6QAAACMAAQED'; # logo 上传后的ID 1M以内,格式bmp、png、jpeg、jpg、gif; 尺寸不小于500*500px的正方形; 请优先使用商家LOGO;
$json_data['template_style_info']['color'] = 'rgb(55,112,179)'; #卡片背景色
$json_data['template_style_info']['background_id'] = '1BPt1AVNQnGAkntb2PFw3QAAACMAAQED'; # 上传背景图片返回的ID
$json_data['template_style_info']['bg_color'] = 'rgb(153,204,153)'; # 背景色
#$json_data['template_style_info']['feature_descriptions'] = array('使用高端会员卡,0门卡享受9折优惠') ; # √ 描述
#$json_data['template_style_info']['slogan'] = '会员权益享不停'; # √ 标语
#$json_data['template_style_info']['slogan_img_id'] = '1BPt1AVNQnGAkntb2PFw3QAAACMAAQED'; # √ 标语图片ID
#$json_data['template_style_info']['brand_name'] = '高端会员'; # √ 品牌名称
$json_data['template_benefit_info'] = array( # √ 权益信息, 1、在卡包的卡详情页面会自动添加权益栏位,展现会员卡特权, 2、如果添加门店渠道,则可在门店页展现会员卡的权益
array(
'title' => '消费即折扣1', # 权益标题
'benefit_desc' => ['消费即折扣2'], # 权益描述
'start_date' => '2016-07-18 15:17:23', # 权益开始时间
'end_date' => '2017-07-18 15:17:23', # 权益结束时间
)
);
$json_data['column_info_list'] = array(
array(
'code' => 'BENEFIT_INFO', # code 唯一码 写死
'more_info' => array(
'title' => '会员专享权益', # 二级页面标题√
'url' => BASE_DOMAIN, # 超链接(选择openweb的时候必须填写url参数内容)√
'params' => '{}', # 需要URL地址回带的值,JSON格式(openweb时填)√
# 'descs' => ['会员生日打六折'] # 选择opennative的时候必须填写descs的内容√
),
'title' => '进入店铺', # 栏目标题
'operate_type' => 'openWeb', # 1、openNative:打开二级页面,展现 more中descs 2、openWeb:打开URL 3、staticinfo:静态信息
// 'value' => '80' , # 卡包详情页面,卡栏位右边展现的值√
)