更新
同一件事只发一次,别重复点;发完下面会出回执。
发送
台账覆盖
自动抓取
口径 数据源是本地台账(不是每次现拉 24 小时):官方列表窗口 ≤24 小时,滑过去就再也拉不到那一单 ⇒ 必须自己落盘。
品退口径 :未发货申请退款、已发货未揽收撕单不算品退 ;撕单平台不暴露揽收节点,按"已发货(后取消)+仅退款"给候选,需人工确认。
结论来源 规则引擎给出(可解释、可审计、零成本),不由大模型决定;申诉材料需人工复核后提交。
全部 只看算品退 只看不算品退 只看撕单候选
全部 只看待处理 只看已完成
待人工介入(自动巡检出的活)
状态
未收摊(待处理+已认领)
只看待处理
只看已认领
只看已收摊
全部
动作
全部
需人工介入
协商并跟进
未加载
刷新待办
跑一轮巡检
走 hack 通道(官方无此接口)。信用分与处罚单直接来自后台;申诉材料由规则引擎生成,**提交需人工**(提交接口名是运行时拼装的,未拿到)
未加载
一站式投诉申诉:① 收集 (候选池,按体验分三维度归类)→ ② 分析 (订单 / 售后 / 轨迹 / 平台口径 / 责任归属)→
③ 生成 (投诉说明草稿 + 证据清单)→ ④ 人工核验后提交 。默认 dry-run ,真发需 DRY_RUN=0 且店铺在白名单。
⚠️ 先看下面这张矩阵再动手 :26 个计分键里只有一部分有申诉通道,其余的要「找承运商」或「改操作」——写申诉稿是白写,还占当日额度。
完整清单见 docs/申诉通道清单.md;命令行查:--appealable(能)/ --none(不能)。
窗口 7 天 30 天 60 天
刷新候选池
未加载
额度:—
处置分类 · 26 个计分键该怎么处理(按"能不能办"分桶,不按维度排)
⚡ 待人工核验队列(点矩阵里的「⚡ 去清候选池」生成)
还没有待核验的材料 —— 点上方「⚡ 去清候选池」,机器会把能代办的那几条跑完并生成材料,停在这里等你核验
公开佣金 =「全部带货者」计划(type 100);定向佣金 =「指定带货者」计划(type 300)。
调佣是**对外生效**的动作,默认走 dry-run 闸门;公开调佣需 owner。
商品数
未加载
佣金总表
商品
公开佣金
定向佣金
推送达人
上橱窗
合作
月销
状态
上橱窗二维码
商品详情(点上方任一行(内容在右侧卡片里,列表不再就地展开) )
达人侧的 KPI 是 发出去 → 上橱窗 → 出单 ,不是"发了多少人"。三条口径先记住:
① 橱窗只有本店合作达人才读得到 ⇒ 上橱窗率的分母是可读人数 ,不是发送总数;
② 出单达人里有一部分从没被推送过 (自然带货)—— 别漏算,也别算成推送的功劳;
③ 读不到橱窗 ≠ 没上橱窗,界面上一律写「读不到」。
刷新橱窗
未加载
出单达人榜 全部出单的人(含没被推送过的)—— 榜上「没发过」的那些,就是今天该补发定向的人
已上橱窗但还没出单 最该跟进的一批:货已经挂上了,只差一单
一行一个商品,行内是这条商品的完整链路 :平台实况 / 本地意图 / 实际产出 三行并排,
不一致的地方直接标出来。校验结论在最上面 —— 先看「哪些要处理」,再展开看「为什么」。
毛利假设 %
保本线 —
重新读取
未加载
点「启动」由中台 spawn 子进程(stdout 直接进卡片里的日志框),「停止」结束整个进程树;命令与参数在 config/jobs.json。
外部前置条件:没有了 —— 不用开微信小店助手客户端、也不用带 --remote-debugging-port;
唯一前提是登录态还有效(过期就跑 node hack/login.mjs 重扫)。
任务总控台
推送配置配商品 · 配人群 · 一键启动 · 看日志
未加载
看日志
手动定向 · 视频号 未预演
填视频号达人 ID (talent_appid 全串,多个用逗号/空格分隔)→ ① 预演核对清单 → ② 确认真发。
商品与佣金 = 推送配置「达人定向」渠道口径(与双端推送一致),改清单去推送配置页。
① 预演
② 确认发送
手动定向 · 抖音 未预演
填抖店达人 uid (纯数字,多个用逗号分隔)→ ① 预演核对清单 → ② 确认真发。
商品与佣金 = 抖店推送清单口径。发送要开浏览器会话,约 30-60 秒,别关页面。
① 预演
② 确认发送
每张渠道卡 = 上段配参数 + 下段直接跑 :
· 上段 :这条线推哪些商品、多少佣金、什么口径/文案 —— 决定"给谁推什么"。
· 下段 :启动 / 停止 / 看日志 + 运行状态 + 命令预览 (点开看实际会执行的那条命令)。
· 下段的命令跟着上段配置走 :改了商品/佣金/口径/文案,命令会自己重算(会先标"命令待刷新")。
带 ⚡ 会对外发送 的才算真发;没有这个标记的是预演/只读。
· 想一眼看全部 6 个任务:切到上面的「任务总控台」。
商品
刷新额度
拉取真实商品
货架 线上真实清单 · 联盟商品优先(只有联盟商品能设定向佣金)
人群范围
这个商品要推给哪些达人?
未预演
为什么需要这一步 :定向接口只要达人的 ID,不需要联系方式 —— 所以「有没有取到号」不是能不能推的前提。
真正的问题是先推哪一批 :库里有 191.6 万达人,单商品定向上限 1 万 (2026-09-28 实测撞过上限),
达人生鲜相关的约 13.3 万,有橱窗的约 7.6 万 ⇒ 池子是上限的 3~7 倍,选谁比能选多少更重要 。
和上面「达人定向」卡有什么不同 :上面那张卡的「启动」是跑老脚本 (按平台侧已有的池子批量下计划);
这里是你自己圈人 —— 先「预演」看圈到多少人 → 「锁定名单并发」把名单固定下来 再发,
发的就是你现在看到的这批人 。两者都是发定向佣金,但只有这里能保证"圈谁就发谁" 。
口径
A 精准
B 规模
C 全量
排除已推过的人
本次推送量由商品额度决定
① 预演(只读,不发送)
② 锁定名单并发
公开佣金是定向佣金的前提 :商品没设公开佣金(没加入联盟/没上架推广),后面设多少定向佣金都推不动。
两平台接口不同、门槛不同 ,本页按当前店铺的平台自动切换:
微信小店 已加入联盟 → 改比例(item/upd)、未加入 → 先建公开计划(item/batchadd),自动分流不用选;
抖店 需体验分 ≥72 且 商品分 ≥70 ,门槛没到时平台没有可投放入口 ⇒ 本页禁用发布 并写清差几分。
平台
微信小店
抖店
读取商品数
刷新
未加载
在售商品 · 准入状态
公开佣金直接在表格里改 (改过的行会变色);改完点预演 看结果,确认后才发布。公开佣金建议不低于 5%(低于此值达人接单意愿明显下降)。
改法:直接在上表的「公开佣金」格里改 → 预演 → 确认发布。不用先勾选。
未勾选(将发全部 0 个改动过的)
第①步 · 预演
第①步 · 确认发布
在上表「公开佣金」格里改好比例,再点「预演」看会改成什么(预演不真发)
⚠ 保存 ≠ 生效 :这一页保存的是
本地配置 ,不会发到平台、达人看不到任何变化 ——
真正生效要等你在「达人推送」里真的推一次。
两个平台各存各的 ,改一个不会动另一个。
改这里会同时改变谁 (这份配置不止本页在读):
· 「推送配置」页 的「达人定向」那条线 → 会发哪些商品卡
· 「达人推送 / 机构推送(抖店叫团长报名)」页 的商品候选与参数字段
· 三张长跑任务卡 下次启动 时的商品清单:达人定向 / 机构邀请 / 商务会话首触
★ 只写本地配置文件,不会发到平台 ;正在跑的进程要「停止 → 启动」才认新配置。
微信小店
读取
未加载
对象类型
达人
机构
每页
10 20
50 100
未改动
保存(写本地配置)
参数表是空的 — 先点「读取」,再从上方货架点「+ 加到参数表」(约 5~10 秒)
抖店
读取
未加载
对象类型
达人
团长
每页
10 20
50 100
未改动
保存(写本地配置)
参数表是空的 — 抖店走浏览器通道,点「读取」约 30~90 秒后从货架加进来
同步商品与券
刷新券
未加载
全部(已排除下架)
只在售
同步订单
销量 · 近 7 天
销量 · 近 30 天
销量 · 近 90 天
销量 · 近 180 天
销量 · 近 1 年
全部商品
只看有折扣
只看标价=到手价
只看价格未接
只看已挂关怀
只看未挂关怀
商品
状态
标价
到手价(券后)
差
券
关怀
规格 / 库存
已售
新建话术
刷新
未加载
说什么在这一页,挂给谁在「商品管理」页 —— 这里只起草 / 改内容 / 设生效期,适用范围只读 (点商品名跳过去改)。
话术按触发时机 (发货时 / 签收后 / 出现售后时)分类,并记下为什么这么写 。
本期只配置 + 预览,不发消息 。
新建话术
长期有效
正文必填
可用变量(点一下插到光标处):{{买家昵称}}{{商品名}}{{店铺名}}{{快递公司}}{{单号}}{{预计到达}}{{发货时间}}
适用范围只读:挂 / 摘 / 批量挂一律到「商品管理」页(★ 2026-10-14 收窄:关联只许一处改)
本库没有「全店通用」 :一个商品都不关联 ⇒ 这条话术不会生效 (宁可少发,也绝不误发给全店)。保存时下面这份关联会原样保留 ,不会因为这里不能勾选而被清空。
保存
预览发出去的样子
取消
刷新
未加载
券不随商品接口(product/get)下发 ,是独立域 ⇒ 这里全部实时 从券接口拉取(微信走 /channels/ec/coupon/* + 商家后台券接口,抖店走券中心),不读本地文件。
适用商品(挂载)由平台侧 决定,本页只读不改 —— 要看某个商品能用哪些券,去「商品管理」展开那一行。
默认只显示"在用"的券 (生效中 + 未开始);已作废/已结束默认收起并报出张数 (不是"没有",点「只看已结束/已作废」看明细)。
参与不参与到手价只看一个判据:「计入到手价」 (src/capability/coupon-live.mjs);
平台营销券(会员/收藏/回购/评价抽券)限特定人群,永远不计入 。
筛选:
在用(生效中+未开始)
全部(含已作废)
只看计入到手价
只看全店通用
只看平台营销券
只看已结束/已作废
⏳ 到期优先
刷新
未加载
全部平台
微信小店
抖店
全部动作
公开佣金
达人定向
可推性预筛
机构邀约
团长活动报名
全部结果
仅成功
仅失败
仅已筛除(预筛不可推)
仅未发(预演)
一张表看全两平台的推送历史 :时间|平台|商品|对象|佣金|结果|平台原话。
之前回执散在几个文件里(抖店push/douyin/<店>/*.jsonl、微信kf-*.jsonl),
各写各的字段 ⇒ 没人查得到"这个人上周推过没"。现在统一记在一份台账里(只增不改 )。
★ 「未发」不等于「失败」 :预演和可推性预筛都记成"未发" —— 它们本来就物理上发不出去,
混进失败里会让失败率虚高、也掩盖了"扫过但没推"这批信息。
★ 抖店那 300 条预筛记录(2026-10-04 实测 300/300 不可推,原话「达人没有电商权限」)可一键导入,重复点不会导两遍 。
推送回执 —
上一页
第 1 页
下一页
导入抖店预筛记录
抖店
微信小店
读取
未加载
台账 —
这页怎么用(四步 · 预演为什么是物理安全的 · 单次上限从哪来)点开看
四步走完一次达人定向 :① 勾商品(自动带出②已配的达人佣金)→ ② 选人(达人库勾 / 手填 ID / 复用上次名单)
→ ③ 预演(看每人一条载荷 + 可推性预筛结果)→ ④ 确认发(回执自动进「推送记录」)。
★ 预演是物理安全的 :它走强制只读模式,请求根本不会离开本机 —— 不是"应该不会发",是发不出去。
★ 改任何目标(商品或达人)都会立刻作废旧预演 :预演是针对某一组目标的快照,
拿着旧预演去发新目标,等于没看载荷就发出去。
★ 单次上限 按剩余额度 人(该数来自平台额度 :按[店铺档位 × 达人等级档],每周一 0 点重置,会随已发数量变化 —— 不是固定值 ):
★ 两平台能力差异如实标注:抖店有可推性预筛 (平台逐人回原因);微信的批量接口只返回结果、没有只读体检通道 ,所以微信侧不做预筛 —— 不给不存在的按钮。
微信小店
抖店
读取
未加载
台账 —
这页怎么用(四步 · 两平台对象不同 · 预演为什么不写平台)点开看
四步走完一次机构推送 :① 勾商品(自动带出②已配的机构服务费与分配方式)→ ② 选对象 → ③ 预演 → ④ 确认发(回执进「推送记录」)。
★ 两平台的对象根本不同 ,别当成同一件事的两套皮肤:
微信 = 把商品分配给机构 (要机构已合作才生效,佣金由我们定或由机构定);
抖店 = 报名团长招商活动 (商品是活动给定的、不是我们挑的,只报费率)。
★ 预演不写平台任何东西 。微信侧是纯拼载荷(请求不离开本机);抖店侧要读一次活动商品 (只读 GET,为的是拿到活动内的 product_promotion_id 与平台给出的「活动×商品」准入判据)——读不等于写 ,预演永远不会改变平台上的任何状态。
★ 「没读成功」和「没有商品」必须分开看 :前者是登录态/限流,重试即可;后者才是真的没得报。
★ 改任何目标(商品或对象)立刻作废旧预演 ;单次上限 50 。
★ 「分配方式」决定达人佣金能不能填 :选「机构指定」时达人佣金恒为 0(平台口径,接口也恒传 0)。
这不是我们让它归 0,是**平台这么要求** —— 在②里填了非 0 会在这里被直接拦下,不静默改。
手动定向
这页怎么用(四步 + 每列状态灯的含义)点开看
点名式的定向 :不用等长跑任务捞名单 —— 手上有人就有人的链接、有名字就有名字,粘进来直接发。
微信小店与抖店各是一个 Tab ,各自五步(通道 / 模板 / 粘对象 / 发送 / 复制给达人),互不干扰;
Tab 上带状态 (已发送 N / 待核对 N / 未开始)—— 切到另一边也看得见那一列还剩什么事没做完,
切回来时你粘的对象、选的模板、刚发的回执**原样都在**(切走只是把它收起来,不是清掉)。
依赖是一条链:① 定向通道 (走哪条链路)决定口径与识别规则 ⇒ ② 定向商品模板 (这条通道下发什么货)
依赖 ①(通道决定模板里哪个方案在用);③ 粘对象依赖 ① (通道决定认什么)。
③ 里不再有"预演"这一步 —— 粘进去就自动认出「本次要发什么」(右栏那张清单,含每条能不能发),
点「④ 发送」就发。清单或平台状态变了会自动重核,改动后不需要你再点一次预演。
⑤ 定向内容(一键复制) :发送成功后,这里生成那段可以直接粘给对方的话(一个人一份,带他自己的 ID/昵称)。
只对「定向达人」与「机构定向」有内容 —— 「定向团长」的对象是团长的招商活动(报名用),
不是能收消息的人,那一块会直接说明。
每步左上角的圆点就是它的状态:✓ 完成 ·
● 现在做这个 · ○ 还没轮到。
微信
微信小店
读取中…
○ ④ 发送与回执
还没有可发的清单
上面粘一段对象 —— 认出「本次要发什么」之后,这里出现逐条回执。
抖店
抖店
读取中…
○ ④ 发送与回执
还没有可发的清单
上面粘一段对象 —— 认出「本次要发什么」之后,这里出现逐条回执。
这五条通道分别是什么?为什么要先配模板?
它们不是同一件事的五种说法 —— 平台不同、接口不同、连"发的是什么"都不一样:
通道 归属 对象是什么 粘什么 实际发生的动作
抖店 定向达人 单平台 精选联盟达人 达人 UID(纯数字) 建定向佣金策略 strategy/create,带商品 × 佣金
抖店 定向团长 单平台 团长发起的招商活动 活动报名链接 / 活动 ID 商家报名 该活动(activity/apply)—— 商品与费率取自活动,不由我们挑
微信 定向达人 单平台 视频号带货者 昵称 / 视频号ID / 带货者ID 建定向佣金计划 item/batchadd(type 300)
微信 机构定向 单平台 服务商机构 机构名 按平台实时状态自动分叉 :不在名单 → 发合作邀请(载荷只有机构名);status=2 已合作 → 分配商品 item/headsupplier/batchadd(带佣金与服务费)
★ 「机构定向」为什么是一条通道,而不是「邀约机构」+「定向机构」两条 :
邀请和分配本来是同一件事的两个阶段 —— 邀请 → 机构同意 → 分配。
分成两条,用户就得自己判断该点哪个;而判错的代价是「对没合作的机构发分配」——
平台**静默无效**,发完了才发现没人带货。现在由**平台实时状态**决定这一步做什么,
认人结果每行都写着「未合作 · 可发邀请」或「已合作 · 可分配商品」,
「邀请中 / 等机构批准」这些没有可发东西的阶段也会**明说**,不假装能发。
★ 机构还有第三层:商品发了 ≠ 生效 。分配完成后机构还要在后台**批准**这些商品
(名下商品状态全为 1 才算生效,老项目 tools/agency-tick.mjs 的注释记着一次实测事故:
「有家机构后来批了、系统完全不知道」)。这一段**没有自动动作**,只能等机构点批准。
★ 名单读不到时一个都不发 :判断不了这家有没有合作过就发,等于制造重复邀请
(平台会回 12818004 / 12818005)。老代码 hack/agency-invite-watch.mjs 的原话是
「🔴 此时最危险:名单读不到 ⇒ 排重失效 ⇒ 可能重复邀请」。
★ 为什么先配模板 :定向的载荷永远是「商品 × 费率 × 对象」三件事。对象是易变的(今天这批人、明天那批),
商品与费率是稳定的 —— 把稳定的部分存成模板,变的部分每次现填。这样"这次发什么"永远说得清,且不会误改到长跑任务在用的参数。
★ 模板不跨平台 :左右两列各选各的模板(商品的 id 与费率在两个平台上是两回事,混用等于发错平台)。
两列各自带自己的模板编辑器、预演回执与"最近发过",一列读完即闭环。
刷新
校验名单
一键修正微信号
未加载
微信库 —
这一页就是群成员名单本身 —— 一个群里最后站着的每一个人,都在这里:
内部人员 (我方同事)+ 达人 一起 建群。
★★ 内部人员必须显式配置 :一个一个从微信真实名单里选出来写死在这里;
不配就不建群 (规则写死:至少 1 位内部人员 + 达人,缺人不能硬建)。
★ 同事的微信号在群里对达人可见 ⇒ 用工作号 、本人知情。
改名单不会建群 :建群是真动作,另有闸门。
★★ 微信号不许手填 —— 一律从微信真实通讯录里选 。
手输错一个字符,建群时要么搜不到人,要么搜到同名的陌生人 把 TA 拉进达人群。
下面的输入框是搜索框 (输昵称/备注/微信号任意片段)⇒ 点候选 ⇒ 自动存微信的稳键 。
名单每条后面有徽章:✓稳键 = 已对上真人;
⚠要修 = 认得出但存的值不是稳键;
✗查无 = 通讯录里没有(多半是还没通过好友)。
达人 手工预置;流程自动带入的也会写进这里
未选人 —— 还没通过好友的达人可以先留空,之后「一键修正」会自动补上稳键
刷新
未加载
有的达人双平台播 :把同一个人在两平台的 ID 绑成一条档案(人工维护 —— 平台间没有自动映射),
之后一键给 TA 在两个平台同时建定向 :微信用「推送配置」的达人清单+佣金,抖音用下面的「抖店推送清单」+佣金。
自动群发不受影响 (那两条线本来就是单平台名单,不掺这页)。
保存/改档案只动配置;「推送」是真发,有确认框。
抖店推送清单 双推时抖音侧推什么、多少佣金(与微信「推送配置」对称)
抖店店铺:—
+ 加一行
保存清单
把「改完记得手动跑」的两道校验接进来:① 算数层 (与 Python 基准逐行比对)② 行为层 (localStorage 持久化)。
两个 HTML 共用 bc-pricing-v1 这个键做口径一致性告警。
跑两道校验
未跑
当前默认参数(读自 HTML 的 CORE 块,不另存一份)
生成器(写操作:owner + 非 dry-run)
把圆通云仓报价表 换算成小店的运费模板,并直接对照存量模板的缺口。
口径:带箱重量即计费重量 (3斤=1.5KG / 5斤=2.5KG / 9斤=4.5KG,各占一档、均不跨 5.2KG);
三个规格只能统一加价 ——商品重量是 SPU 维度、不在 SKU 维度,所以加收区必须按最重的 9 斤 取保本线。
写操作默认 dry-run :真要落库需显式取消演练,且店铺在 WXSHOP_LIVE_SHOPS 白名单里。
读取存量模板
未读取
模板详情
成本对照 ▸
左边点一个模板 —— 这里显示它的计费口径、加收区成本对照与不发货地区
套用预设
目标模板
(新建模板)
预览 payload(绝不发出)
套用(演练)
真实套用
★ 池共用、节奏不共用 :小池是同一份(「我的达人」),但每个通道的日上限 / 条间隔 / 熔断阈值各自独立 —— 个人微信最敏感、外呼次之、平台私信最松。
中台做大脑与台账 (规则库 / 三道保险判定 / 草稿队列 / 首触队列 / 审计),
不做真正的发送 ——发消息要客户端的登录态,仍由长跑卡片执行。红线:只答口径定死的、每条 ≤80 字、不承诺销量保底赔付金额。
意向达人(回复打标 → 一键推入加微信)
档位从会话台账现算(不落第二份状态):强意向 =主动要微信/寄样/发来疑似微信号 ·
咨询中 =问佣金/价格/货期 · 已拒绝 =不再打扰 · 闲聊 。
号来源:客服会话CRM 或 达人自己在会话里发来的微信号 (明文不出服务端)。
下一步怎么走 :① 点「排队加微信」(一次一人)→ ② 到「触达 → 个人微信」看待加队列 →
③ 真加由 CLI 做:node bin/wechat-add.mjs run(先干跑看三件套,加 --send 才真动微信;每天上限 20 条、条间隔 60s)。
没号的人服务端会拒绝(不猜)。
规则库(命中即回;命中不了就落回"等稿",不自己编)
把「样品」从达人身上的一个标签,升级成一条有成本的工单 :三道闸门 + 一条回收线。
政策=混合 (A 档免费 1 箱/其余自付、出单全额返)。一箱成本 ¥31.55 =白掉 3.8 单 利润。
★ 一个菜单两件事:平台怎么给这家店打分 (体验分四维 + 42 个指标 + 物流达标)与 够不够「好店」 (8 条硬条件 + 好评测算)。两页是同一份分 —— 好店第 7 条就是体验分 ≥4.5 且同行业前 10%,所以合在一页看,不用两个菜单来回对。
按商品 看好评:哪个商品把店铺好评率拖得最狠,排最前面。拖累度 =(该商品好评率 − 店铺好评率)× 它占的评价比重,负数就是它在拖后腿。微信与抖店口径不同(微信 4 星算中评 ,不算好评),两边分开看、不要横向比。
微信小店
抖店
×
目标好评率 %
排序
拖累度(最该管在前)
好评率(低 → 高)
评价数(多 → 少)
缺口(多 → 少)
销量折线
近 30 天
近 7 天
重新取数
取全部
未加载
催好评 · 已签收但还没评价的订单 未加载
两个条件同时成立才进名单:① 物流原文是「已签收/已妥投」;② 评价列表里没有这个订单号。只满足一个就催 = 要么骚扰已评过的人,要么货没到就催评。 文案是模板按商品名和签收天数生成的,可以直接改;复制去后台发,或者点「演练」(只填不发)。
近 3 7 14 30 天签收
拉待催名单
未加载
平台每天算一次的综合评分。点下面任意一张卡 ,直接看那一项现在差在哪、该怎么改。微信是 5 分制、抖店是百分制,两边权重也不同,别用同一套标准比。
微信小店
抖店
近 7 14 30 天
存进台账
未加载
原始指标明细(排查用,平时不用看)
接口 /shop-faas/statistic/cgi/search(要 biz_magic,magic 决定读哪家店);rankRatio = 超过同行比例 ,不是分位;指标中文名取自平台页面自己的字典(42 条,含平台口径),字典没有的显示字段名,不编名字。
指标下钻明细(商品评价 / 商品退款 / 承运商揽收)
按需拉取,约 9 秒
拉取下钻明细
强制刷新
点右上「拉取下钻明细」——这三个接口要开浏览器(约 9 秒),所以不随页面自动加载 。
能看到:每个商品的好评/差评条数与差评原因标签 、退款原因标签 、各承运商的及时揽收率 。
物流达标(口径:从「揽收次日」起算,在【线路标准时效】当天 23:59:59 前签收才算)
🩓 好店达标 —— 「服务好店」资格测算
「服务好店」8 条硬条件 + 好评测算 + 档位阶梯。和上面的体验分是同一份数据(好店第 7 条就是体验分 ≥4.5 且同行业前 10%),全部内容在本页内,不用跳转。
好店是怎么评的(点开看规则) 《微信小店"好店"标识管理规则》2026-08-26 生效版。三条路只走「服务好店 」:品牌好店要求进平台「热招品牌库」+ 品牌认证(本店 brand_id 全是平台占位符 2100000000);热销好店要求近 30 天 GMV 与订单量同时 进同行业前 10%。好店要的是「结算订单 」(单数),不是"已支付"、更不是商品页的「已售」件数。
刷新(重新生成数据)
目标好评率 %
新订单好评率 %
订单评价率 %
重算好评
未加载
「服务好店」8 条要求绿色=过了 | 红色=还没到 | 黄色=要去后台查;点一行看原始数据
好评提升:从现在到目标还差多少
各档位分别还差多少条好评
自包含工具(原 wxstore-admin/web/salary.html 整体移植,公式未改):
保底 + 时薪×时长 + 超额累进提成 + 住宿调整 ,可导出工资条 与《直播主播薪酬协议》 。
参数按登录账号 隔离、存本机浏览器;零服务端依赖 ,也支持直接打开 /salary.html 单独用。
成本核算 · 新版(成本 + 模拟定价)
旧表(含售价 / 净利 / 保本线)
自包含工具(原 _archive_20261007/素材与设计/商品成品/直采成本工作台.html 整体移植,公式未改 ):
多品产品库 —— 一个库管多个品,每品各有自己的原料价 / 正品率 / 物料 / 重量档 / 果径 / SKU,
算全成本拆解 / 逐 SKU 净利 / 保本线 / 敏感度 ,并把全部品拉平成一张横比表。
★ 售价与净利只出现在标着「模拟」的那张表 里(挂牌价/到手价是你填的假设值,不是真实成交)——
它用来比价、试佣金、看保本线;真实到手价与真实利润看「推广 ▸ 商品 ▸ 查看 SKU 价格」右抽屉。
原料口径支持元/吨通货 与元/箱代发 两种(自采分拣 vs 供应商代发)。
草稿按登录账号 隔离存本机,也可一键存到服务端 (角色要有「改成本参数」权限)让团队共用同一份口径;
也支持直接打开 /cost.html 单独用。
旧表:2026-10-16 之前的那一版 —— 券让利 / 到手价 / 达人佣金 /
自播净利 / 保本佣金率都在里面(也能按挂牌价定价、或直接定到手价并反推挂牌价)。
成本与「新版」共用同一份草稿 (原料/物料/档位/SKU 改一处两张表都变),
只有「券让利%」「达人佣金率%」是旧表自己的参数。
★ 那一版的到手价是按你填的预估折扣 推出来的、与平台真实券无关 ⇒ 净利是"按这个假设卖"的推算,不是真实利润。
旧表只存本机 (团队那份由「新版」管);也支持直接打开 /cost-classic.html 单独用。
A 档电话邀约:队列 → 打电话 → 记跟进 → 跟催。数据已从 web/admin/call.html 那套收进中台
(data/callcenter/)。号码/微信默认打码 ;owner/lead 可看明文,operator 可对单条要明文,每次都写审计。
★ 大池 = 平台公海(还没联系过 的人,联系过的在「我的达人」);两边池子数字不通用 —— 微信侧是本机全量池(不绑店),抖店侧是精选联盟广场的采集池。看池子不绑店,发动作才绑店 (邀约额度 / 可推性 / 风控冷却跟店走)。
本地数据,不依赖店铺登录态:达人 191.6 万人 (data/talent-square.jsonl)+ 机构 2.4 万家 (data/agency-contacts.jsonl)。
查询走「瘦索引 + 按量随机读」,不全扫;昵称/带货号/手机号默认打码 ,只有 owner/lead 能点「看明文」(每次都会写审计)。
「接入」= 往注册表写一条(店铺ID + 店名),微信店自动继承已登录账号的登录态(账号级,不用逐店扫码)。
卡片点一下 看详情和全部操作。非微信平台的店接进来后先只有自有/系统能力,专属能力随 P1 适配器自动出现。
+ 添加店铺
重新发现
全部接入
读取方
未加载
⚠️ 别同时开两个店铺页签跑重操作 —— 切店改的是「账号级当前店」,跨请求交错防不住。
注册表文件与写入保护
服务自身 的运行方式:谁在监听端口、怎么起的、有没有被 Windows 计划任务托管。
★ 「重启服务」由独立进程执行 —— 本服务停不掉自己(那样连响应都发不回来)。
刷新
注册 / 更新为计划任务
重启服务
移除计划任务
未加载
边界在哪(做之前先说清)
· 不代杀手工起的进程 :没有计划任务时「重启」会被拒绝并说明原因 —— PID 会被复用,
杀错进程比不重启危险得多(与「任务进程」停止长跑卡片同一条红线)。
· 平台差异不假装支持 :计划任务只有 Windows 有;其他平台本页只做只读展示,
并提示该用 systemd / supervisor / pm2。
· 会检查任务有没有"烂掉" :搬过项目、换过 Node 安装位置之后,任务会指向不存在的 exe
而启动静默失败 —— 本页直接报出来并让你一键修好。
· 所有动作都写审计:service.register / service.restart / service.remove。
抖店(cookie 通道)经营概览:店铺身份锚点(防串店)+ 体验分总览 + 售后各状态计数。数据直连 fxg 网页接口,只读。
★ 小池 = 我们联系过的人 (大池在「资源池」);一行一个人 = 一个平台身份 ,跨平台不合并 (同一个人两平台算两行)。
★ 判据:「进过名单」不算已触达,要完成动作 (打过电话 / 发过消息);"没人接 / 打错"进总线留证,但不冒充联系上 。
下面这一栏是「小池」视图自己的筛选 —— 平台只是筛选维度 ,不改变数据来源(都是同一份接触事件快照)。
池子: 未加载
刷新
一键加微信 · 队列 —
★ 一次一个人 —— 刻意不给批量:
批量接口一旦存在,风控参数就永远可以被绕过。真正的加好友由 CLI worker 一条一条做,
默认 dry-run (要 --send 才真加);这里只负责"排队"。
★ 精选联盟「达人广场」池 —— 与微信小店的达人库是两个独立的池,数字不通用 。勾选后加入「批量邀约名单」,在「商务会话(抖店)」页启动发送。
采集达人
全部等级
✅ 可发(LV0-LV1)
仅 LV0
仅 LV1
LV2-LV3(发不了)
LV4-LV5(发不了)
LV6(发不了)
不限粉丝
≥1 万
≥10 万
≥100 万
按粉丝量
按达人等级
按最近采集
全选达人(当前页)
加入批量邀约名单
已选 0 位
刷新
未加载
等级口径:本店邀约额度只覆盖 LV0-LV1 (店铺档位「联盟开通时间30天内」)⇒ LV2 以上发不出去 ,列表里会标「发不了」,别选它们白占额度预期。
采集团长
不限出单达人数
月出单达人 ≥10
≥50
≥200
≥1000
不限佣金率
月均佣金率 ≥10%
≥15%
≥20%
不限星级
星级 ≥3
星级 ≥4
星级 =5
按出单达人数
按月均佣金率
按出单商品数
按单品均出单量
按星级
按最近采集
刷新
未加载
数据来源:精选联盟「团长服务广场」团长列表(GET /api/institution/plaza,在页面上下文里 fetch 由页面签名,绕开直连风控)。字段全部是平台原值:月出单达人数 / 月出单商品数 / 月单品平均出单量 / 月平均佣金率 / 月结算有效成交额区间 / 经营类目与类目排名 / 是否可建联。只读 ——中台不会替你联系团长或建合作。翻页有 10000 条上限,要采全池需按类目分区多轮采(池子去重合并)。
刷新
未加载
数据来源:抖店域内的精选联盟接口(与抖店共用登录态)。定向佣金的写入接口在独立域 buyin.jinritemai.com,需精选联盟单独登录 ——这里先只读现状。
本次投放
已推策略
模板库
执行回执
从达人池批量推
1
投给谁 两类走的是完全不同的平台接口 :先选类型,字段只显示这一类真正要用的
达人定向佣金
团长定向合作
达人定向佣金(strategy/create)
团长定向合作(activity/apply)
3
会发生什么 「预览载荷」只算请求体、不发任何东西 ;真发在下面吸底那颗红按钮
预览载荷
回读已推策略
还没预演。点右上「预览载荷」—— 它会算出真正要 POST 出去的请求体,并标出哪一跳是写 。
原始 JSON(人工核对用)
预览 = 只读 · 执行 = 真发(服务端还有 dry-run / 白名单 / 权限三道闸门)
保存模板
执行(真发)
↺
该商品已推策略(回读) 平台上这个商品当前挂着哪些达人、多少佣金 —— 推完拿它对账
▤
任务模板 落在 data/deals/<店>.json|「载入」把参数灌回本次投放,不会直接发
⏱
执行回执(最近 20 次) 每次真发都留一条:谁、什么时候、成功几条、平台原话
▤
商品来源 商品与佣金取自「抖店推送清单」(双端推送页配);本页改的是本次的临时覆盖
✦
预演 / 执行回执 预演会真跑一次只读 预筛,所以它慢 —— 但它不会创建任何策略
原始 JSON(人工核对用)
≡
批量推送台账(最近 30 条) 预筛被拒的也在里面 —— 它不是失败,是平台说这个人没有电商权限
刷新
未加载
抖店商务会话 = 精选联盟「建联」:先查建联资格 (account_check,不合格不发),再发 邀约卡 (invite_card:留言文案 + 商品 + 定向佣金随卡一起带 + 联系方式)。
⚠️ 载荷抄自平台页面源码的调用点;发送那一跳的 HTTP 路径未实测 —— 本页会依次试候选路径,谁回业务码就用谁,命中路径记进 data/push/douyin/<店>/im-endpoints.json,并在台账里留痕。
批量邀约带货(可在本页配参数 · 后台分批 · 进度/断点)
本机 PC 微信会话与消息(只读 )。数据独立落盘在 wxchat/(与 data/ 分离),
后台每 10 秒增量同步。聊天绑微信账号、不随店铺切换 。
★ 一次一个人 :这里只负责"排队",真发由 CLI 一条一条做(默认 dry-run ,要 --send 才真加)。
★ 「已通过」只有聊天库知道 :由认领器 identity-reconcile.mjs 认到后写下关联;状态链 待加 → 执行中 → 已发出 → 已通过 (否则 失败 / 找不到人)。
★ 前提是有微信号或手机号 (都没有就不排队,绝不猜一个 ID 去加);只有手机号时标「疑似」(同一个号可能两人共用)。
待加列表 —
刷新
只看
全部
待加
执行中
已发出
已通过
失败 / 找不到人
排队不锁人:同一个人的第二次排队会被幂等键挡掉(不会排两条)
怎么真加(都在 CLI,页面不直发)
node bin/wechat-add.mjs list 看闸门与下一条 /
node bin/wechat-add.mjs plan --id=… 先看三件套(备注/标签/验证消息)/
node bin/wechat-add.mjs run 跑一条(dry-run),确认后加 --send 真加 /
node bin/identity-reconcile.mjs 把"已发出"认领成"已通过"(先 dry,再 --commit)。
资金总览 (上)= 抖店 + 微信小店平台侧实时资金 :可提现 / 待结算 / 冻结,全店合计。
财务台账 (下)= 电商直采的借来的钱 :①资方入账 / ②资方款支出 / ③徐总垫付 手工录 ;④每日订单利润 / ⑤资方往来总账 自动算 。
★ 两块口径不同,不能相加 :上面是"店账上现在有多少",下面是"欠资方多少"。
月息 2.5%(每万元每月 250 元)、T+7、算头不算尾 |平台费 0.1%|提现手续费 1%|过账手续费 6%。
资金总览 · 全部店铺
抖音 + 微信小店 · 平台接口实时值
刷新全部
资金总额(正在读取…)
…
微信小店 …|抖店 …
财务台账 · 借来的钱与欠款线
与上方「平台资金」口径不同,不能相加
当前店实时余额 只这一家店;全店合计看上方「资金总览」
① 资方入账
② 资方款支出
③ 徐总垫付
④ 每日订单利润
⑤ 资方往来总账
未加载
导出 CSV
角色:owner(全部店铺+管理)/ lead(分配店铺+财务+审核)/ operator(分配店铺+写操作)/ viewer(只读)。
角色本身可以配 :下面那张表勾什么,这个角色就有哪几项能力(自定义角色也能建)。
授权 = 角色 × 店铺白名单 :角色决定「能做哪些动作」,白名单决定「能碰哪些店」,两者同时成立才放行。还可以按账号单独覆盖能力位 :角色给默认,账号可逐项开通/关闭(manageUsers / manageShops 除外,它们只能由角色决定)。一共 27 个能力位:14 个决定菜单是否出现(对应 38 个菜单),13 个是页面内动作 。一个能力位可能同时放行多个菜单(例如「看总览」= 18 个菜单);共享能力位下的菜单可以单独取消显示(例如「看售后」下只留「售后品退」)——这是**菜单显示层**,接口仍按能力位授权。「新建 / 编辑 → 单独权限」里按「菜单入口 / 动作能力」分开列,每个能力位下面直接写出它对应哪些菜单,并给出登录后的侧栏预览。
+ 新建账号
收起 / 展开角色配置
菜单权限对照
刷新
未加载
角色与权限配置勾选即改;保存后立即生效(服务端每个请求都回 data/roles.json 核一遍,账号不用重新登录);每项下面标了它对应的菜单,具体账号可在「编辑 → 单独权限」里覆盖,manageUsers / manageShops 除外
菜单 → 能力位对照按侧栏实际菜单逐项列出(读的是渲染菜单的同一份 NAV);要给他某一页,就开这里写的那个能力位
账号角色直接在下拉里改;「编辑」改单独权限、店铺白名单与重置口令
⚠️ 最后一个启用中的 owner 不允许停用或降级 —— 否则再没人能管账号和店铺。这道闸在服务端,CLI 也绕不过。
每日运维 · 每天 09:00 自动跑
① 佣金配置漂移巡检(只读) ② 给今天新通过的合作中机构推商品。
下面能看上次回执、改推送商品、手动跑一次。日志:tmp\daily-ops.log
手动跑一次
刷新
推送参数 改完次日 09:00 生效(文件 config\daily-ops.json)
爆品数据 · 只读工具
这两个都只读平台、不写任何东西,运营可以放心点。
写平台的动作(清洗席位 / 发定向 / 改公开佣金)故意不放在这里 —— 那些必须走「预演 → 签字 → 真发」。
商品
采集模式
全部(计划+联盟,快)
计划全表
联盟事实
定向成员(慢)
橱窗达人(慢)
日粒度 14 天(慢)
采集(只读)
席位体检(只读)
刷新日志