景区团购发码V2
接口说明
景区团购三方码发券SPI,抖音通知三方发码,如果为同步发码则返回三方码,异步发码则根据发码通知的凭证单的映射关系异步发放三方码
1.对接方需保证,当凭证回调给抖音成功后才可用。用户才能入园使用凭证
2.抖音侧服务商接单成功后向服务商发起发放凭证申请。
3.同步发码在 10 分钟内无法获取服务商码时,系统将自动退单并发起退款流程
4.如果同步无法完成发码,可接入异步链路
基本信息
研发同学填写
Scope | life.capacity.scenic_promissory_gen_code | |||
权限要求 | 景区行业解决方案-景区团购能力V2版本 | |||
回调场景 | 景区团购发码 | |||
请求头
•Content-Type:
application/json•X-Bytedance-Logid: 请求logid, 用于问题排查用
•x-life-clientkey: 服务商应用的client_key
•X-life-sign: 请求签名,签名规则
请求参数
字段 | 类型 | 名称 | 是否必传 | 说明 |
order_id | string | 抖音订单id | 是 | |
out_order_id | string | 第三方侧的订单号 | 是 | |
certificate_info_list | list<CertificateInfo> | 凭证信息列表 | 是 | |
.certificate_id | string | 抖音凭证 ID | 是 | |
.sku_id | string | 商品ID | 是 | |
.start_time | long | 有效期开始时间 | 是 | 时间戳(纳秒) |
.expire_time | long | 有效期截止时间 | 是 | 时间戳(纳秒) |
.order_item_id | string | | | |
.package_id | string | 组合 ID | 否 | 在用户购买的商品为组合品时有值 |
.sub_sku_id | string | 组合品子商品 SkuID | 否 | 在用户购买的商品为组合品时有值 |
open_id | string | 对外uid | 是 | |
请求示例
{ "order_id": "dy_order_1234567890", "out_order_id": "tp_order_ABCDEFG123", "certificate_info_list": [ { "certificate_id": "douyin_cert_001", "sku_id": "sku_main", "start_time": 1748934129000000000, "expire_time": 1748934129000000000, "order_item_id": "order_item_id1", "sub_sku_id": "sub_sku_1", "package_id": "package_id" }, { "certificate_id": "douyin_cert_002", "sku_id": "sku_main", "start_time": 1748934129000000000, "expire_time": 1748934129000000000, "order_item_id": "order_item_id2", "sub_sku_id": "sub_sku_2", "package_id": "package_id" } ], "open_id": "user_openid_qwertyuiop12345" }
响应参数
字段 | 类型 | 名称 | 是否必传 | 说明 |
error_code | int | 错误码 | 是 | 0表示成功,其他表示错误(其他未知错误会进行重试,重试策略间隔10s、30s 、60s 、120s、120s 、240s,最多重试6次) |
error_msg | string | 错误信息 | 否 | 错误码非0时提供 |
result | int | 发码结果 | 是 | 0 =发码中 1 =发码成功 2 =发码失败 |
order_id | string | 抖音订单id | 是 | |
certificate_info | list<CertificateInfoResult> | 券码信息列表 | 是 | |
.certificate_id | string | 抖音内部券id | 是 | |
.project_list | list<Project> | 凭证信息列表 | 否 | |
..certificate | list<Certificate> | 凭证信息列表 | 是 | 如果仅凭证件入园即可,凭证可传一个空数组[] |
...certificate_no | string | 凭证号/码/URL | 是 | |
...certificate_type | int | 凭证类型 | 是 | 1:二维码, 2:url, 3:code |
..credential | list<Credential> | 证件信息列表 | 否 | |
...credential_type | long | 证件类型 | 是 | 1 =身份证 2 =港澳通行证 3 =台湾通行证 4 =回乡证 5 =台胞证 6 =护照 7 =外籍护照 |
...credential_no | string | 证件号 | 是 | |
..name | string | 项目名称 | 是 | |
..project_id | string | 项目Id | 是 | |
响应示例
{ "data":{ "error_code": 0, "description": "发码成功", "result": 1, "order_id": "dy_order_unique_id_12345", "certificate_info": [ { "certificate_id": "douyin_internal_cert_id_001", "project_list": [ { "certificate": [ { "certificate_no": "********", "certificate_type": 1 }, { "certificate_no": "AUX_CODE_123ABC", "certificate_type": 3 } ], "credential": [ { "credential_type": 1, // 1 代表身份证 "credential_no": "********" } ], "name": "主景区门票", "project_id": "project_main_A001" }, { "certificate": [ { "certificate_no": "https://example.com/voucher/service_XYZ", "certificate_type": 2 } ], "name": "增值服务券", "project_id": "project_service_B002" } ] }, { "certificate_id": "douyin_internal_cert_id_002", "project_list": [ { "certificate": [ { "certificate_no": "CODE_ONLY_789DEF", "certificate_type": 3 } ], "name": "单体验项目", "project_id": "project_experience_C003" } ] }, { "certificate_id": "douyin_internal_cert_id_003" // project_list 为空或省略,因为它是 omitempty } ] } }
