补全一些基础信息
This commit is contained in:
@@ -93,11 +93,11 @@ your_secret_keybuyNum=1&callbackUrl=https://cb.example.com/notify/91/order&maxAm
|
||||
|
||||
1. 校验签名与时间戳;
|
||||
2. 按 `orderNo` 做幂等;
|
||||
3. 校验 `productNo` 是否已映射到当前项目的快手履约商品;
|
||||
4. 若传入 `maxAmount`,则校验成本是否超限;
|
||||
5. 创建内部订单;
|
||||
6. 创建快手 Cloud 履约任务;
|
||||
7. 生成当前项目领取链接,例如:`https://221329.cc.cd/#/claim/{token}`;
|
||||
3. 将订单作为 `91卡券` 来源订单写入当前项目;
|
||||
4. 若 `productNo` 已映射到快手 Cloud 履约商品,则创建履约任务;
|
||||
5. 若 `productNo` 尚未配置,则订单进入后台“待补全”队列,由运营补齐履约配置后重试生成任务;
|
||||
6. 若传入 `maxAmount`,则校验成本是否超限;
|
||||
7. 履约任务生成后,生成当前项目领取链接,例如:`https://221329.cc.cd/#/claim/{token}`;
|
||||
8. 首次响应返回处理中状态,由 `91卡券` 后续调用查询订单接口获取最终卡密内容。
|
||||
|
||||
## 10. 响应参数
|
||||
@@ -149,6 +149,7 @@ your_secret_keybuyNum=1&callbackUrl=https://cb.example.com/notify/91/order&maxAm
|
||||
## 12. 对接说明
|
||||
|
||||
- `productNo` 请按我方提供的商品编号配置;
|
||||
- 若 `productNo` 尚未配置,当前项目会先保存订单并返回 `orderStatus = 10`,后台补齐履约配置后可手动重试;
|
||||
- 本接口成功受理后,不代表最终卡密已可交付;
|
||||
- 最终交付内容为我方系统生成的领取链接,链接域名固定为 `221329.cc.cd`;
|
||||
- 该链接将在“查询订单接口”中,通过 `cards` 加密串返回;
|
||||
|
||||
@@ -79,10 +79,11 @@ your_secret_keyorderNo=P91KS202605040001×tamp=1777867260&version=1.0your_se
|
||||
|
||||
1. 校验签名与时间戳;
|
||||
2. 根据 `orderNo` 查询内部订单;
|
||||
3. 若订单存在但领取链接尚未准备完成,返回 `orderStatus = 10`;
|
||||
4. 若领取链接已生成,可交付,返回 `orderStatus = 20`;
|
||||
5. 若订单无法履约,返回 `orderStatus = 30`;
|
||||
6. 当返回 `20` 时,通过 `cards` 返回最终卡密内容。
|
||||
3. 若订单存在但商品履约配置尚未补齐,返回 `orderStatus = 10`;
|
||||
4. 若订单存在但领取链接尚未准备完成,返回 `orderStatus = 10`;
|
||||
5. 若领取链接已生成,可交付,返回 `orderStatus = 20`;
|
||||
6. 若订单无法履约,返回 `orderStatus = 30`;
|
||||
7. 当返回 `20` 时,通过 `cards` 返回最终卡密内容。
|
||||
|
||||
## 10. 响应参数
|
||||
|
||||
@@ -195,6 +196,7 @@ your_secret_keyorderNo=P91KS202605040001×tamp=1777867260&version=1.0your_se
|
||||
|
||||
- 本接口是 `91卡券` 自动发货的关键接口;
|
||||
- 当返回 `orderStatus = 20` 时,表示我方已准备好最终交付内容;
|
||||
- 当返回 `orderStatus = 10` 时,可能是履约任务正在准备,也可能是后台正在补齐 `productNo` 对应的履约配置;
|
||||
- 最终交付内容是领取链接,不是传统卡号密码;
|
||||
- 领取链接域名固定为 `221329.cc.cd`;
|
||||
- 买家收到链接后,会进入我方系统领取页完成后续快手核销与履约流程;
|
||||
|
||||
+13
-4
@@ -78,6 +78,7 @@ https://你的域名/api/v1/open/91
|
||||
|
||||
- `productNo` 对应当前项目内部 `skuCode`
|
||||
- 再由现有快手履约配置,匹配到 `kuaishou_ct_assisted` 履约链路
|
||||
- 若 `productNo` 暂未配置,订单会先进入后台“91卡券待补全订单”队列,不直接丢弃。
|
||||
|
||||
## 6. 异步下单接口配置
|
||||
|
||||
@@ -124,7 +125,7 @@ Content-Type: application/json;charset=utf-8
|
||||
|
||||
- 验签失败:直接返回失败。
|
||||
- `orderNo` 已存在:按幂等处理,返回已有订单状态。
|
||||
- `productNo` 未配置:返回失败。
|
||||
- `productNo` 未配置:保存为待补全订单,返回处理中。
|
||||
- 成本超限:返回失败,错误码可用 `1220`。
|
||||
- 下单成功后:
|
||||
- 创建内部订单;
|
||||
@@ -183,6 +184,7 @@ Content-Type: application/json;charset=utf-8
|
||||
### 7.4 查询处理规则
|
||||
|
||||
- 找不到订单:返回失败。
|
||||
- 订单已创建但履约配置尚未补齐:返回 `orderStatus = 10`。
|
||||
- 订单已创建但领取链接未准备好:返回 `orderStatus = 10`。
|
||||
- 领取链接已生成,可交付:返回 `orderStatus = 20`。
|
||||
- 订单无法履约:返回 `orderStatus = 30`,并带失败原因。
|
||||
@@ -272,16 +274,16 @@ Content-Type: application/json;charset=utf-8
|
||||
|
||||
### 10.1 91侧状态
|
||||
|
||||
- `10`: 已下单,当前项目正在生成领取链接
|
||||
- `10`: 已下单,当前项目正在补齐履约配置或生成领取链接
|
||||
- `20`: 已可交付,91 可自动发货给买家
|
||||
- `30`: 无法履约
|
||||
|
||||
### 10.2 当前项目侧状态建议
|
||||
|
||||
- 创建订单成功:进入待履约
|
||||
- 创建订单成功:若履约配置已命中则进入待履约;若未命中则进入后台待补全
|
||||
- 已生成 `claimUrl`:视为可交付
|
||||
- 查询接口检测到 `claimUrl` 已存在:返回 `20`
|
||||
- 配置缺失、商品未匹配、履约初始化失败:返回 `30`
|
||||
- 商家后台手动标记无法履约、履约初始化失败:返回 `30`
|
||||
|
||||
## 11. 商品配置建议
|
||||
|
||||
@@ -292,6 +294,13 @@ Content-Type: application/json;charset=utf-8
|
||||
- 发货类型:异步卡密
|
||||
- 买家收到内容:领取链接
|
||||
|
||||
后台补全路径:
|
||||
|
||||
1. 进入“平台配置 -> 91卡券接入”查看待补全订单;
|
||||
2. 根据订单中的 `productNo` 到“履约配置中心 -> 快手 Cloud 新履约”新增或补齐规则;
|
||||
3. 规则保存后回到“91卡券接入”,点击“重试生成任务”;
|
||||
4. 任务生成后,查询接口会在领取链接准备好时返回 `orderStatus = 20`。
|
||||
|
||||
## 12. 对接方需确认的固定项
|
||||
|
||||
发给 `91卡券` 客服/对接方时,建议一次性确认以下配置:
|
||||
|
||||
+13
-9
@@ -10,18 +10,21 @@
|
||||
目标能力:
|
||||
|
||||
1. `91卡券` 调用我方异步下单接口;
|
||||
2. 我方将订单接入当前项目,走现有快手 Cloud 履约链路;
|
||||
3. 我方生成领取链接 `https://221329.cc.cd/#/claim/{token}`;
|
||||
4. `91卡券` 调用查询订单接口;
|
||||
5. 我方在 `cards` 中返回领取链接,由 `91卡券` 自动发货给买家。
|
||||
2. 我方将订单作为独立接入平台订单写入当前项目;
|
||||
3. 已配置商品自动走现有快手 Cloud 履约链路;
|
||||
4. 未配置商品进入后台待补全队列,可手动补齐履约信息后重试;
|
||||
5. 我方生成领取链接 `https://221329.cc.cd/#/claim/{token}`;
|
||||
6. `91卡券` 调用查询订单接口;
|
||||
7. 我方在 `cards` 中返回领取链接,由 `91卡券` 自动发货给买家。
|
||||
|
||||
## 2. 设计原则
|
||||
|
||||
- `91卡券` 作为**新的订单来源**,不复用 `agiso`、`khhao`。
|
||||
- `91卡券` 不是新的履约执行器,而是外部售卖和自动发货通道。
|
||||
- `91卡券` 不是新的履约执行器,而是外部售卖、订单输入和自动发货通道。
|
||||
- 当前项目真正的交付物仍然是 `claimUrl`。
|
||||
- 查询接口返回 `20` 的判断标准是“领取链接已生成并可发”,不是“快手最终兑换完成”。
|
||||
- `buyNum > 1` 时,必须拆成多个 task,并返回多个 card。
|
||||
- 未命中履约配置时不丢单,先返回 `10` 并沉淀到后台待补全队列。
|
||||
|
||||
## 3. 来源建模
|
||||
|
||||
@@ -162,9 +165,9 @@ platforms: {
|
||||
下单接口成功判定标准:
|
||||
|
||||
- 请求合法;
|
||||
- 商品已匹配;
|
||||
- 订单已成功写入;
|
||||
- 至少创建出 1 个 task。
|
||||
- 商品已匹配时至少创建出 1 个 task;
|
||||
- 商品未匹配时进入待补全队列。
|
||||
|
||||
满足以上条件即返回:
|
||||
|
||||
@@ -197,6 +200,7 @@ platforms: {
|
||||
- task 进入失败/人工处理态且无法生成领取链接。
|
||||
- `10`:
|
||||
- 订单存在;
|
||||
- 商品履约配置尚未补齐;
|
||||
- 任务已创建;
|
||||
- 但并非所有 task 都已准备好 `claimUrl`。
|
||||
- `20`:
|
||||
@@ -299,7 +303,7 @@ Node 侧实现等价为:
|
||||
- 空值参数参与签名。
|
||||
2. 下单:
|
||||
- 业务请求映射为内部 source event;
|
||||
- 商品未配置时返回 `30`。
|
||||
- 商品未配置时返回 `10`,并进入后台待补全队列。
|
||||
3. 查询:
|
||||
- 全部 task 都有链接时返回 `20`;
|
||||
- 部分 task 缺链接时返回 `10`;
|
||||
@@ -313,4 +317,4 @@ Node 侧实现等价为:
|
||||
- 不实现 `callbackUrl` 主动回调;
|
||||
- 不在 `91` 查询成功后回写快手侧最终兑换结果;
|
||||
- 不实现除 `aes-256-ecb-base64` 之外的卡密加密算法;
|
||||
- 不新增专门的后台管理页面。
|
||||
- 不新增独立顶级菜单,后台入口复用“平台配置 -> 91卡券接入”。
|
||||
|
||||
Reference in New Issue
Block a user