阶段 6 · PO 单制作与校验
把需求表和供应商报价转成供应商可直接执行、财务可直接付款、系统可直接导入的采购订单。PO 出错直接等于资金损失,所以本阶段的校验比生成更重要。
完整字段字典与校验规则见 references/po-creation.md。
输入
- 需求侧:选品/补货需求表(SKU、数量、目标仓、期望到仓日、优先级)。
- 供应商侧:报价表(单价、阶梯价、MOQ、交期、币种、贸易条款 EXW/FOB/CIF/DDP、是否含税、包装要求)。
- 商务侧:付款条件(如 T/T 30%+70%)、验货方式、贴标与包装要求、认证要求。
- 约束侧:采购预算上限(
--max-amount)、审批阈值、汇率与锁汇日期。
怎么跑
python3 scripts/po_build.py sourcing.csv --supplier "供应商A" --currency USD \
--order-date 2026-09-14 --lead-time 30 --max-amount 20000 --trade-term FOB \
--payment-term "T/T 30%+70%" --arrive-by 2026-11-15 \
--out PO.csv --out-xlsx PO.xlsx --out-json PO.json
--out-xlsx 一次给三张工作表:PO 明细 / 订单信息 / 隔离行。
校验清单
必填缺失(缺单价不可下单,直接隔离)、数量或单价非法、同 SKU + 同规格重复行、MOQ 不足、阶梯价跨档(拆单更便宜时给对比)、单位混用(件/箱/托)、币种不一致、含税口径不明、行金额合计与表头或需求表不一致、总额超审批阈值、交期晚于期望到仓日、新供应商首单。
风险与人工边界
| 等级 | 本阶段场景 | AI 权限 | 人工权限 |
|---|---|---|---|
| 高 | 金额不符、币种不一致、缺单价、超审批阈值、新供应商首单 | 只出校验结果 + 待办 | 资金终审并下单付款 |
| 中 | MOQ 不足、阶梯价跨档、单位不一致、含税口径不明、交期偏紧 | 出结论 + 建议 | 与供应商确认 |
| 低 | 明细排版、编号生成、合计复核、表头信息填充 | 直接执行 | 事后抽查 |
不自动下单、不自动付款。 只生成 PO 与校验结果,提交供应商与付款由人工执行。
常见坑
- 单位混用(箱/件)导致数量差几十倍,是最高频的金额错误来源。
- 报价含税与否没写清,付款时才暴露。
- 交期从下单日算还是从付款日算,不同供应商口径不同,
etd必须写明依据。 - 同一 SKU 出现在多张需求表里,合并前先查已下未到货的 PO,避免重复下单。
- 认证与标签要求没写进 PO,货到仓被拒收或平台下架,返工成本远高于采购差价。
输出契约
与其他跨境电商技能共用同一个 JSON 信封,便于跨阶段串联、工单回写与事后追责:
{
"task": "po_build",
"status": "ok | partial | blocked",
"confidence": 0.0,
"data": {},
"flags": [{ "level": "high | medium | low", "type": "", "detail": "", "action": "" }],
"need_human_review": false,
"sources": [{ "ref": "", "as_of": "" }],
"assumptions": [],
"audit": { "snapshot_at": "" }
}
status:ok输入齐全 /partial有缺失但结论可用 /blocked关键输入缺失、必须人工先介入。- 只要出现
high级 flag,need_human_review必须为true。 confidence口径:有high不超过 0.7,有medium不超过 0.85,还有待填位不超过 0.9,上限 0.95。
交付表格
要表格就给文件,不要只给结论。 逐行测算、对照、明细类交付必须落到能直接打开的文件:
| 参数 | 产物 | 说明 |
|---|---|---|
--out |
CSV 主表 | UTF-8 BOM,Excel 双击打开中文不乱码 |
--out-xlsx |
Excel 工作簿 | 多工作表、表头加粗并冻结首行、列宽自适应;数字写成数值,打开即可求和与做透视 |
--out-md |
Markdown 报告 | 给人读的结论版 |
--quarantine |
问题清单 CSV | 被拦下的素材/行,不静默丢弃 |
--out-json |
JSON 信封 | 给下游脚本、工单系统读 |
.xlsx 由 scripts/sheetio.py 用标准库写出,不需要 openpyxl,Excel 与 WPS 都能直接打开;同一个工具也用来读 .xlsx(--sheet 支持工作表名)。
作业习惯
- 先要数据再下结论;能算就不要估,能引用就不要复述。
- 结论固定附「支撑数据 + 判定规则 + 边界/反例」三段,而不是只给一个数。
flags比结论更重要:写清「我不确定什么、为什么不确认、需要谁确认」。- 术语保留英文缩写(ROAS、ACOS、TACOS、PO、MOQ、FBA),其余用中文。
上下游
- 上游:
ecom-selection-profit定下要下的 SKU 与数量。 - 下游:到仓与库存数据回流到
ecom-roi-review的成本口径。 - 总控与共享约定见
crossborder-ecom-ops。