# 团购商品结构体定义

# Product

参数名 类型 是否必填 参数描述
product_id string(uint64) 平台生成的id
out_product_id string 外部系统id,只作为商品字段存储,不用做索引。通常为商家侧的商品id,商家需自动维护好out_product_id和平台侧生成的product_id之间对应关系。
product_type number 券类型。1. 代金券;2. 兑换券;3. 次卡
product_name string 名称
category_id string(uint64) 三级类目id
brand_id string(uint64) 品牌id
head_imgs array<string> 主图
product_qua_infos array<ProductQuaInfos> 商品资质列表,所创建的商品需核验其他资质时填入(如酒店房间含早餐);
资质列表可参考[获取类目信息
verify_page WxAppPath 核销跳转出口
verify_at_store number 是否支持到店核销。1. 支持,0. 不支持。默认1.支持。当选择0.不支持时,订单页面将不展示核销二维码,且必须填写verify_page参数。
code_source_type number 1. 平台生成;2. 商家自定义;3. 发券实时传code (实时发券模式暂不开放)
draft_status DraftStatusEnum 商品草稿状态
online_status StatusEnum 商品线上状态
audit_result AuditResult 商品审核结果
attr_kv_map map<string, string> 商品属性kv,具体字段参照【代金券属性KV】或者【兑换券属性KV】
sku SkuInfo 售卖单元

# 代金券属性KV

属性kv是字符串到字符串的映射,所有的value都需要转化为字符串。对于字符串类型,里面要多加一层 " ",解析的时候会剥掉外层的引号。具体请参考调用示例。

参数名 类型 是否必填 参数描述
use_date_rule UseDateRule 有效期规则。过期自动下架。
available_store_desc string 可用门店说明,最多支持100字。示例:全国门店除机场店外可用
use_time UseTime 全天/仅指定时间可用;时间段
exclusive_date ExclusiveDate 不可使用日期,指定周几不可用
voucher_amount number 代金券面额,向用户展示,不作为核销规则校验
bring_out_type BrgingOutTypeEnum 当商品一级类目为“餐饮”时必填。一级类目非“餐饮”时,传入该参数无效。
1. 本优惠支持堂食和外带;2. 本优惠仅支持堂食,不支持外带;3. 本优惠仅支持外带,不支持堂食
appointment Appointment 是否需要预约;提前X天;提前X小时
limit_buy_rule LimitBuyRule 单用户购买限制
order_limit_num number 单笔订单限购数量,取值范围0-25,传0表示不限制,默认限制为平台最大值25。
additional_rule string 支持本地商家录入其他文本规则,最多支持1,000字,\\n进行换行
need_phone_num number 是否需要用户手机号;1-是,则用户下单时候需填入手机号,才可发起支付0-否,则不需要填写手机号,后续订单信息中不会有用户手机号。默认值为0-否。
settle_type SettleTypeEnum 结算对象。1. 支持核销后结算至总部(一期不支持门店);
refund_policy RefundPolicyEnum 退款规则。0. 不支持退款;1. 随时可退,过期未核销自动退(一期必须选1)

# 兑换券属性KV

参数名 类型 是否必填 参数描述
use_date_rule UseDateRule 有效期规则。过期自动下架。
available_store_desc string 可用门店说明,最多支持100字。示例:全国门店除机场店外可用
use_time UseTime 全天/仅指定时间可用;时间段
exclusive_date ExclusiveDate 不可使用日期,指定周几不可用
detail_imgs array<string> 优惠券详情图片,最多10张,图片尺寸推荐3:2
set_meals array<SetMealGroup> 套餐内容,最多包含10个子套餐分组
bring_out_type BrgingOutTypeEnum 1. 本优惠支持堂食和外带;2. 本优惠仅支持堂食,不支持外带;3. 本优惠仅支持外带,不支持堂食
appointment Appointment 是否需要预约;提前X天;提前X小时;1. 无需预约,高峰期可能需要排队,到店直接出示使用;2. 需要提前预约后才可到店使用;3.无需预约填0
limit_buy_rule LimitBuyRule 单用户购买限制
order_limit_num number 单笔订单限购数量,取值范围0-25,传0表示不限制,默认限制为平台最大值25。
additional_rule string 支持本地商家录入其他文本规则,最多支持1,000字,\\n换行
need_phone_num number 是否需要用户手机号;1-是,则用户下单时候需填入手机号,才可发起支付0-否,则不需要填写手机号,后续订单信息中不会有用户手机号。默认值为0-否。
settle_type SettleTypeEnum 结算对象。1. 支持核销后结算至总部(一期不支持门店);
refund_policy RefundPolicyEnum 退款规则。0. 不支持退款;1. 随时可退,过期未核销自动退(一期必须选1)

# 次卡属性KV

参数名 类型 是否必填 参数描述
use_date_rule UseDateRule 有效期规则。过期自动下架。
available_store_desc string 可用门店说明,最多支持100字。示例:全国门店除机场店外可用
use_time UseTime 全天/仅指定时间可用;时间段
exclusive_date ExclusiveDate 不可使用日期,指定周几不可用
detail_imgs array<string> 优惠券详情图片,最多10张,图片尺寸推荐3:2
set_meals array<SetMealGroup> 套餐内容,次卡固定为1个子套餐分组。
bring_out_type BrgingOutTypeEnum 1. 本优惠支持堂食和外带;2. 本优惠仅支持堂食,不支持外带;3. 本优惠仅支持外带,不支持堂食
appointment Appointment 是否需要预约;提前X天;提前X小时;1. 无需预约,高峰期可能需要排队,到店直接出示使用;2. 需要提前预约后才可到店使用;3.无需预约填0
consume_rule ConsumeRule 单笔核销规则,不填表示无核销限制。
limit_buy_rule LimitBuyRule 单用户购买限制
order_limit_num number 单笔订单限购数量,次卡取值固定为1。
additional_rule string 支持本地商家录入其他文本规则,最多支持1,000字,\\n换行
need_phone_num number 是否需要用户手机号;1-是,则用户下单时候需填入手机号,才可发起支付0-否,则不需要填写手机号,后续订单信息中不会有用户手机号。默认值为0-否。
settle_type SettleTypeEnum 结算对象。1. 支持核销后结算至总部(一期不支持门店);
refund_policy RefundPolicyEnum 退款规则。0. 不支持退款;1. 随时可退,过期未核销自动退(一期必须选1)

# SkuInfo

参数名 类型 是否必填 参数描述
sku_id string<uint64> 平台自动生成的sku_id,更新时必须填写本参数。
sale_price number 实际售卖价格,单位分
sku_attr_map 次卡sku属性KV 目前只有次卡必填该字段。

# 次卡sku属性KV

参数名 类型 是否必填 参数描述
consumption_times number 次卡可用次数,取值范围2-10。
origin_price number 原价。次卡商品的售买价不可超过原价,且售卖价/可用次数必须大于1(即平均单次价值至少为1分钱)。

# WxAppPath

参数名 类型 是否必填 参数描述
appid string 小程序appid
path string 小程序path

# UseDate

参数名 类型 是否必填 参数描述
use_start_date string yyyy-MM-dd 开始日期
use_end_date string yyyy-MM-dd 结束日期

# UseDateRule

参数名 类型 是否必填 参数描述
validate_type number 1.指定时间周期可用; 2.指定天数可用
use_date UseDate validate_type=1时必填,可用时间周期。用户购券后开始生效的时间,开始时间不能晚于当前时间+30天。可用时间最长300天,最短1天。用户购买券后在可用时间内均可核销。过期自动下架。
如:券有效期定义为2024/02/25 - 2024/02/26,用户下单时间:2024/02/25 17:50,则用户的券会在2024/02/26 23:59:59后过期,同时商品会自动下架。
validate_days number validate_type=2时必填,生效天数。相对有效期。相对有效期最多支持300天,计算方式为从购券当天为第0天,次日0点开始计算相对有效期。
如:券有效期定义为7天,用户下单时间:2024/03/11 09:33,则用户的券会在2024/03/18 23:59:59后过期。
notify_time_type number 过期提醒时间段。用户所购券还有3天、1天即将过期未核销时,会通过视频号小店下发模版消息提醒用户核销。不填该参数时,统一在10:00~15:00进行下发。枚举含义:1. 8:00~10:00;2. 10:00~12:00;3. 12:00~14:00;4. 14:00~17:00;5. 17:00~20:00

# UseTime

参数名 类型 是否必填 参数描述
use_time_type number 1. 全天可用;2. 仅指定时间可用
time_periods array<TimePeriod> 时间段,上限20个。

# TimePeriod

参数名 类型 是否必填 参数描述
use_start_time string 开始时间 00:00:00
use_end_time string 结束时间 00:00:00
end_at_next_day number 是否跨天,1-是,0-否。

# ExclusiveDate

参数名 类型 是否必填 参数描述
enable number 是否开启,1-开启,0-不开启
days_of_week array<DayOfWeekEnum> 指定周几不可用

# SetMealGroup

参数名 类型 是否必填 参数描述
items array<SetMealItem> 套餐内包含商品列表,上限20个
group_name string 子套餐组合的名称,最长20个字
option_count number 本组套餐内可选几个商品,如果不填默认全部可选。套餐原价会根据本参数选取items价格最高的N个进行加和。

# SetMealItem

参数名 类型 是否必填 参数描述
item_name string 套餐子项名称,最长15个字
item_count number 套餐子项数量
item_price number 本项总价,单位分,只在详情中展示(非实际售价)。次卡商品该字段不生效。

# Appointment

参数名 类型 是否必填 参数描述
need_appointment number 是否需要预约,1-是,0-否
ahead_time_type AheadTimeTypeEnum 提前预约的时长单位,need_appointment传1时必填。
ahead_time_num number 提前预约的时长数,need_appointment传1时必填

# LimitBuyRule

参数名 类型 是否必填 参数描述
limit_buy_period LimitedBuyPeriodType 限购周期,0. 不限购;1. 按自然日;2. 按自然周;3. 按自然月;4. 按自然年;5. 永久限购。如果更新本字段,限购周期和用户累计购买数量将重新计算。
limit_buy_num number 限购数量,1-50

# AuditResult

参数名 类型 是否必填 参数描述
audit_status number 审核状态: 1. 等待审核中 2.审核失败 3.审核成功
audit_reason string 审核失败时表示失败原因

# ConsumeRule

参数名 类型 是否必填 参数描述
once_consume_num number 单笔核销最多消耗几次

# SkuAuditFree

参数名 类型 是否必填 参数描述
sku_id string<uint64> 平台自动生成的sku_id,更新时必须填写本参数。
sale_price number 实际售卖价格,单位分

# ProductQuaInfos

参数名 类型 是否必填 参数描述
qua_id string<uint64> 商品资质id,可参考[获取类目信息
qua_url array<string> 商品资质图片列表(单个商品资质id下,最多10张);
必使用接口[上传图片