📋 任务库

任务库:创建与跟踪任务
SKU
关键词
状态
平台
店铺
时间~
📋 任务管理
加载中...
📋

在右侧面板上传 Excel 并选择处理模式
任务将在队列中排队执行,结果在此展示

全部
在售
缺货
已下架
待调整

在线 Listing 数据加载中...

🔎 eBay 实时数据抓取核验 抓页面实时值,并和系统 DB 预期参数对比
ItemID / URL
SKU
站点 账号
数量
用途:验证真实 eBay 页面里展示的价格、物流/运费、Item Location、Handling Time、Return 是否和 LF 上架参数一致。Rate Table / Policy ID 页面一般不直接显示,本工具会展示系统 DB 保存的预期值。
🔎

输入 Item ID / URL / SKU 后开始实时抓取核验

SKU
关键词
销售类型
商品状态
分类
供应商
数据源
通途分类
创建日期~
更新日期~
特性标签
📦

资料库数据同步中...
通途商品资料和售卖资料将显示在这里

📊

库存数据加载中...

仪表盘
竞品调价
阶梯清仓
规则配置
决策日志
📖 系统说明
整体毛利
目标 20-24%
竞品覆盖
—/— SKU
今日调价
↑— ↓—
滞销率
定价模式分布
加载中...
清仓进度
加载中...
说明:海外仓 = 橙联一心-悉尼仓 代表价;国内 = 国内花都仓库*;UBI = 国内花都仓库*|UBI虚拟。点击行查看全部 仓×策略 详情。
📐

正在加载底价表…

总决策数
异常
critical / warning
已锁定
最近预演
🧭

正在加载决策矩阵…

🏭 仓库中心

仓库 通途ID 站点/类型 Location HT 同步 路由 矩阵 SKU/库存 价格库/矩阵 问题
正在加载仓库中心…
🧪 路由测试
SKU 账户 站点 当前仓库 类型 处理时间 物品所在地 切仓次数 最近切仓 原因
选择筛选条件或点击仓库卡片查看绑定
关键词
状态
模式
时间~
🗂️ 历史记录
任务ID文件名模式状态SKU时间操作
加载中...
📐 模版数据概览
-
运费表
-
物流策略
-
退货策略
-
付款策略
-
仓库位置
最后同步: - 账户: -
运费表
物流策略
在用物流
退货策略
付款策略
仓库位置
门禁失败
刷新计划
修复预审
运费表
Rate Table 是 eBay Account API 里的真实分区运费表,用来判断 Standard/Express 是否有阶梯收费。
关系:物流策略绑定运费表;在用物流来自 active listing 实际引用。
账号
站点
包邮策略
仓库/Location
重量段
HT
搜索
共 0 条
加载中...
点击上方 tab 查看数据
策略注册表审计
-
总条目
-
完整
-
缺策略
-
完整率
-
状态
密封验收测试




注册表条目明细
Key账号站点仓库包邮 FulfillmentReturnPaymentHandling状态
⚙️ 配置数据概览
-
类目编码
-
品牌代码
-
通途分类

配置文件位于 config/ 目录

🔄 定时任务调度面板
加载中...

夜间同步窗口 00:30–08:30 | Token 每 30 分钟刷新 | 通途 API 串行执行避限流

📦 通途 ERP 同步
ERP 商品增量同步01:00, 05:00-
售卖资料增量同步02:00, 06:00-
库存同步12:00, 18:00-
全量同步(周一)周一 04:00-
供应商同步周六 03:00-
🌐 eBay 同步
eBay Listing 增量03:00, 07:00-
Token 保活每 30 分钟-
模版同步每 7 天-
🤖 自动化任务 (每小时)
订单桥接:00-:05-
🫀 心跳巡检:10-:12 (2h)-
库存监控:15-:20-
Listing 审核:15-:16-
⚡自动调整:05-:55-
自动上架:50-:55-
自动绑定:55-:58-
📦 自动补货10:00, 22:00-
📊 每日日报16:00-
📊 同步日志 (最近5条)
加载中...
🚀 快速上手 — 3 分钟学会 ▼ 点击展开/收起
整个流程就 3 步:上传表格 → 选模式 → 等结果。支持两种操作方式:按钮点选 或 AI 对话。
1
认识界面
界面总览
打开系统后看到三个区域:
左边深色栏 — 切页面用的(资料库、历史、配置、说明),最下面那个绿色小圆点是系统心跳灯,绿色=正常,黄色=部分异常,红色=挂了。
中间大区域 — 你的产品数据都在这里展示,最上面一排是搜索筛选栏。
右边面板 — 上传文件、选模式、看进度,都在这里操作。
2
上传 Excel 表格
上传文件
右边面板最上面有个上传区,把你的 Excel 文件拖进去或点击选择
上传成功后会显示文件名和大小(绿色的 ✅)。
如果不知道表格格式,点旁边的「📥 下载模板」先下一个看看。
3
选择执行方式(二选一)
方式 A:按钮点选(推荐新手)
上传文件后,右边面板出现 3 个快捷模式按钮,直接点一个:
👁️ 快速预览导入 + 生成SKU + 定价,不写ERP,用来看看效果
创建模式导入 + SKU + 批量文案 + 批量图片 + 写入ERP(不含浏览器导入)
🚀 一站式全自动:创建 + 文案 + 图片 + 写ERP + 墨文档自动登录通途浏览器导入
选好后点 「开始处理」 按钮即可。

想自定义?展开下方「⚙️ 手动自定义模式(高级)」,分别设置运行模式、文案、图片、自动导入。
方式 B:AI 对话
在墨文档 AI 对话框里用大白话说就行,比如:
「帮我试写文案和生成图片」
「完整流程全部生成并导入通途」
「只预览SKU不生成文案」
AI 理解后会显示一个配置摘要,确认没问题就点「确认执行」
🤖 墨文档 — 你的智能助手
墨文档是 Listing Forge 内置的 AI 助手,它有记忆、懂上下文,能帮你:
  • 理解自然语言 — 不用记指令,像聊天一样说需求就行
  • 记住上下文 — 提过 SKU 后,后续说「帮我重新生成」它就知道是哪个
  • 智能补全 — 只说「图片有问题」时,它会追问确认操作
  • 多轮对话 — 可以一步步细化需求,不必一次性说全
示例对话:
你:128TO260309001 图片只有供应商原图
墨文档:已找到该 SKU,要重新生成图片吗?
你:对,按规则生成8张
墨文档:✅ 确认重新生成 128TO260309001 的图片(8张),点击确认执行
4
等它跑完
处理中
点完确认后,右边面板会出现进度条和实时日志,你能看到系统正在干什么。
日志窗口会滚动显示:解析表格 → 生成 SKU → AI 写文案 → 生成图片 → 计算定价 → 导出 Excel → 写入ERP → 浏览器导入通途 ...
别关页面,等进度条走到 100% 就行了
⏱️ 速度参考:1 个 SKU 纯文案约 2-3 分钟,批量图片每个 SKU 约 1-2 分钟,浏览器导入约 3-5 分钟。
5
看结果 + 筛选问题
结果展示
跑完后中间区域会显示所有产品卡片,每个卡片能展开看5个标签页
📋 商品资料 · 📦 售卖资料 · 🏪 eBay刊登 · 📦 Amazon刊登 · 🛍️ Shopify

最上面会出现一个体检报告,三个大色块告诉你整体情况:
0 正常 1 警告 0 失败

点色块可以快速筛选:比如点「失败」就只显示有问题的产品,方便你集中处理。
筛选栏也能按 SKU编号、关键词、平台、时间范围来搜。
6
看哪里有问题
体检详情
每个产品卡片标题旁边有个小标记(✅ 或 ⚠️ 或 ❌),点一下会弹出这个 SKU 的「体检详情」:

系统会逐项检查:类目、品牌、图片、定价、文案标题、描述,每项用 ✅❌⚠️ 标出来。
比如上图显示品牌是 ⚠️(Unbranded),就是说这个产品没识别到品牌,你可能需要手动补一下。

一眼就知道哪里要改,不用一个个翻
🔄 完整流程环节说明
一个产品从 Excel 到通途上架,系统依次经过以下环节:
环节做什么预览创建一站式
① 导入解析解析Excel,提取产品信息
② SKU生成生成标准SKU编号 + 推断类目/品牌
③ AI文案生成标题、描述、Item Specifics、多语言✅ 批量✅ 批量
④ AI图片2张原图裂变8张(白底+场景+角度+细节)✅ 批量✅ 批量
⑤ 定价计算根据重量/尺寸计算各站点售价
⑥ 导出Excel生成eBay/Amazon/Shopify/售卖资料Excel
⑦ 写入ERPAPI写入通途商品资料+售卖资料
⑧ 浏览器导入墨文档自动登录通途,导入平台资料Excel
一站式模式 = 选一次,全部自动跑完,从 Excel 到通途上架零手工操作。
❓ 常见问题
Q:处理到一半好像卡住了?
A:看右下角日志有没有在动,看左下角心跳灯是不是绿的。绿的就没事,AI 在想事情比较慢,耐心等。

Q:跑完发现文案不满意怎么办?
A:重新上传表格再跑一次,或者用「试写」模式先看效果。

Q:体检报告显示"失败"怎么处理?
A:点「失败」色块筛选出来 → 点 SKU 的状态标记看哪项失败 → 针对性修复后重跑。

Q:想只跑某几个 SKU 怎么办?
A:把那几个 SKU 单独存一个 Excel 上传就行。

Q:「创建模式」和「一站式」有什么区别?
A:创建模式完成 ①-⑦ 步(生成资料+写入ERP),但不含浏览器自动导入。一站式在此基础上多一步:墨文档自动登录通途,把 eBay/Amazon/Shopify 平台资料 Excel 导入进去。

Q:手动模式和 AI 对话有什么区别?
A:效果完全一样。按钮点选更直观,AI 对话可以用自然语言灵活定制(如「只写3个试试」「只生成图片不写文案」)。

Q:墨文档 AI 助手能做什么?
A:墨文档是 Listing Forge 的智能助手,可以理解自然语言指令、记住对话上下文、智能分析任务配置。你可以用大白话跟它交流,比如「帮我重新生成这个SKU的图片」「一站式全部搞定」等。

Q:AI 对话和修改模式有什么区别?
A:两者都是对已有 SKU 重新生成。AI 对话用自然语言(如「128TOxxx 重新生成图片」),适合明确知道要做什么;修改模式是快捷按钮,勾选要重生的内容后批量执行,适合批量操作多个 SKU。
🏷️ SKU 生成规则 ▼ 点击展开/收起
格式[类目编码 3位][品牌代码 2位][日期 YYMMDD]S[序号 2位]
示例271HD260203S01 → 类目271(rocker arms) + Honda + 2026-02-03 + 第1个
标准长度13位(常规3位类目)/ 14位(新类目4位,≥1001)
序号每批次从 01 起递增,同批次共用同一日期

类目编码

  • 配置文件:config/sku_category_codes.json
  • 精确匹配 → 模糊匹配(包含关系)
  • 未匹配:自动从 1001 起分配新编码并写入配置

品牌代码

  • 配置文件:config/brand_codes.json
  • 支持中英文别名匹配(如 "本田; honda" → HD)
  • 未匹配品牌默认代码:XX
品牌代码示例 ▸
HondaHDToyotaTONissanNS
FordFDBMWBWMazdaMZ
HyundaiHYMitsubishiMIUniversalUN
📌 标题生成规则

英文标题(词组1)

结构核心产品名 + Suitable for + Make + Model + 排量/发动机代码 + OE编号
长度70–80 字符,硬性上限 80
必须使用Suitable for(不可用 for / fits / compatible with)

禁止事项

  • 禁止词:OEM / Genuine / Original / Brand New / High Quality / Premium / Perfect Fit
  • 禁止缩写:compat. / comp. / approx. / pcs. / qty. / w/ / incl.
  • 禁止:句号(.)、emoji、中文、引号、自有品牌名、MPN

标题词组2(差异化)

  • 同义替换:Parking Sensor → PDC Sensor / Reverse Sensor;Water Pump → Coolant Pump
  • 车型顺序可调换,年份格式变化:2013-2020 → 13-20 / 2013 onwards
  • 数量变化:Pack of 4 → 4PCS;介词变化:for → Fits
  • 必须 ≤80 字符,且与词组1内容不同

非英语标题

语言"Suitable for" 翻译
DE 德语Passend für / Für
FR 法语Compatible avec / Pour
IT 意大利语Adatto per / Per
ES 西班牙语Compatible con / Para
PT 葡萄牙语Compatível com / Para
  • 技术术语(型号、部件号、品牌名、尺寸)保持原文
  • 超过80字符自动按语义压缩,优先保留高搜索频率词
📝 描述生成规则

纯文本描述(五段式)

  1. Description — 产品功能描述
  2. Features — 产品特性列表
  3. Specifications — 技术规格
  4. Compatible With — 每行 Suitable for Make Model Year...
  5. Package Include — 包装清单

结尾固定附加:All trademarks mentioned are the property of their respective owners...

复杂描述(HTML 格式)

  • 基于五段式转格式,不新增内容
  • 字体:Arial, sans-serif;标题 14px bold;正文 13px
  • 各段内用 <br> 换行

简易描述

  • 带格式(baseRichText):与复杂描述相同的 HTML 格式
  • 纯文本(textDescribe):五段式纯文本,无任何 HTML 标签

亮点描述(Amazon Bullet Points)

  • 5 条,每条 100–255 字符,纯英文,不加句号
  • 固定顺序:① 功能/用途 ② 适配范围 ③ 材料/结构 ④ 规格/替代部件号 ⑤ 安装/使用价值
  • 禁止:premium / top quality / best / perfect / OEM / Genuine / Original
  • 允许:designed to fit / supports / helps / restores / provides / ensures
  • 格式:<p>要点1</p><p>要点2</p>...

非英语描述

  • 翻译语言:DE / FR / IT / ES / PT
  • 型号、部件号、品牌名、尺寸保持原文
  • OE 编号、重量格式不翻译
🖼️ 图片生成规则

图片类型

代码名称生成方式
ZT2白底主图供应商原图 → AI 去水印去背景,1000×1000
BD1左旋角度图ZT2 → PIL 旋转 -15°,白底填充
BD2右旋角度图ZT2 → PIL 旋转 +15°,白底填充
BG1场景图ZT2 → AI 场景合成(发动机舱背景)
BD3局部放大图ZT2 → PIL 中心裁剪 55% 放大到 1000×1000

生成顺序:供应商原图 → ZT2(AI) → BD1/BD2/BD3(PIL) + BG1(AI)

图片组规则(通途售卖资料)

图片组主图额外图适用店铺
组1BG1(场景图)BD1, BD2, BD3eBay: SL, XEX, YIXIN, HY, ABG, TR
组2ZT2(白底)BD1, BD2, BD3Amazon YIXIN, Shopify HY
组3ZT2(白底)BD3, BD1, BD2Amazon XEX, Shopify XEX
  • 每组:主图(W) 1张 + 额外图(E) + 详情图(D)
  • 每个图片组总数上限 10 张,超出自动截断
  • 橱窗图库(A):全部 AI 生成图,上限 10 张
  • 供应商原图仅放 ERP imgUrls 和橱窗图(A),不进图片组(L)
🔧 自定义物品属性(Item Specifics)

属性输出顺序

  1. Brand / Manufacture(二者一致)
  2. Type
  3. Manufacturer Part Number
  4. OE/OEM Number(从 Reference Numbers 清洗)
  5. Condition(默认 New)
  6. Placement on Vehicle
  7. Colour / Material / Features
  8. Fitment 1–5(车型兼容)
  9. Universal Fitment / Vehicle Origin
  10. Warranty(默认 1 Year)

品牌自动映射

产品类型Brand / Manufacture
冷却系统maxcool auto parts
起动机/发电机all in redbox
家居/户外all in home box
化工液体all in chemi box
其他汽配kaka auto parts
无法分类Unbranded

禁止品牌:Bosch / Denso / NGK / Gates / Brembo / Hella / Valeo / Delphi / Aisin / SKF

Fitment 规则

  • 格式:Suitable for Make Model Series Engine Body YearRange
  • 相同车型连续年份用 en-dash 合并(2013–2020)
  • 最多 5 行;超过时压缩为 Suitable for {Make} (Multiple Variants)
  • 来源优先级:描述 Compatible With → 产品 compatibility → item_specifics → 标题

Placement on Vehicle 允许值

Engine Compartment / Front / Rear / Left / Right / Upper / Lower(多个用逗号分隔)

字段限制

  • 属性名 ≤ 65 字符,属性值 ≤ 100 字符
  • Unknown 值不输出
  • 非英语自动翻译属性名和固定值(DE/FR/IT/ES/PT)
🏷️ 特性标签规则(含站点限定)

1. 来源与写入

  • 导入来源:Excel 导入模板「特性标签」列(原「销售渠道」,兼容旧名)
  • 通途写入productLabelNames 字段,自动调用 LabelQuery / createLabel 确保标签存在
  • 默认标签:所有产品自动带 Listing Forge,特性标签追加在后
  • 内存缓存避免重复创建

2. 站点限定规则

特性标签为「XX分销」时,eBay 刊登资料 仅生成对应站点的行,未设置标签则全站点上架。

特性标签限定站点站点代码
澳洲分销eBay 澳大利亚站AU
美国分销eBay 美国站(Vehicle Parts 自动走 Motors)US / MOTORS
英国分销eBay 英国站UK
欧洲分销eBay 德/法/意/西四站DE FR IT ES
德国分销eBay 德国站DE
法国分销eBay 法国站FR
意大利分销eBay 意大利站IT
西班牙分销eBay 西班牙站ES
加拿大分销eBay 加拿大站CA
未设置 / 空不限制,全站点上架(AU, US, UK, DE, FR, IT, ES, CA)
  • 多标签:用逗号/顿号分隔,取并集。如「澳洲分销, 美国分销」→ AU + US 两个站点
  • 简写兼容:「澳洲」=「澳洲分销」,「美国」=「美国分销」等
  • 影响范围:eBay 刊登 Excel(eBay平台资料 + pa sheet);通途产品资料 Excel 标签列同步写入
  • 不影响:ERP 商品创建(createProduct)不受限,所有产品照常写入通途

3. 示例

SKU特性标签eBay 导出行为
101HD250516S03澳洲分销仅生成 AU 站行
159MZ250714S07澳洲分销, 美国分销生成 AU + US(MOTORS) 站行
161NS250822S03(空)生成全部 8 站行
165HA230927S01欧洲分销生成 DE + FR + IT + ES 四站行
💰 建议售价与物流计费规则(完整版)

📐 核心定价公式(ebay-ads 标准 v2)

总变动成本(CNY) = 采购价 + 头程运费 + 头程关税 + 其他费用 + 尾程运费
总变动成本(AUD) = 总变动成本(CNY) / 汇率(4.72)
分母 = 1 − 佣金(12%) − 汇损(1.37%) − 退货(3.5%) − 广告(4.5%) − 目标毛利(24%) = 0.5463
建议售价 = ceil(总变动成本_AUD / 0.5463 × 100) / 100
  • 佣金 12%:eBay FVF 最终成交费
  • 汇损 1.37%:eBay 自动货币转换损耗
  • 退货 3.5%:平均退货率预估
  • 广告 4.5%:Promoted Listings 广告平均支出
  • 目标毛利 24%:默认值,可按品类/库龄/竞争度分级调整(如滞销品降到 15%、爆品维持 24%+)
  • 最低售价保护:最终售价 = max(公式计算价, 站点最低售价)
成本数据来源
费项来源字段
采购价ERP products / inventorycost_cny / goods_cur_cost
头程运费inventory_stocksfirst_shipping_fee
头程关税inventory_stocksfirst_tariff
其他费用inventory_stocksother_fee
产品重量Tongtool goodsWeightweight_g
包装尺寸ERP productspackage_length/width/height_cm
尾程运费计算
仓库类型物流渠道计算方式
HK(国内仓)SpeedPAK HK→买家按重量/体积重 + 操作费
海外仓-澳大利亚AU国内配送重量段运费表 + handling + unloading
虚拟仓-澳大利亚UBI按计费重查规则表
海外仓-美国/英国SpeedPAK(近似)按目标国费率

🏛️ VAT 处理规则(重要)

发货方式VAT 由谁承担cost_ratio取值说明
中国直发 → 任何站点eBay平台代收direct(0.55)卖家定价不含VAT,买家结算时平台加税
海外仓 → UK/EU站点卖家含税定价overseas(较低)售价必须包含VAT
海外仓 → US/AU/CA平台代收/无VAToverseas(同direct)卖家不含VAT

🏭 仓库 / 物品所在地(Item Location) / ERP仓库映射

仓库代码类型物品所在地(eBay)对应ERP仓库实际子仓库
HK直发仓Guangzhou, CN 510000HK(国内花都仓库*)—(SpeedPAK/云途直发)
虚拟仓-澳大利亚虚拟仓Sydney NSW, AU 2000虚拟仓-澳大利亚HK发货,eBay显示AU地址
海外仓-澳大利亚海外仓New South Wales, AU 2144海外仓-澳大利亚橙联一心-悉尼仓, 璟川(液体)悉尼仓, OC墨尔本仓, 万邑通澳洲
海外仓-美国海外仓South Plainfield NJ, US 08861海外仓-美国OC美东新泽西仓, OC美西洛杉矶仓, 递四方美西1仓, 万邑通USKY3
海外仓-英国海外仓Leicester, GB LE19 4DB海外仓-英国橙联一心-英国仓, Jason UK仓

🚚 物流渠道覆盖

物流渠道仓库覆盖站点参与定价运费计算
SpeedPAK(橙联直发)HK 香港仓US, MOTORS, UK, DE, FR, IT, ES, CA, AU✅ 是按计费重+操作费+附加费
海外仓本地配送海外仓-AU/US/UKAU, US, UK✅ 是重量段运费表+handling+unloading
虚拟仓 UBI/中通虚拟仓-澳大利亚AU (BG/AG账号)✅ 是按重量段单价+操作费
云途 (YunExpress)HK 香港仓US, UK, DE, FR, IT, ES, CA路由备选按计费重+挂号费

💱 各站点汇率与成本系数(v2 按仓库区分)

站点货币汇率(1目标=?RMB)cost_ratio(直发)cost_ratio(海外仓)VAT税率最低售价
US / MOTORSUSD7.250.550.550%4.99
UKGBP9.150.550.457320%4.99
AUAUD4.720.550.5510%7.99
DEEUR7.850.550.464319%5.99
FREUR7.850.550.457320%5.99
ITEUR7.850.550.443722%5.99
ESEUR7.850.550.450421%5.99
CACAD5.350.550.550%6.99

直发cost_ratio统一0.55,eBay代收VAT不影响卖家定价。海外仓发UK/EU需含税,系数相应降低。红色数值表示含VAT调整。

📦 SpeedPAK 运费计算规则 ▸
计费重规则
条件计费重
所有边长 < 40cm计费重 = 实重
最长边 ≥ 40cm 且 体积重 ≤ 实重×1.3计费重 = 实重
最长边 ≥ 40cm 且 体积重 > 实重×1.3计费重 = 实重 + (体积重 − 实重×1.3) ↑取整

体积重 = L×W×H / 6000 × 1000 (克)

运费(RMB) = 计费重_kg × 单价 + 操作费 + 附加费
各站点参数(完整分段)
站点重量段(g)单价(元/kg)操作费(元)上限(kg)附加
US1~1001382431.5清关费10.5元/票
101~20013825
201~45013828
451~3150013839
UK1~100009017.610
DE1~400127.718.130
401~30000112.224.3
FR1~500108.024.020
501~20000114.523.0
IT1~2000108.126.82(超重禁刊!)
ES1~20000146.020.020
CA1~30000133.026.230
AU1~2200088.738.522实重>3kg二次收费(LWH/4000)
✈️ 云途 YunExpress 运费规则 ▸
体积重 = L×W×H / 8000 (kg)  |  计费重 = max(实重, 体积重)
运费(RMB) = 计费重_kg × 单价 + 挂号费
站点单价(元/kg)挂号费(元)上限(kg)
US109~115(分段)31~5630
UK58~62165
DE852510
FR93255
IT70~722530
ES80205
CA65~72(分段)21~2330
🏬 AU 虚拟仓 (UBI) 运费规则 ▸
体积重 = L×W×H / 6000 (g)  |  体积重/实重 > 2 时取体积重,否则取实重
运费(RMB) = 计费重_g × 单价(元/g) + 操作费
重量段(g)单价(元/g)操作费(元)
0~2500.0376227.45
250~5000.0387727.45
500~10000.0493228.77
1000~20000.0502635.43
2000~30000.0522938.81
3000~40000.0522938.81
4000~50000.0524138.81
5000~70000.0532038.81
7000~100000.0558738.81
10000~150000.0605738.81
15000~220000.0765538.81

超22kg无匹配→返回None(禁刊)

🏠 海外仓运费(头程均摊) ▸
头程均摊成本 = 采购价_RMB × 3.5%
总成本 = 采购价_RMB × 1.035
(国际运费已在入仓时支付,不再精确计算)
📉 扣减规则(半包邮 / 不包邮) ▸
半包邮售价 = 全包邮售价 − 半包邮扣减额
不包邮售价 = 全包邮售价 − 不包邮扣减额
注意:AU 直发有专属扣减表(speedpak_au_direct_deduction.json),非 AU 站点直发不做扣减
AU 海外仓扣减表(完整 0~85kg)
重量段(kg)半包邮(AUD)不包邮(AUD)
0~0.56.010.0
0.5~17.015.0
1~28.017.0
2~39.019.0
3~411.022.0
4~512.022.86
5~713.027.13
7~1015.034.47
10~1518.046.42
15~2023.064.50
20~2225.067.69
22~2560.083.0
25~3062.088.0
30~3581.0111.0
35~4093.0126.0
40~4597.0134.0
45~50134.0200.0
50~60152.0220.0
60~70156.0230.0
70~80161.0240.0
80~85165.0250.0
>85禁止刊登(999)

黄色底色为 22kg+ 大件区,扣减值陡增

AU 直发(SpeedPAK)扣减表
重量段(g)半包邮(AUD)不包邮(AUD)
0~5005.010.0
500~10006.014.0
1000~20007.016.0
2000~30008.018.0
3000~500010.022.0
5000~700012.026.0
7000~1000014.032.0
10000~1500017.042.0
15000~2200022.058.0

仅 AU 站直发有扣减;其他站点直发不扣减(全包邮)

AU 虚拟仓(UBI)扣减表
重量段(g)半包邮(AUD)状态
0~1002.0确认
100~5002.0确认
500~10005.0确认
1000~20007.0确认
2000~30009.0待确认
3000~500012.0待确认
5000~1000015.0待确认
10000~1500018.0待确认
15000~2200022.0待确认
无匹配2.0(默认)
不包邮 = 全包邮 − (运费_RMB / AUD汇率)(不查扣减表)
📊 完整计算示例(10个场景) ▸
示例1: 美国站 · SpeedPAK直发 · 300g
采购价: 25 RMB | 实重: 300g | 尺寸: 20×15×10cm
① 计费重: 所有边<40cm → 计费重=300g
② 运费: 201~450g段: 0.3×138+28=69.40 + 清关10.5 = 79.90 RMB
③ 售价: ceil((25+79.90)/0.55/7.25×100)/100 = ceil(2631)/100 = USD 26.31
示例2: 澳大利亚 · 海外仓 · 1.5kg
采购价: 50 RMB | 实重: 1500g | 仓库: 海外仓-澳大利亚
① 头程: 50×3.5% = 1.75, 总成本=51.75 RMB
② 售价: ceil(51.75/0.55/4.72×100)/100 = AUD 19.94
③ 扣减(1~2kg): 半包邮=19.94−8.0=11.94 | 不包邮=19.94−17.0=2.94
示例3: 英国站 · SpeedPAK直发(中国发→eBay代收VAT) · 500g
采购价: 35 RMB | 实重: 500g | 仓库: HK直发
② 运费: 0.5×90+17.6 = 62.60 RMB
③ 售价: cost_ratio=0.55(直发不含税) → ceil((35+62.60)/0.55/9.15×100)/100 = GBP 19.40
买家实际支付: 19.40×1.20 = 23.28 GBP(eBay代加20%VAT)
示例4: 英国站 · 海外仓(英国本地发→卖家含税) · 500g
采购价: 35 RMB | 实重: 500g | 仓库: 海外仓-英国
① 头程: 35×3.5% = 1.225, 总成本=36.225 RMB
② 售价: cost_ratio=0.4573(海外仓含税!) → ceil(36.225/0.4573/9.15×100)/100 = GBP 8.66
此价格已含20%VAT,买家看到即最终价
示例5: 德国站 · SpeedPAK直发 · 400g
采购价: 30 RMB | 实重: 400g
② 运费: 1~400g段: 0.4×127.7+18.1 = 69.18 RMB
③ 售价: ceil((30+69.18)/0.55/7.85×100)/100 = EUR 22.97
eBay代收19% VAT
示例6: 澳大利亚 · 虚拟仓(UBI) · 800g
采购价: 40 RMB | 实重: 800g | 尺寸: 30×20×15cm
① 计费重: 体积重=1500g, 1500/800=1.875 < 2 → 计费重=800g
② 运费: 500~1000g段: 800×0.04932+28.77 = 68.23 RMB
③ 售价: ceil((40+68.23)/0.55/4.72×100)/100 = AUD 41.69
④ 扣减: 半包邮=41.69−2.00=39.69 | 不包邮=41.69−(68.23/4.72)=27.23
示例7: 加拿大站 · SpeedPAK直发 · 1kg
采购价: 45 RMB | 实重: 1000g
② 运费: 1.0×133+26.2 = 159.20 RMB
③ 售价: ceil((45+159.20)/0.55/5.35×100)/100 = CAD 69.40
示例8: 法国站 · SpeedPAK直发 · 200g轻小件
采购价: 10 RMB | 实重: 200g
② 运费: 0.2×108+24 = 45.60 RMB
③ 售价: ceil((10+45.60)/0.55/7.85×100)/100 = EUR 12.88
示例9: 意大利站 · SpeedPAK直发 · 1.5kg
采购价: 30 RMB | 实重: 1500g (IT上限2kg)
② 运费: 1.5×108.1+26.8 = 188.95 RMB
③ 售价: ceil((30+188.95)/0.55/7.85×100)/100 = EUR 50.71
示例10: 西班牙站 · SpeedPAK直发 · 300g
采购价: 20 RMB | 实重: 300g
② 运费: 0.3×146+20 = 63.80 RMB
③ 售价: ceil((20+63.80)/0.55/7.85×100)/100 = EUR 19.41

🏷️ 分销定价(参考)

售价 = 成本_RMB / 0.56 / exchange_rate(0.56 = 1 − 24%广告 − 20%利润)

⚠️ 重要注意事项

  • 定价按实际仓库/站点/账号匹配物流渠道:HK→SpeedPAK,海外仓→本地配送,虚拟仓→UBI/中通(云途仅路由备选)
  • IT站点SpeedPAK上限仅2kg,超重禁止刊登
  • AU SpeedPAK实重>3kg 需额外二次收费(体积重=LWH/4000)
  • US SpeedPAK 每单加清关费 10.5元
  • 所有价格向上取整到分(ceil到小数点后2位)
  • 直发到UK/EU → eBay代收VAT → 卖家定不含税价(cost_ratio=0.55)
  • 海外仓发UK/EU → 卖家含税定价(cost_ratio降低,已含VAT)
  • 所有站点有最低售价保护,低于阈值自动上调
🛡️ 屏蔽模板 / 退货策略 / 包邮说明
⚠️ 站点特殊规则 / 重量上限 / 必填项
📊 eBay 导入表格式

固定列(16列)

产品ID | 主SKU | 站点 | 建议售价 | 包装制度 | 长 | 宽 | 高 | 较大单位重量 | 较小单位重量 | 第一类目ID | 第二类目ID | 批量销售数 | 物品状态 | 物品状态描述 | UPC/EAN/ISBN

动态列(物品属性对)

  • 最少 18 对(36列),动态扩展
  • 非英语站点属性名/值翻译为对应语言

重量规则

站点包装制度较大单位较小单位
US / MOTORSEnglishlbs(整数部分)oz(余数)
其他所有Metrickg(整数部分)g(余数)

固定默认值

  • UPC/EAN/ISBN:发布Listing时由刊登模板决定
  • 批量销售数:留空
  • 物品状态:New
🌐 eBay 上架规则 — 账号 · 站点 · 运费模版 · 策略

1. 账号总览 — 简码 · 卖家ID · 账户组 · Token状态

简码eBay 卖家ID账户组Token状态可上架站点
xdxdreamauto2000SL✅ 可用AU (SpeedPAK + 海外仓 + 虚拟仓)
ABauto-bugsSL✅ 可用AU (SpeedPAK + 海外仓 + 虚拟仓)
CLcoolparts4carSL✅ 可用AU (SpeedPAK + 海外仓 + 虚拟仓)
ARareyouYIXIN✅ 可用AU (SpeedPAK + 海外仓 + 虚拟仓)
FSfship80YIXIN✅ 可用AU (SpeedPAK + 海外仓全包邮 + 虚拟仓全包邮)
SATsupeedmotorautoYIXIN✅ 可用AU (SpeedPAK + 海外仓 + 虚拟仓)
TOtbuyop511YIXIN✅ 可用AU (SpeedPAK + 海外仓 + 虚拟仓)
ZEzei9nroYIXIN✅ 可用AU (SpeedPAK)
RAracingautoSL⚠️ 需重授权AU (SpeedPAK + 海外仓全包邮)
ACautocool20SL❌ 无TokenUS, Motors
ASautosuperman2017SL❌ 无TokenUS, Motors
GOsupeedghostSL❌ 无TokenUS, Motors
MCNautocool2000SL❌ 无TokenUS, Motors
XDNxdreamauto2020SL❌ 无TokenCA
AGaussieautogearTR❌ 无TokenAU (海外仓 + 虚拟仓)
BGautobridg-44ABG❌ 无TokenAU (海外仓 + 虚拟仓)
NXDxdream3000YIXIN❌ 无TokenUK
NAP/NORnordautopartsYIXIN❌ 无TokenDE, ES
PADpieceautodistrictYIXIN❌ 无TokenFR
RPAricambiproautoYIXIN❌ 无TokenIT
✅ 可用 = 系统已有有效 OAuth Token,可自动上传。⚠️ 需重授权 = Token 权限不全。❌ 无Token = 需通过通途手动上架或先完成授权。

2. 账号 → 站点映射总表

站点eBay Marketplace ID货币上架账号物流渠道
🇦🇺 澳大利亚EBAY_AUAUDxd, AB, CL, AR, FS, SAT, TO, ZE, RA, BG, AGSpeedPAK / 海外仓 / 虚拟仓(UBI)
🇺🇸 美国EBAY_USUSDAC, AS, GO, MCNSpeedPAK (HK直发)
🏎️ MotorsEBAY_MOTORSUSDAC, AS, GO, MCNSpeedPAK (HK直发)
🇬🇧 英国EBAY_GBGBPNXDSpeedPAK (HK直发)
🇩🇪 德国EBAY_DEEURNAPSpeedPAK (HK直发)
🇫🇷 法国EBAY_FREURPADSpeedPAK (HK直发)
🇮🇹 意大利EBAY_ITEURRPASpeedPAK (HK直发)
🇪🇸 西班牙EBAY_ESEURNORSpeedPAK (HK直发)
🇨🇦 加拿大EBAY_CACADXDNSpeedPAK (HK直发)

3. 澳大利亚站 — 三种物流模式详解

澳大利亚站是最复杂的,同一个账号可能走三种不同物流:

① SpeedPAK 直发(HK → AU)
参与账号AR, FS, SAT, TO, ZE, AB, CL, RA, xd
发货仓库HK 香港仓
国内运费模版澳洲-直发-SL/YIXIN
国际运费模版澳洲-直发-SL/YIXIN
Rate Table无(运费内含在 Shipping Policy 中)
物品所在地Guangzhou, CN 510000(国内花都仓库*)
运费计算SPEEDPAK_DIRECT(按计费重+操作费+附加费)
② 海外仓 本地配送(AU仓 → AU买家)
全包邮账号FS, RA
部分包邮账号AR, SAT, TO, CL, xd, BG, AG
发货仓库海外仓-澳大利亚(实际:万邑通/递四方/橙联等)
国内运费模版澳洲海外仓-ALL
国际运费模版按重量段 → {重量}KG新西兰{包邮类型}-橙联
Rate Table按重量段自动匹配:{重量}KG{包邮类型}-澳洲海外仓
物品所在地New South Wales, AU 2144(澳洲海外仓地址)
运费计算AU_OVERSEAS_WAREHOUSE(重量段运费表+handling+unloading)
全包邮 = Rate Table 名含「全包邮」,国际模版名含「全包邮」
部分包邮 = Rate Table 名含「部分包邮」,国际模版名含「部分包邮」
③ 虚拟仓 直发(HK发 → eBay显示AU地址)
全包邮账号FS, RA
部分包邮账号AR, SAT, TO, CL, xd, BG, AG
UBI/中通专属BG, AG(XEX/TR/ABG账户组)
发货仓库虚拟仓-澳大利亚(实际从HK发,eBay显示AU地址)
国内运费模版澳洲虚拟仓-ALL
国际运费模版
Rate Table按重量段自动匹配:{重量}KG{包邮类型}-直发
物品所在地Sydney, AU 2000(虚拟仓地址)
运费计算AU_VIRTUAL_WAREHOUSE_DIRECT(UBI/中通渠道运费)

4. 海外仓 / 虚拟仓 Rate Table 重量段对照

海外仓 Rate Table 重量段
全包邮 (FS, RA)部分包邮 (其他)国际NZ模版
0-0.5KG全包邮-澳洲海外仓0-0.5KG部分包邮-澳洲海外仓0-0.5KG新西兰{类型}-橙联
0.5-1KG全包邮0.5-1KG部分包邮0.5-1KG新西兰{类型}-橙联
1-2KG全包邮1-2KG部分包邮1-2KG新西兰{类型}-橙联
2-3KG全包邮2-3KG部分包邮2-3KG新西兰{类型}-橙联
3-4KG / 4-5KG3-4KG / 4-5KG同上
5-7KG / 7-10KG5-7KG / 7-10KG同上
10-15KG / 15-20KG10-15KG / 15-20KG同上
20-22KG / 22-25KG20-22KG / 22-25KG无(仅国内)
25-30 / 30-35 / 35-4025-30 / 30-35 / 35-40无(仅国内)
40-45KG / 50-55KG / 80-85KG超大件,仅全包邮账号
虚拟仓 Rate Table 重量段
全包邮 (FS, RA)部分包邮 (其他)UBI/中通 (BG, AG)
0-0.5KG全包邮-直发0-0.5KG部分包邮-直发同部分包邮
0.5-1KG全包邮-直发0.5-1KG部分包邮-直发同部分包邮
1-2KG / 2-3KG1-2KG / 2-3KG同上
3-4KG / 4-5KG3-4KG / 4-5KG同上
5-6KG / 6-7KG / 7-8KG5-6KG / 6-7KG / 7-8KG同上
8-9 / 9-10 / 10-11 / 11-12同上同上
12-13 / 13-14 / 14-15同上同上
15-16 / 16-17 / 17-18同上同上
18-19KG / 19-20KG18-19KG / 19-20KG同上

5. 非澳站点 — SpeedPAK 直发运费模版

站点账号账户组国内运费模版国际运费模版Rate Table
🇺🇸 美国AC, AS, GO, MCNSL美国-直发-SL美国-直发-SL
🏎️ MotorsAC, AS, GO, MCNSLMotors-直发-SLMotors-直发-SL
🇬🇧 英国NXDYIXIN英国-直发-YIXIN英国-直发-YIXIN
🇩🇪 德国NAPYIXIN德国-直发-YIXIN德国-直发-YIXIN
🇫🇷 法国PADYIXIN法国-直发-YIXIN法国-直发-YIXIN
🇮🇹 意大利RPAYIXIN意大利-直发-YIXIN意大利-直发-YIXIN
🇪🇸 西班牙NORYIXIN西班牙-直发-YIXIN西班牙-直发-YIXIN
🇨🇦 加拿大XDNSL加拿大-直发-SL加拿大-直发-SL

6. eBay Business Policies — 必填策略

每个 eBay Listing (Offer) 必须绑定三个 Business Policy,通过 eBay Account API 自动获取:

策略类型eBay 字段名作用获取方式
Fulfillment PolicyfulfillmentPolicyId配送方式、处理时间、运费模版通过 Account API 按站点获取默认策略,或按运费模版名称匹配
Return PolicyreturnPolicyId退货规则(是否接受、退货天数、运费承担)通过 Account API 获取默认退货策略
Payment PolicypaymentPolicyId付款方式(Managed Payments)通过 Account API 获取默认付款策略
策略 ID 由系统通过 eBay Account API (GET /sell/account/v1/fulfillment_policy) 实时获取并缓存。
如果获取失败,需要先在 eBay Seller Hub 中手动创建对应站点的 Business Policy。

7. 上架自检核对清单(13+6项)

上传前检查(13项)
PRE-01账号映射 — 简码→Token账户ID
PRE-02OAuth Token — 有效且未过期
PRE-03物流路由 — 匹配到有效规则
PRE-04Fulfillment Policy — ID 非空
PRE-05Return Policy — ID 非空
PRE-06Payment Policy — ID 非空
PRE-07Rate Table — 海外仓/虚拟仓必须匹配到
PRE-08定价 — 售价 > 0 且 ≥ 最低售价
PRE-09eBay 类目 — categoryId 非空
PRE-10SKU — 格式合规且非空
PRE-11标题 — 非空且 ≤80字符
PRE-12描述 — 非空
PRE-13图片 — 至少1张有效URL
上传后验证(6项)
POST-01Offer 存在 — offerId 非空
POST-02Offer 状态 — status=PUBLISHED, listingId非空
POST-03Marketplace — 与目标站点一致
POST-04Fulfillment Policy — 与预期ID一致
POST-05Return Policy — 与预期ID一致
POST-06Payment Policy — 与预期ID一致
自动修正:POST检查失败时,系统自动下架(withdraw) → 修正参数 → 重新上架,最多重试3次。

8. 物流路由选择逻辑

Step 1: 根据商品重量 + 账号 + 站点 → 从 logistics_routing_rules.json (100条规则) 匹配
Step 2: 优先级:海外仓 > 虚拟仓 > SpeedPAK直发(如果库存在海外仓则优先海外仓发货)
Step 3: 匹配结果确定:Rate Table 名称 · 国内运费模版 · 国际运费模版 · 运费计算器类型
Step 4: Rate Table 名称 → 在 ebay_rate_tables 表中查找对应 rate_table_id
Step 5: 运费模版名称 → 在 ebay_shipping_policies 表中查找对应 fulfillmentPolicyId
Step 6: 组装 Offer Payload → 提交到 eBay Inventory API

9. 上架 API 端点

端点功能区别
POST /api/ebay/direct-publish直接上架仅做基础校验,直接调用 eBay API
POST /api/ebay/validated-publish自检上架13项前检 + 上架 + 6项后验 + 自动下架/重试
请求参数:{"run_id": "...", "account_id": "xd", "sites": ["AU"], "dry_run": false}
dry_run=true 时仅执行前检,不实际调用 eBay API。
🛒 Shopify SEO 三段式

输出格式

SKU $ Title(≤70字符)$ handle(小写+短横线)$ SEO Description(单行≤20词)

Title 规则

  • 来源必须是原文数据改写,≤70 字符
  • 禁止 Replacement / Aftermarket / Premium 等虚化词
  • 必须包含真实参数(车型、年份、引擎代码、尺寸等)

handle 规则

  • 全部小写,仅英文数字和短横线
  • 由 Title 生成,可缩短但不能丢核心关键词

SEO Description 规则

  • 10–20 个英文词,一句话
  • 包含:产品类型 + 关键参数 + 适配重点
  • 禁止虚化词、主观词、营销词
🔍 Amazon 搜索关键字
  • 优先级:OEM号/件号 > 核心产品名 > 车型信息 > Fitment > 材质/功能
  • 逗号分隔,总长 ≤250 字符
  • 禁止:4PCS / 1PC / Set of / for / suitable / compatible / with / premium / high quality / best
📦 ERP 商品资料生成规则
字段规则
productName英文标题 → 翻译成中文
declareCnName中文品名(报关用)
declareEnName英文品名(报关用)
productPackingName中文配货名称
productPackingEnName英文配货名称
categoryCode通途分类编码(自动映射或创建)
productWeight产品净重(g)
packageWeight包装重量(g)
productLength/Width/Height产品尺寸(cm)
packageLength/Width/Height包装尺寸(cm)
imgUrls供应商图+AI图,上限10张
productFeature产品特点:OE号 + 适配描述(不含链接)
productLabelNames特性标签:Listing Forge + 导入表「特性标签」列值(如"澳洲分销"),限定上架站点
suppliers供应商名 + purchaseRemark(采购备注)+ purchaseLink(采购链接,单独写入报价API)
📁 配置文件一览
文件路径用途
config/sites.json站点、汇率、成本系数
config/sale_accounts.json店铺账号、图片组规则、标题组规则
config/sku_category_codes.jsonSKU 类目 → 3/4位编码
config/brand_codes.json品牌 → 2位代码
config/tongtool_category_map.json通途ERP分类映射
config/speedpak_freight_rules.json橙联SpeedPAK运费规则
config/yunexpress_direct_rates_v1.json云途直发运费(路由参考)
config/au_virtual_warehouse_pricing_rules.jsonUBI虚拟仓运费
config/au_overseas_warehouse_weight_deduction.json海外仓重量段扣减
config/logistics_routing_rules_v2026_01_20.json物流路由、渠道、仓库映射
config/prompts/title_rules.txt多语言标题规则
config/prompts/title_group_v2.txt标题词组2差异化规则
config/prompts/item_specifics_rules.mdItem Specifics 生成规则
config/prompts/amazon_bullet_points.txt亮点描述规则
config/prompts/shopify_seo.txtShopify SEO三段式规则
config/prompts/search_keywords_rules.txtAmazon搜索关键字规则
🤖 AI 模型调用规则
📝 文本生成(LLM)
任务优先模型回退模型超时
英文标题 / 描述 / 属性DeepSeek (deepseek-chat)百炼 qwen3.5-plus65s → 15s
Amazon 亮点 / 搜索关键字DeepSeek (deepseek-chat)百炼 qwen3.5-plus65s → 15s
Shopify SEO 三段式DeepSeek (deepseek-chat)百炼 qwen3.5-plus65s → 15s
多语言标题翻译 (DE/FR/ES/IT/PT)DeepSeek (deepseek-chat)百炼 qwen-plus30s → 8s
多语言描述翻译DeepSeek (deepseek-chat)百炼 qwen-plus30s → 8s
Item Specifics 属性浓缩DeepSeek (deepseek-chat)百炼 qwen-plus30s → 8s
平台分类推理DeepSeek (deepseek-chat)百炼 qwen3.5-plus65s → 15s
策略说明:所有文本任务统一 DeepSeek 优先。百炼作为回退,超时很短(15s/8s),保证快速降级。
并行机制:每个 SKU 内部,英文文案生成完成后,5 种语言的标题翻译并行(5线程),5 种语言的描述翻译并行(5线程),两组之间也并行。
属性浓缩:属性名 ≤50字符,属性值 ≤100字符,超限用 AI 语义浓缩(非截断),结果缓存避免重复调用。
👁️ 视觉分析(Vision LLM)
任务模型备注
水印/LOGO检测百炼 qwen-vl-plus返回 CLEAN / DIRTY,超时 60s
图片质量审查百炼 qwen-vl-plus对比供应商原图与 AI 生成图
说明:视觉模型仅百炼支持(qwen-vl-plus 支持图片输入),DeepSeek 不具备视觉能力,无替代回退。
🖼️ 图片生成(AI 图片模型)
图片类型生成方式模型调用链
ZT2 / ZT3
白底主图
rembg 抠图 + 水印清理 ① rembg CPU 抠图(~1s,免费)
② Qwen-VL 检测水印
③ 有水印 → Gemini 3 Pro/Flash (Google 原生SDK) 去水印
④ 仍有 → 即梦 I2I (jimeng_t2i_v40) 去水印
⑤ 仍有 → TextIn I2I (wan2.6-image) 去水印
⑥ 全失败 → 保留当前版本
BG1
场景版式图
AI 场景 + PIL 合成 ① WanX T2I 生成 16:9 场景背景(~4s)
② 失败 → 即梦 T2I(~8s)
③ PIL 合成:上方场景 + 下方产品 + 右下角局部缩略图
BD1 / BD2
角度图
PIL 本地旋转ZT2 → PIL 旋转 ±15°(<0.1s,免费)
BD3 / BD4
角度图
PIL 本地旋转ZT3 → PIL 旋转 ±15°(<0.1s,免费)
XQ1
局部放大图
PIL 中心裁剪ZT2 → PIL 中心 55% 裁剪放大(<0.1s,免费)
并行策略:ZT2 + ZT3 + BG1-场景生成 三路并行 → ZT2 完成后 BD1/BD2/XQ1 并行生成,ZT3 完成后 BD3/BD4 并行生成。
去水印链路:Gemini Pro/Flash(原生SDK) → 即梦 I2I → TextIn(wan2.6-image),逐级回退。
瓶颈:ZT2/ZT3 水印清理是最耗时环节(平均 ~42s/SKU),BG1 场景生成很快(~4s)但与 ZT2 并行不影响总耗时。
📋 模型清单与供应商
模型供应商类型用途
deepseek-chatDeepSeek文本 LLM所有文本生成(主力模型)
qwen3.5-plus阿里云百炼文本 LLM英文文案回退
qwen-plus阿里云百炼文本 LLM翻译回退
qwen-vl-plus阿里云百炼视觉 LLM水印检测、图片质量审查
gemini-3-pro-image / flash-imageGoogle (原生SDK → OpenRouter回退)图片编辑ZT2/ZT3 水印清理首选(Pro→Flash→OpenRouter)
jimeng_t2i_v40火山方舟 (即梦AI)文生图/图生图ZT2/ZT3 水印清理备选、BG1场景回退
wan2.6-image (TextIn)阿里云百炼 WanX图生图ZT2/ZT3 水印清理末选(Gemini+即梦均失败后)
wan2.6-t2i阿里云百炼 WanX文生图BG1 场景背景生成
rembg本地 CPU抠图ZT2/ZT3 背景去除(免费)
⏱️ 单 SKU 耗时参考
阶段平均耗时说明
AI 文案(英文+多语言)~31sDeepSeek 为主,含 5 语言并行翻译
AI 图片(8张)~86s瓶颈在 ZT2/ZT3 水印清理
定价计算~44s8 站点逐站计算
API 商品创建~51s受通途 API 限流影响
API 售卖资料~38s含图片 URL 上传
单 SKU 合计~250s约 4 分 10 秒(核心处理时间)
加上一次性开销(Excel 解析 ~6min + 导出 ~8min + 浏览器导入 ~5min)分摊后,平均每 SKU 约 5 分 23 秒。
对比人工:同样工作(修图、写文案、算价格、填 ERP)人工约 30-60 分钟/SKU。
⚙️ 切仓/改价架构 v2.1 — 四道门防护 · 通途去重继承 · listing_id 贯通 ▼ 点击展开/收起
设计哲学(指挥官 / 会计分离)
:price_adjustment / warehouse_switch 任务既当指挥官,又当会计(自己写 SQL 查成本/重量),账算错。
:任务只当指挥官;算账统一交给底层「报价机」(pricing_facade) 和「路由机」(routing_facade)。
完整文档见 docs/PRICING_ADJ_ARCHITECTURE.md(单一权威源)

🛡️ 四道门防护(所有 new_price > 0 的任务都过门)

顺序门名实现位置触发条件命中动作
1仓库锁pricing_facade._select_best_warehouse_row海外 listing 优先非国内仓行(即使零库存)防止跌入国内成本,输入端稳定
2保底熔断bottom_price.get_sku_bottom_price + adj_auto_executor 预检new_price < bottom × DEFAULT_SAFETY_MARGIN转 pending_review,记 skipped(不算 failed)
3反震荡锁price_checker._anti_oscillation_check24h 内连续相反方向调价跳过本次入队
4方向一致性price_checker._already_in_queue + _pending_warehouse_switch_blocks_price同 SKU 已有切仓任务时拒绝再入调价由切仓任务统一处理(含价)

🔁 通途 auto-relist 应对(双层)

问题:通途每 ~16 天 auto-relist 所有 listing,eBay 上 ~92% 旧 listing 成功 ended,~8% 残留 active 与新 listing 同时在线 → 同 SKU 多 listing 算出不同目标价。

第一层 — 增量同步内置去重继承listing_sync.sync_to_db
  每次 :06-:14 同步后,对同 (sku, account, site) 内:
  • 新行 warehouse=NULL 且旧行非空 → 继承 12 字段(warehouse / handling_time / rate_table_local / rate_table_international / shipping_policy / item_location / item_postal_code / country / shipping_service / intl_shipping_service / shipping_profile_id / pricing_mode)
  • 新 listing_id 更大 → 旧行标记为 ended

第二层 — 每天 01:40 兜底清理cleanup_ended_listings
  • 删除已有 active 兄弟的 ended 行
  • 删除超过 30 天且无 active 兄弟的 ended 行
  • 调用 purge_ended_listings 拒绝队列中针对 ended 的任务(精确路径用 listing_id,模糊路径全 ended 才拒)

🆔 listing_id 贯通链路

price_checker.run 读 listing → _submit(row, listing_id=...)
submit_price_adjustment(row, listing_id=...) 写入 adjustment_queue.listing_id
adj_auto_executor 兄弟去重按 (sku, account, type, listing_id) 粒度(不再误杀同 SKU 多变体)
→ 执行前 _is_listing_ended(item) 精确拦截 ended(节省 API 调用)
→ 成功后 _update_binding_record 回写 sku_warehouse_bindings.listing_id(唯一权威写入方)

📂 文件依赖关系

scheduler.py(中央调度,HOURLY_TASKS / DAILY_TASKS)
├── ebay_listing_sync (×6/天 :06-:14)    → listing_sync.sync_to_db
├── ebay_listing_full_sync (周一 05:00)  → 同上 full=True
├── ended_cleanup (01:40)                → listing_sync.cleanup_ended_listings
├── inventory_check (:15-:20)            → inventory_monitor.check_all_bindings
├── price_check (:17-:22) ★              → price_checker.run
├── listing_auto_approve (:15-:16)       → adjustment_review.auto_approve
└── adj_auto_execute (:05-:55)           → adj_auto_executor.run

price_checker.py
├── pricing_facade.get_target_price / get_sku_full_profile
├── routing_facade.suggest_route
├── bottom_price.get_sku_bottom_price
└── adjustment_review.AdjustmentReviewManager
    ├── submit_price_adjustment(row, listing_id=...) ★
    ├── submit_adjustments(switches)
    └── _upgrade_row_to_warehouse_switch(id, sw)  ← 升级路径也带 listing_id ★

inventory_monitor.py
├── routing_facade.suggest_route
└── adjustment_review.submit_adjustments  ← 仅入队,不写 binding ★

adj_auto_executor.py
├── adjustment_review.purge_ended_listings (前/后各一次)
├── pre_sync_listings (按账号增量)
├── classify_priority (按 site 币种换算 get_exchange_rate) ★
├── bottom_price.get_sku_bottom_price (含价 warehouse_switch 也走) ★
├── _dedup_sibling_queue (按 listing_id 粒度) ★
└── listing_adjuster.revise_item / batch_feed
    └── 成功后 → _update_binding_record → sku_warehouse_bindings

listing_sync.py
├── (步骤1) 通途去重:继承 12 字段(同 site 内)★
├── (步骤2) 标记旧 active 为 ended(同 site 内)★
└── cleanup_ended_listings → adjustment_review.purge_ended_listings

📊 监控指标(建议看板)

指标预期值异常阈值定位日志
通途去重继承条数 / 同步视周期波动> 1000/次[%s] 通途去重
cleanup_ended_listings.expired_cleaned< 200/天> 1000/天scheduler 日志
bottom_fuse skipped< 50/天> 200/天 → 检查保底表[保底熔断-Trading]
切仓阻塞调价命中< 100/天> 500/天 → 检查切仓积压[价格巡检] 已有切仓任务
adjustment_queue pending< 5000> 20000 → 加速模式UI 待调整面板

📝 v2.1 重构清单(2026-04-23)

15 项修改(8 文件 +244 / -85 行,Sonnet review 11/11 通过)
  • Wave 1 — P0 阻塞修复schema.py 补 listing_id 列 · listing_heartbeat 修 NameError · inventory_monitor 移除提前写 binding · ON CONFLICT 仅在新值非空时更新 listing_id
  • Wave 2 — 通途去重继承扩展listing_sync 继承 12 字段 · 去重加 site 维度 · cleanup_ended_listings 返回值改正
  • Wave 3 — 四道门贯通 + listing_id 精确化adjustment_review 全链路写 listing_id · price_checker 调价/切仓互斥 · price_checker ORDER BY 避免抽错 · adj_auto_executor classify_priority 按 site 币种 · bottom_fuse 覆盖含价 warehouse_switch · bottom_fuse 命中算 skipped · 兄弟去重按 listing_id · scheduler price_check 后移到 :17-:22
🏭 切仓规则与 Handling Time 完整说明 ▼ 点击展开/收起

🏪 账号分类:一般账号 vs 虚拟仓账号

类型账号简码海外仓有货 Location海外仓无货 Location直发物流
一般账号fship80FSNew South WalesGuangzhou (CN)SpeedPAK
areyouARNew South WalesGuangzhou (CN)SpeedPAK
supeedmotorautoSATNew South WalesGuangzhou (CN)SpeedPAK
tbuyop511TONew South WalesGuangzhou (CN)SpeedPAK
zei9nroZENew South WalesGuangzhou (CN)SpeedPAK
auto-bugsABNew South WalesGuangzhou (CN)SpeedPAK
coolparts4carCLNew South WalesGuangzhou (CN)SpeedPAK
racingautoRANew South WalesGuangzhou (CN)SpeedPAK
xdreamauto2000XDNew South WalesGuangzhou (CN)SpeedPAK
虚拟仓账号autobridg-44BGNew South WalesSydney (AU)UBI/中通
aussieautogearAGNew South WalesSydney (AU)UBI/中通

虚拟仓账号断货后 Location 显示 Sydney(澳洲地址),实际从花都仓经 UBI/中通发出;一般账号断货后 Location 变为 Guangzhou(暴露国内发货)。

📌 Item Location 与仓库类型对应(判断依据)

Item Location仓库类型实际发货物流渠道
New South Wales海外仓澳洲本地仓库AU Domestic Standard
Sydney虚拟仓花都仓 → UBI/中通 → AUUBI / 中通(Sydney, AU 2000)
Guangzhou国内直发花都仓 → SpeedPAK → AUSpeedPAK

⚠ 判断仓库类型看 Item Location,不看账号名称。虚拟仓账号海外仓有货时行为与一般账号完全一致,Location = New South Wales。

🔀 切仓触发条件

方向触发条件Location 变化
切国内仓该 SKU 在所有澳洲海外仓 ERP 库存 = 0NSW → Sydney(虚拟仓) 或 Guangzhou(一般)
切海外仓该 SKU 在某澳洲海外仓有库存 > 0Sydney/Guangzhou → New South Wales
海外仓 A→B(同类型):只更新内部绑定,不修改 eBay listing

不触发切仓:含仿牌/粉末/颗粒/液体/侵权标签 | 超重超尺寸无法 SpeedPAK 直发 | 虚拟仓断货且 UBI/中通不可达(库存设0,保持在售)

🗂️ 仓库路由优先级

一般账号:
1. 海外仓有库存 → New South Wales(handling=1或3天)
2. 海外仓全无货 → Guangzhou(花都仓有货=2天,无货=平均到货天数
虚拟仓账号(BG/AG):
1. 海外仓有库存 → New South Wales(handling=1或3天)
2. UBI/中通可达 → Sydney(花都仓有货=5天,无货=平均到货+5天
3. 均不可达 → 库存设0,保持在售

⏱️ Handling Time 动态计算规则

Handling time 不是固定值,由系统根据实时库存状态动态计算后匹配对应 Shipping Policy。
仓库类型Location库存状态Handling Time说明
海外仓(橙联/OC)New South Wales有货1 天橙联悉尼仓、OC墨尔本仓
海外仓(万邑通/璟川)New South Wales有货3 天万邑通、璟川
国内直发Guangzhou (CN)花都仓有货1 天SpeedPAK 直发(当天备货发出)
国内直发Guangzhou (CN)花都仓无货平均到货天数兜底 7~9 天;超40天数量改0
虚拟仓Sydney (AU)花都仓有货5 天UBI/中通基础时效
虚拟仓Sydney (AU)花都仓无货平均到货天数 + 5 天等货到花都仓 + UBI基础时效
平均到货天数计算(三级递进):
1. 优先:通途采购入库历史均值 avg(入库日 − 采购日 + 2天客户下单差)
2. 其次:供应商交货周期
3. 兜底:生产 2天 + 国内物流(广东省内 3天 / 省外 5天)+ 仓库处理 2天 = 7~9 天(虚拟仓 +5天 = 12~14 天
eBay 合法值:1/2/3/4/5/6/7/10/15/20/30/40 天,向上贴合;超过 40 天数量改 0

⚙️ 切仓执行逻辑(跨类型才调用 eBay API)

old_type = classify(当前 Item Location) → new_type = classify(目标 Item Location)
cross_type = old_type ≠ new_type → 才执行 ReviseFixedPriceItem(两步操作)
Step 1: 切换 Shipping Policy(handling time 由 Policy 控制)
Step 2: 修改 Country / Location / Price
切仓方向账号类型Item LocationCountryHandling Time物流
海外仓 → 国内虚拟仓 BG/AGNSW → SydneyAU 不变有货 5天 / 无货 到货+5天UBI/中通
海外仓 → 国内一般账号NSW → GuangzhouAU → CN有货 2天 / 无货 平均到货天数SpeedPAK
国内 → 海外仓所有账号Sydney/GZ → New South WalesCN → AU1天(橙联/OC)或 3天(万邑通/璟川)AU本地

📊 自动执行优先级(每小时 :05–:55)

优先级触发条件执行方式
P0 立即止血利润率 < 0%(亏损)或 < 3%(超薄利)立即自动改价,不等人工
P1 高优先切仓任务 / 价格差距 > 30%自动审批,优先执行
P2 常规价格差距 15%~30% / 其他调价自动审批,排队执行
P3 人工dimension_review(缺尺寸数据)保留人工审核,补数据后执行

2小时无人工干预自动批准 | 同 SKU 有切仓任务时,纯改价必须合并进切仓行(禁止单独仅改价)

📦 捆绑商品与多属性商品切仓规则

🔀 方向判定规则(捆绑 + 多属性通用)

核心原则:只要任一子 SKU 在海外仓有库存,整体走海外仓发货。
场景子 SKU 库存分布方向说明
全子海外所有子 SKU 仅海外仓有库存overseas最优情况,海外仓发货
部分子海外部分子海外有库存,部分国内overseas有海外库存即走海外
任一子海外至少一个子 SKU 海外仓有库存overseas同上
混合库存子 SKU 同时在海外+国内有库存overseas海外有就算海外
纯国内所有子 SKU 仅国内仓有库存,无海外domestic无海外库存,只能国内直发
全无库存所有子 SKU 均无库存domestic兜底直发

📋 捆绑商品(Bundle)

  • 数据来源:通途 ERP productType=2 的捆绑商品,缓存于 bundle_cache.json
  • 结构:父 SKU → 多个子 SKU(各有数量),如 A-2X3 = A 的 2 件 × 3 组
  • 库存判断:分别查询每个子 SKU 在海外仓和国内仓的可用库存
  • 拆分建议:子 SKU 有库存但无独立在线刊登 → 建议拆分上架
  • 排除仓库:花都仓(Pro虚拟澳洲仓) 不参与库存判断;海外仓退货仓已作为 AU 海外仓启用

🔗 多属性商品(Variation)

  • 判定:父 SKU 自身无库存,但存在 SKU-N 格式子 SKU 有库存
  • 库存判断:同捆绑商品规则,按子 SKU 各仓库存判定方向
  • 定价:汇总子 SKU 成本和重量,调用 calculate_listing_price 计算建议价
  • 仓库选择:海外方向 → 海外仓-澳大利亚,国内方向 → HK
  • 拆分建议:子 SKU 有库存但无独立刊登 → 建议拆分
🔄 全系统调度总览 — API同步 · 对接通途 · eBay · Ads · Sourcing
最后更新:2026-04-14  |  时区:所有时间为 UTC(北京 = UTC+8,AEST = UTC+10/11) |  API 额度:eBay Trading ~5000次/天 · Inventory 2M/天 · Feed 150批/天 · 通途 QPS≤1 串行

A. Listing Forge 内置调度器(每小时循环)

时间窗口任务API / 数据源频率失败方案备注
:00–:05订单桥接通途 orderQuery每小时下一小时自动重试最高优先级
:05–:15库存全量同步通途 stocksQuery12:00/18:00下次窗口补拉影响切仓判断
:06–:14ERP 商品增量同步通途 goodsQuery01:00/05:00下次窗口补拉夜间窗口
:06–:14售卖资料增量同步通途 listingStoreStatistics02:00/06:00下次窗口补拉夜间窗口
传 updatedDateBegin 真增量
:06–:14eBay Listing 增量同步eBay GetSellerList3次/天
3/11/19h
下次窗口补拉
全量周一05:00兜底
20账号·增量模式
数据共享给Ads
:06–:25通途全量同步通途 (全部)每周一+五 04:00手动触发全量耗时较长
ERP + 售卖资料全量
:10–:12Listing 心跳巡检本地 DB每2小时自动重试74000+ listing 扫描
:15–:20库存监控 → 切仓发现本地 DB每小时下一小时重扫结果写入 adjustment_queue
:15–:16Listing 自动审核本地 DB每小时pending_review超2h自动放行
:17–:22🔍 价格巡检(X 光机)本地 DB每小时下一小时重扫偏差>10% 入队
已后移避开同步窗口
含调价/切仓互斥
01:40 (UTC)已下架 Listing 清理本地 DB每天 1次下一天重试清理 ended 孤儿+拒绝队列任务
cleanup_ended_listings
:05–:55⚡ 自动调整执行(切仓+调价)纯改价→Feed API
切仓→Trading API
每小时
常规 8轮×40条
加速 15轮×80条
API限额→暂停
失败率>50%→暂停
下一小时自动恢复
P0/P1/P2 全自动审批+执行
纯改价走Feed(不耗Trading配额)
兄弟Listing自动同步+去重
积压>500条自动加速
P3 等人工审核
:50–:55自动上架Inventory API (REST)每小时通途失败→日志
eBay失败→重试
含图片URL上传
:55–:58自动绑定本地 DB每小时
:55–:59自动补货 (3件虚拟库存)eBay Trading API10:00/22:00下次窗口重试虚拟仓零库存SKU
:55–:59供应商同步通途 API周六 03:00手动触发
:00–:05📊 每日综合日报本地 DB每天 16:00库存/订单/切仓/改价/
备份/心跳/API预算 合并推送

API 预算分配(每日)

API日限额用途消耗估算
Trading API~5,000/天listing_sync (3次) + 切仓执行 + 自检同步~1,200 + 切仓~2,800
Feed API (REST)150 批次/天纯改价批量提交(每批可含数百条)~10 批/天(释放Trading额度)
Inventory API (REST)2,000,000/天auto_publish 上架极低消耗
Marketing API (REST)独立额度Ads 系统(独立 cron)不走 LF

Listing Forge 独立线程

任务频率API失败方案备注
eBay Token 保活每 30 分钟eBay OAuthAds Token刷新兜底本地缓存校验
eBay 模版同步每 7 天eBay Sell Account手动触发
adjustment_queue 备份每 5 分钟本地 DB → JSON内置,无需cron

B. Listing Forge 外部定时任务(cron)

UTC 时间任务频率失败方案备注
:10 (3/7/11/15/19/23)LF→Ads 数据桥接6次/天Ads 回退到 eBay API 抓取在 eBay 同步后 +4min
导出 74000+ listing JSON
0:00 / 12:00切仓审核报告 → 企微每天 2次手动查DB推送亏损/偏差统计
3:30/9:30/15:30/21:30墨文档质检 → 企微每天 4次手动运行 mowendang_audit.py检查近24h生成任务
18:00数据备份每天手动 backup.sh
18:05Git 自动备份每天手动 push
23:50版本日志生成每天
周一 05:00eBay 全量同步每周手动 sync_ebay_complete.sh full确保数据完整性

C. Ads 广告系统 (ads.slcoolco.net)

UTC 时间任务频率API / 数据源失败方案备注
每30分钟Token 刷新48次/天eBay OAuth@reboot自动补刷统一入口,LF共用
每小时整点分时出价调度器24次/天eBay Ads API下一小时重试PLP/PLG 出价调整
每3小时风险监控8次/天eBay Ads API推送企微告警监控广告花费异常
每6小时eBay 数据同步4次/天订单+广告+报告
active_listings
3次自动重试active_listings 已改为读 LF 桥接
节省 ~600 API调用/天
05:30成本数据桥接 (LF→Ads)每天LF PostgreSQL
erp_products 表
手动运行 enrich_cost_from_lf.py31000+ SKU 成本同步
覆盖率 92%
7:00 / 19:00策略自动执行每天 2次eBay Ads API推送企微报告出价+预算优化
10:00日报 → 企微每天本地数据汇总20:00 AEST 推送
03:00通途重量同步每天LF PostgreSQL手动运行更新体积重数据
每2小时Ads 数据备份12次/天本地
周日 02:00出价学习器每周本地分析手动触发学习历史出价效果
周五 04:00周报生成每周本地汇总
周一 05:00广告审查报告每周Ads API
每月1日 20:00月报生成每月本地汇总

D. CB Sourcing 选品系统 (sourcing.slcoolco.net)

UTC 时间任务频率数据源失败方案备注
每10分钟Supervisor 守护144次/天本地进程管理自动重启任务监控爬虫+推送队列
事件触发1688 商品采集按需1688 API/爬虫进队列等待重试价格/重量/尺寸抓取
事件触发Fitment 匹配按需车型数据库标记待处理OEM→车型适配
事件触发推送到 LF按需LF API标记推送失败重试含采购价/重量/尺寸

E. 系统间数据共享

eBay Listing 数据(单一源头,避免重复 API 调用):
  LF ebay_listing_sync (:06) → live_listings 表 (74000+ 条)
  → export_listings_for_ads.py (:10) → JSON 文件 → Ads raw/ 目录
  → Ads pre_execution_fetch 检测桥接 (<4h) → 跳过 GetSellerList
  → 如桥接过期 → 自动回退到 eBay API 直接抓取

ERP 成本数据(LF → Ads):
  enrich_cost_from_lf.py (每天 05:30) → 从 LF PostgreSQL erp_products 表拉取
  → 更新 Ads 的 sku_weight_map.json(31000+ SKU,覆盖率 92%)

选品数据(Sourcing → LF):
  CB Sourcing 通过 LF API 推送产品(含 OEM、采购价、重量、尺寸、Fitment)
  → LF 自动生成 SKU + 文案 + 图片 + 定价 + 同步通途

F. API 额度预算(每日)

调用方日调用量API说明
LF listing_sync~1200 次eBay GetSellerList6次×20账号
LF adj_auto_execute~960 次eBay ReviseItem最多120条/h × 8h
Ads 订单+广告~800 次eBay Orders/Ads4次×20账号
Ads active_listings~600 次eBay GetSellerList已用桥接替代 → 节省
总计~2960 / 5000安全余量 40%

限流防护 & 失败恢复策略

  • 通途 API:全部串行执行(QPS≤1),夜间 6 个独立窗口间隔 1 小时,避免 524/526 错误
  • eBay Trading API:adj_auto_executor 内置限额检测,触发后暂停当轮并推送企微,下一小时自动续
  • eBay Active Listings:LF 统一抓取 → 导出 JSON → Ads 消费(不再重复调 API)
  • Token 过期:Ads refresh_tokens.py 每 30 分钟刷新(统一入口),LF 内置 keepalive 做本地校验
  • 数据库连接:所有 DB 操作在 try/except 中,失败不阻塞主流程,记录 sync_logs
  • 网络中断:cron 任务自带重试逻辑(max 3 次),supervisor 自动拉起崩溃进程
🛡️ 流水线自愈机制 — 自动检测 · 自动修复 · 人工兜底 ▼ 点击展开/收起
核心原则:能修就修,修不好留给人工,不强行通过。
每次 CB Sourcing 推送或 Web 上传 Excel,系统自动执行"门禁检测 → 自动修复 → 重新检测 → 标记状态"全流程,无需手动触发。

▌ 触发条件(自动,无需手动)

触发方式入口说明
CB Sourcing 推送POST /api/sourcing-import每次选品推送自动执行
Web UI 上传 ExcelPOST /api/run(创建模式)每次上传自动执行
续跑/重跑任务app.py create 续跑每次续跑自动执行

▌ 执行流程

1
文案 → 图片 → 重量预检 → 定价
定价前先扫描 weight_g=0 的 SKU,从数据库三级查补重量,补完立即重算定价
2
OutputQualityGate 门禁检测
对所有必要字段逐一打分:error(阻断)/ warn(提示)
3
run_auto_repair 自动修复(最多 2 轮)
按优先级顺序执行各修复项,修完后重新门禁,直到通过或达到轮数上限
4
回写 review_status
全部通过 → auto_approved(可自动上架);仍有 error → pending_review(等人工)

▌ 必要字段检测标准

字段检测项级别自动修复?
重量 weight_g≤ 0 或缺失error✅ 三级查补(ERP→库存→OE模糊)
成本 purchase_cost_rmb≤ 0 或缺失error❌ 需人工填写
尺寸 L/W/H cm任一 ≤ 0warn✅ 同重量查补,顺带回填
标题 title_en为空error✅ LLM 文案重试(最多1次)
描述 description为空 / < 200字符error / warn✅ LLM 文案重试
类目 category_code无效 / 动态分配编码error✅ AI 类目重推
定价 price_map无可达站点error✅ 补重后重算(依赖重量修复)
AI图片< 3 张成功error✅ 多余供应商图重试AI
占位图含 source=placeholdererror + 阻断❌ 禁止自动上架,需人工替换
ERP同步商品资料/售卖资料失败error✅ 指数退避重试

▌ 图片生成降级策略

rembg 本地抠图 → 白底主图 ZT2(最优,无 API 费用)
② rembg 失败 → WanX I2I + 模型链(AI 去背景,5次重试)
③ 全部 AI 失败 → 供应商第 3/4/5 张多余图重新走 AI(不用第1/2张原图)
④ 供应商图也全失败 → Pillow 白底文字占位图(标记 ⚠️占位图,阻断上架)
规则:不直接使用供应商原图作为刊登主图,原图仅作为 AI 处理的输入参考。

▌ 重量三级查补策略

优先级数据源匹配方式同时补充
1erp_products 表SKU 精确匹配length/width/height_cm
2inventory_stocks 表goods_sku 精确匹配
3erp_products 表OE 号模糊匹配(LIKE)
三级均无数据 → 标记 pending_review,等人工填写

▌ 最终状态说明

状态含义后续动作
auto_approved 门禁全通过,所有必要字段齐全 可直接触发自动上架
pending_review 仍有 error 字段未修复(重量/成本/占位图等) 在任务管理 → 待审核 中人工补充后放行
💡 人工补充完字段后,在任务管理页面点「重新检测」可重新触发门禁,通过后自动更新为 auto_approved。
版本日志
加载中...
📤 上传处理
📁
拖拽或 点击选择
.xlsx / .xls / .csv
📥 下载模板
🤖 墨文档 AI 用自然语言告诉我你想做什么
👋 你好!我是墨文档 AI,你可以这样使用:

📦 新任务(上传 Excel 后)
「帮我试写文案和生成图片」
「完整流程全部生成并导入通途」

🔍 上架检查(随时可用)
「检查上架情况」
「给我今天的上架汇总报告」

🔄 修改 & 重新上架
「SKU编号 帮我重新生成文案和图片」
「上周失败的任务帮我重新跑一遍」
「把所有澳洲分销的水泵重新生成图片」
⚡ 快捷模式
👁️
快速预览
导入 + SKU + 定价(不写ERP)
创建模式
导入 + SKU + 文案 + 图片 + 写入ERP
📦
创建+API
文案 + 图片 + ERP API 同步(手动下载表格导入通途)
🚀
一站式
全部自动:文案 + 图片 + ERP + 浏览器导入通途
🔄
修改模式
对当前任务的 SKU 重新生成图片/文案 + 自动同步
⚙️ 手动自定义模式(高级)
📋 运行模式
👁️
预览
不写入ERP
创建
写入ERP
📝 AI 文案
⏭️
不生成
跳过文案
🔍
试写
抽样2-3个
📝
批量
全部生成
🎨 AI 图片
⏭️
不生成
跳过图片
🔍
试生成
前3个SKU
🎨
批量
全部生成
🌐 通途导入方式
⏭️
不导入
仅生成Excel
📥
API同步
商品+售卖资料API写入,表格手动导入
🤖
全自动
API + 浏览器自动导入
准备中... 0%
⚡ 自动调整执行进度
等待中... 0%
✅ 成功: 0 ❌ 失败: 0