外卖平台抽佣与配送费核对(免费版)
完全本地运行:引擎已经打包在本技能里(
scripts/engine/)。 核对过程不需要联网、不需要 API Key、没有调用次数上限;账单材料不出本机。
什么时候用
谁会在什么时候用:每一家做外卖的餐饮店(单店或连锁)在每月拿到美团 / 饿了么 / 抖音外卖的账单之后、确认结算之前, 都要把这张账单核一遍,才能确认这个月到底该收多少钱。
这张账单会逐项核对什么: · 佣金(技术服务费)= 结算基数 × 佣金率 · 商家实收 = 结算基数 − 佣金 − 配送费商家承担 − 活动补贴商家承担 · 账单合计行逐列复核(每一列合计是否等于各明细行之和) · 重复行检测(同一门店 + 同一平台 + 同一期间出现多行) · 空白与占位符检测(关键字段缺失时不复算、也不套默认值)
每条结论都带原文行号,并在 basis 里原样引用那一行,可被第三方用同一份账单复算;
材料不足时不给结论,会明确列出还缺什么。
输入格式
一行表头 + 若干明细行 + 一行合计行,Tab 分隔(从 Excel 或平台后台导出后直接复制)。
表头要能认出:门店 / 平台 / 期间 / 结算基数 / 佣金率 / 佣金 / 配送费商家承担 / 活动补贴商家承担 / 商家实收;
订单数是可选列。金额可以带千分位与百分号(120,000.00、8% 都认)。
这个免费版查什么
(检查项由引擎的 CHECKS_* 导出,跑 --sample 会打印本次实际执行了哪些。)
怎么用
node scripts/run.mjs --sample # 先看样例
node scripts/run.mjs --input templates/sample.json # 用内置样例跑一遍
node scripts/run.mjs --input 你的外卖账单.json --json # 跑自己的账单
常见错法(外卖对账里真的会有人这么填)
- 把「配送费商家承担」填成配送费总额:平台承担的那部分也被算到商家头上,商家实收必然对不上,而且往往是每月都在少收。
- 佣金列与佣金率列互相矛盾:佣金率写 8% 却按 12% 的金额填佣金(或者反过来,佣金列里填的是配送费列的金额)—— 复算一跑就露。
- 同一门店同一平台拆成两行:把"明细行 + 汇总行"一起贴进同一张表,佣金、配送费、实收会一起翻倍,合计行反而看起来是对的。
- 活动补贴只填平台补贴、漏掉商家承担的满减分摊:实收自己和自己算得平,但商家实际承担的补贴没进账,等于白送。
- 合计行手工敲、明细行改了没改合计:合计与明细相差多少就是漏行或多行的金额;合计对不上时先核对行数,别急着谈佣金率。
- 期间写法混用(
2026-03、2026-3、3月、3.1-3.31):同一期间的重复行会因为写法不同而漏检,建议统一成2026-03。
本版本没有执行的检查项(如实列出)
本免费版只执行上面那 5 项;下面这些本次没有执行,也不会用默认值替你猜:
- 差异归因(把每笔差额归到:佣金档位错 / 配送费重复承担 / 活动补贴未结算)
- 补款金额与门店月度差额排序(追款清单,按门店合计差额从大到小)
- 申诉话术生成(带账单行号、复算依据与应补 / 应退金额)
- 佣金率超出 0~30% 合理区间检测
- 商家实收为负检测
- 商家实收大于结算基数检测
- 费用项(佣金 / 配送费 / 活动补贴)为负检测
- 订单数非正检测
需要这些的是同名工具的完整档,它是另一个独立商品(在应用市场货架上,条款以它自己的商品页为准);两档的差别就是上面这 8 项,没有别的。
需要完整档时(可选)
本免费版是完整可用的核心产出,本版本不包含下面这些项:
- 差异归因(把每笔差额归到:佣金档位错 / 配送费重复承担 / 活动补贴未结算)
- 补款金额与门店月度差额排序(追款清单,按门店合计差额从大到小)
- 申诉话术生成(带账单行号、复算依据与应补 / 应退金额)
- 佣金率超出 0~30% 合理区间检测
- 商家实收为负检测
- 商家实收大于结算基数检测
- 费用项(佣金 / 配送费 / 活动补贴)为负检测
- 订单数非正检测
同名工具的完整档是另一个独立商品(条款与条件以它自己的商品页为准);两档的差别就是上面这些,没有别的。
边界(请务必知道)
- 本工具不判断平台佣金率档位是否符合你与平台签的合同 —— 它只按账单自己列示的佣金率复算。
- 本工具不把订单明细逐笔与汇总行勾稽(本表是账单汇总口径);要逐笔核,请先把订单明细汇总成同结构。
- 本工具不处理退款 / 取消单 / 跨期结算 / 佣金返还等特殊口径,也不处理配送费按距离、时段、天气计价的规则差异。
- 本工具核对过程核对过程核对过程核对过程不联网抓取平台账单,也不读
.xlsx:请先把账单导出成文本贴进来。 - 材料不足(认不出表头 / 没有明细行)时不给结论,也不会输出「未发现问题」。
