商品发布和查询能力
业务介绍
说明:请商家侧先和销售经理沟通,由销售经理提出申请并且经过我们确认后,再进行此项对接。
小程序和生活服务商家应用共用商品相关接口,有些小程序单独的逻辑,会在文档中进行描述
接入前准备
根据以下指南完成开放平台的入驻和自助化接入
商品发布
团购发布能力帮助商家创建/修改/上架/下架团购,由于该能力对商家端和用户端影响比较大,平台仅针对自研商家和代运营服务商开放。
需要申请的能力
技术服务商&自研商家申请:商品发布
代运营服务商:无需申请权限
业务流程
对接接口
接口文档 | 能力(权限) | 接口描述 | 调用方 |
商品查询 | 查询商品模板,创建商品时的属性列表需与该接口保持一致,否则无法识别。根据商品类目及商品类型获取商品模板信息。 | 商家/服务商 | |
商品查询 | 查询商品类目,创建商品前可获取类目信息。 | 商家/服务商 | |
商品发布 | 用于创建和修改商品。 | 商家/服务商 | |
商品发布 | 免审核修改商品 | 商家/服务商 | |
商品发布 | 上下架商品 | 商家/服务商 | |
商品发布 | 同步库存 | 商家/服务商 | |
商品发布 | 用于创建多 SKU 商品。 1、创建团购活动列表。 2、团购/代金券不用对接这个接口。 | 商家/服务商 | |
商品发布 | 用于餐饮团购商品审核流程结束以后向商家通知审核结果 生活服务应用:生活服务消息推送 小程序应用:小程序配置商品审核回调地址 | 抖音 |
商品查询
业务场景
用于商家或者服务商将两方团购映射绑定管理,这样券核销时,商家侧才知道这张券对应商家后台要出哪个套餐,以及可以知道商品在抖音侧的配置规则如适用门店、价格、库存等。
需要申请的能力
技术服务商&自研商家申请:商品查询
代运营服务商:无需申请权限
业务流程
- 1.商品信息查询:通过接口查询对应商品信息,与商家侧商品模板做校验,目前仅支持查询到通过团购发布创建的商品。
- 2.商品映射:
方式一:在抖音本地商家端新建团购后,由 BD 进行双方团购 ID 映射绑定。在创建团购的页面填写“商家平台团购 ID”,券核销时会回传商家平台团购 ID。
方式二:调用查询接口,一次查询到商家抖音后台团购,并在服务商/商家侧做手动映射维护。
对接接口
接口 | 接口描述 | 调用方 |
查询商品模板,创建商品时的属性列表需与该接口保持一致,否则无法识别。根据商品类目及商品类型获取商品模板信息。 | 商家/服务商 | |
用于查询商品草稿数据。 | 商家/服务商 | |
用于查询商品草稿数据列表。 | 商家/服务商 | |
用于查询商品线上数据。 | 商家/服务商 | |
查询本client_key(或绑定的账号)对应的商品线上列表 | 商家/服务商 |
枚举字典
product_type
1 : 团购套餐
3 : 预售券
4 : 日历房
5 : 门票
7 : 旅行跟拍
8 : 一日游
11 : 代金券
12: 新预售券
14: 外卖
15: 次卡
22: 预约
商品二级类型product_sub_type
一级类型 | 二级类型 |
12 | 1201(旅行社预售) |
28 | 2801(提货券) |
字段约定
- •接口中所有涉及到的金额,单位均为分
- •接口中所有涉及到的时间戳,均指秒级时间戳
属性结构详解
枚举值 | 含义 | 说明 | 结构定义(thrift格式) |
INT64 | 整数 | | i64 |
BOOL | 布尔值 | | bool |
STRING | 字符串 | | string |
DOUBLE | 浮点数 | | double |
COMMON_ENUM | 通用枚举控件(CommonEnumStruct) | 对应属性字段: application_gender service_effect | // 通用枚举控件 value必须非空字符串 // key等于0时为用户自定义,value也必须非空字符串 struct CommonEnumStruct{ 1: required i64 key 2: required string value } |
IMAGE | 图片控件(ImageStruct) | url、名称 | struct ImageStruct { 1: optional string name 3: optional string url } |
USE_TIME | 使用时间控件(UseTimeStruct) | 全天/仅指定时间可用;时间段(比如12:-14:) | enum UseTimeTypeEnum { ALL_DAY = 1 // 全天可用 SPECIFIC_TIME = 2 // 仅指定时间可用 } struct TimePeriodStruct { 2: required string use_start_time // 开始时间 00:00:00 3: required string use_end_time // 结束时间 00:00:00 4: optional bool end_time_is_next_day // 是否跨天 } struct UseTimeStruct { 1: required UseTimeTypeEnum use_time_type // 1全天可用,2仅指定时间可用 2: optional list<TimePeriodStruct> time_period_list // 时间段 } |
USE_DATE | 可使用日期(UseDateStruct) | 指定日期/指定天数;购买后多少天有效;可用开始时间;可用结束时间; | enum UseDateTypeEnum { SPECIFIC_DATE = 1 // 指定日期 RELATIVE_DATE = 2 // 指定天数 } struct UseDateStruct { 1: required UseDateTypeEnum use_date_type // 1指定日期 2指定天数; 2: optional i32 day_duration // 购买后X天有效,use_date_type=2时有效 3: optional string use_start_date // yyyy-MM-dd 开始日期,use_date_type=1时有效 4: optional string use_end_date // yyyy-MM-dd 结束日期,use_date_type=1时有效 } |
CAN_NO_USE_DATE | 不可使用日期(CanNoUseDateStruct) | 开关;指定周几不可用;指定节假日不可用;指定日期不可用;节假日具体日期 | enum HolidayEnum { UNSET = 0 NEW_YEAR = 1 // 元旦 SPRING_FESTIVAL = 2// 春节 TOMB_SWEEPING_DAY = 3 // 清明 MAY_DAY = 4 // 劳动节 DRAGON_BOAT_FESTIVAL = 5 // 端午节 MID_AUTUMN_FESTIVAL = 6 // 中秋节 NATIONAL_DAY = 7 // 国庆节 VALENTINE_DAY = 8 // 情人节 CHRISTMAS = 9 // 圣诞节 LANTERN_FESTIVAL = 10 // 元宵节 NETWORK_VALENTINE_DAY = 11 // 520 INTERNATIONAL_CHILDREN_DAY = 12 // 儿童节 CHINESE_VALENTINE_DAY = 13 // 七夕节 FEBRUARY_SECOND = 14 // 二月二 MOTHER_DAY = 15 // 母亲节 FATHER_DAY = 16 // 父亲节 TEACHER_DAY = 17 // 教师节 } enum DayOfWeekEnum { MONDAY = 1 TUESDAY = 2 WEDNESDAY = 3 THURSDAY = 4 FRIDAY = 5 SATURDAY = 6 SUNDAY = 7 } struct CanNoUseDateStruct { 1: required bool enable // 开关,启用需要为true 2: optional list<DayOfWeekEnum> days_of_week // 指定周几不可用 3: optional list<HolidayEnum> holidays // 指定节假日不可用 4: optional list<string> date_list // yy-MM-dd 指定日期,不可用 5: optional map<HolidayEnum, string> holiday_dates // 节假日不可用具体日期,例如:"holiday_dates":{"1":"2021.01.01-2021.01.03","7":"2021.10.01-2021.10.07"} } |
APPOINTMENT | 预约控件(AppointmentStruct) | 是否需要预约;提前X天;提前X小时;第三方预约入口;第三方已预约订单查看入口;需预约日期类型(1-指定周期、2-指定日期);需周几;需预约日期 | enum AheadTimeTypeEnum { DAY = 1 HOUR = 2 MINUTE = 3 } struct AppointmentStruct { 1: optional bool need_appointment // 是否需要预约 2: optional i32 ahead_day_num // 需要提前X天电话预约 3: optional string external_link // 第三方提供预约入口,需要过机审。 4: optional string order_appointment_time_url // 第三方提供的查看已预约订单入口,需要过机审 5: optional AheadTimeTypeEnum ahead_time_type // 提前预约时间类型, need_appointment = true时该字段必填 6: optional i32 ahead_hour_num // 需要提前X小时电话预约 7: optional i32 ahead_minute_num // 需要提前X分钟电话预约 } |
NOTE | 富文本控件(NoteStruct) | 类型(文本/图片);内容 | enum OtherNoteTypeEnum { TEXT = 1 // 文本 IMG = 2 // 图片 } struct NoteStruct { 1: optional OtherNoteTypeEnum note_type 2: optional string content } |
LIMIT_USE_RULE | 限制使用规则控件(LimitUseRuleStruct) | 是否限制、每人单次消费最多使用代金券张数 | struct LimitUseRuleStruct { 1: required bool is_limit_use // 是否限用 2: optional i32 use_num_per_consume // 每人单次消费最多使用代金券张数 } |
CUSTOMER_RESERVED_INFO | 用户留资规则控件(CustomerReservedInfoStruct) | 是否留资;可以留电话;可以留姓名;可以留身份证;手机号是否必传;是否每张券都要留资;留资原因 | struct CustomerReservedInfoStruct { 1: required bool allow //是否留资 2: optional bool allow_tel //可以留电话 3: optional bool allow_name // 可以留姓名 4: optional bool allow_identity // 可以留身份证 5: optional bool require_for_tel //手机号是否必传 【默认非必传】 10: optional bool need_for_all // 是否每张券都需要留资 } |
REAL_NAME_INFO | 实名信息控件(RealNameInfoStruct) |




