{ "answer": "自动发票跟进流程,语气由温和渐转强硬。追踪未付发票,按计划发送递进式提醒邮件,记录付款交互并生成应收账款账龄报告。您的代理负责处理尴尬的催款对话,在维护现金流与客户关系的同时,让您专注于核心业务。配置发票追踪、各阶段邮件模板(温和→强硬→最终通知)及时间规则,即可让代理全天候自动追款。适用于添加发票、执行催款、查询状态或生成应收报表。" }
开通了大通的发票,停止追逐,开始获得报酬
功能概述
开通了大通的发票,停止追逐,开始获得报酬是一项面向实际任务的技能,主要用于你的经纪人给你报酬;每个自由职业者、顾问和小企业主都知道痛苦:你做了工作,把钱送到了公司。
核心要点
- 它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
- 使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。
- 该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。
使用与执行
从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
结果检查与注意事项
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
Invoice Chaser — 停止催款,开始收款
你专注交付工作,代理帮你完成收款。
每位自由职业者、顾问和小型企业主都深有体会:活干完了,发票也发了,然后……石沉大海。主动跟进令人尴尬;等待则扼杀现金流;反复催款更是浪费本可用于创收工作的时间。
Invoice Chaser 全自动执行整套催款流程:按预设时间发送提醒邮件,语气由友善逐步升级为坚定,实时追踪付款状态,完整记录每次交互,并在发票需人工介入时及时向你发出提醒。它就像一位不知疲倦、富有外交智慧的应收专员——从不遗忘,也从不尴尬。
它的独特之处在于:这远不止是“7 天后发一封提醒邮件”。Invoice Chaser 运行一整套完整的应收账款(AR)流水线,具备状态管理、分级升级逻辑与语气演进机制。它精准识别何时该保持友好(“仅作温馨提醒”),何时该转为正式(“付款已逾期 30 天”),以及何时必须交由你手动处理。多阶段催款序列可应对真实世界中复杂多变的付款周期。
安装配置
- 运行
scripts/setup.sh初始化配置与数据目录 - 编辑
~/.config/invoice-chaser/config.json,配置邮件模板、时间节点及升级规则 - 确保已安装
gogskill(用于 Gmail 发信) - 在
~/.clawdbot/secrets.env中设置GOG_DEFAULT_ACCOUNT(例如:your-email@gmail.com) - 测试运行:
scripts/add-invoice.sh --test
配置说明
配置文件位于 ~/.config/invoice-chaser/config.json。完整配置结构请参阅 config.example.json。
核心配置项包括:
- business —— 公司名称、联系信息、付款条款
- stages —— 各催款阶段对应的邮件模板(提醒、逾期、正式、最终)
- timing —— 每个阶段的触发时机(距开票日期或上一阶段的天数)
- escalation —— 自动升级规则与人工干预阈值
- payment_methods —— 在提醒邮件中嵌入付款链接/说明
- reporting —— 报告投递渠道、频率、应收账款账龄分组方式
邮件模板支持变量替换:{client_name}、{invoice_number}、{amount}、{due_date}、{days_overdue}、{payment_link}。
脚本列表
| 脚本 | 用途 |
|---|---|
scripts/setup.sh |
初始化配置与数据目录 |
scripts/add-invoice.sh |
将新发票添加至跟踪系统 |
scripts/chase.sh |
执行催款周期(检查状态、发送提醒、升级处理) |
scripts/status.sh |
显示发票状态与应收账款账龄汇总 |
scripts/report.sh |
生成详细应收账款账龄报告 |
所有脚本均支持 --dry-run 参数,可在不实际发送邮件的前提下进行测试。
添加发票
# 手动添加发票 scripts/add-invoice.sh --number "INV-2025-042" --client "Acme Corp" --email "billing@acme.com" --amount 2500.00 --date "2025-01-15" --due "2025-02-14" --net 30 # 快速添加(默认采用 net-30 条款) scripts/add-invoice.sh --number "INV-042" --client "Acme Corp" --email "billing@acme.com" --amount 2500 # 标记为已付款 scripts/status.sh INV-042 --paid --date "2025-02-10"
催款周期
按计划定期运行 scripts/chase.sh(建议通过 cron 每日执行)。催款周期包含以下步骤:
- 从跟踪数据库加载全部未结清发票
- 计算各发票距开票日期天数及逾期天数(超出到期日的天数)
- 依据配置中的时间节点规则,确定每张发票当前所处催款阶段
- 发送对应阶段的提醒邮件(使用阶段化模板,语气逐级升级)
- 记录所有已发送邮件及阶段推进日志
- 当达到设定阈值(如逾期满 60 天)时,自动升级至人工处理
- 生成状态报告
升级阶段定义
SENT → REMINDER (friendly) → OVERDUE (professional) → FIRM (insistent) → FINAL (urgent) → ESCALATED ↓ ↓ day 3 ↓ day 7+ ↓ day 30 ↓ day 45 ↓ day 60 PAID (any time) ✅
默认时间线:
- 第 3 天:友善提醒(“您的发票即将到期……”)
- 第 7 天起:到期日提醒(“付款应于 [日期] 到期……”)
- 第 30 天:首次逾期通知(“您的账户目前已逾期 30 天……”)
- 第 45 天:正式通知(“我们必须立即收到付款……”)
- 第 60 天:最终通知(“这是提交催收前的最后通知……”)
- 第 75 天起:人工升级提醒
所有时间节点均可在 config.json 中自定义。
邮件语气演进
第一阶段 —— 友善提醒(第 3 天):
您好 [客户],
温馨提醒您,发票 #[编号] 金额 $[金额] 将于 [到期日] 到期。如有任何疑问,请随时与我联系!
第二阶段 —— 正式逾期提醒(第 14 天):
您好 [客户],
谨就发票 #[编号](金额 $[金额],应于 [到期日] 到期)进行跟进。若您已付款,请忽略此邮件;否则,请告知是否存在影响付款的问题。
第三阶段 —— 正式催付通知(第 30 天):
尊敬的 [客户],
您的账户目前已逾期 30 天。发票 #[编号](金额 $[金额])应于 [到期日] 到期。为避免服务中断及滞纳金,请立即完成付款。
第四阶段 —— 最终通知(第 45 天):
尊敬的 [客户],
【最终通知】:发票 #[编号](金额 $[金额])目前已逾期 45 天。若我们未能在 7 日内收到付款,将不得不将此事移交催收部门处理。
所有模板均可在配置中完全自定义。
付款追踪
# 标记发票为已付款 status.sh INV-042 --paid --date "2025-02-10" # 添加付款备注 status.sh INV-042 --note "客户来电,支票已寄出" # 暂停提醒(客户申请延期) status.sh INV-042 --pause --until "2025-03-01" # 归档(核销坏账) status.sh INV-042 --archive --reason "Bad debt write-off"
应收账款账龄报告
# 显示摘要 scripts/report.sh # 输出示例: # 📊 Accounts Receivable Aging Report # ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ # Current (0-30 days): $12,500 (5 invoices) # 31-60 days: $3,200 (2 invoices) ⚠️ # 61-90 days: $1,800 (1 invoice) 🚨 # 90+ days: $500 (1 invoice) 💀 # ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ # Total Outstanding: $18,000 (9 invoices) # 详细视图 scripts/report.sh --detail # 导出为 CSV scripts/report.sh --export ar-aging-2025-01-28.csv
数据文件结构
~/.config/invoice-chaser/
├── config.json # 用户配置文件
├── invoices.json # 发票数据库(状态机)
├── chase-log.json # 邮件发送历史
├── last-chase-report.json # 最近一次催款运行数据
└── archives/
└── YYYY-MM/ # 已结清/核销发票归档目录
自动化部署
通过 cron 设置每日催款任务:
# 每日上午 9 点执行 0 9 * * * cd ~/clawd/skills/invoice-chaser && scripts/chase.sh >> ~/.config/invoice-chaser/chase.log 2>&1 # 每周一上午 8 点生成 AR 报告并推送至 Telegram 0 8 * * 1 cd ~/clawd/skills/invoice-chaser && scripts/report.sh --channel telegram
或使用 Clawdbot 的 cron 集成功能:
clawdbot cron add --schedule "0 9 * * *" --command "cd ~/clawd/skills/invoice-chaser && scripts/chase.sh" --label "invoice-chaser-daily"
发票状态流转
DRAFT → SENT → REMINDED → OVERDUE → FIRM → FINAL → ESCALATED
↓
(human intervention)
Any state → PAID ✅
Any state → PAUSED ⏸ (临时暂停)
Any state → ARCHIVED 📁 (核销或取消)
与财务系统集成
Invoice Chaser 负责追踪付款状态。如需深度对接会计系统,请参考以下方式:
- 使用
--export参数导出发票数据 - 导入 QuickBooks、FreshBooks 等财务软件
- 或构建自定义适配器(详见
references/accounting-adapters.md)
安全特性
- 模拟运行模式(Dry-run mode):无需发送邮件即可测试模板效果
- 发票暂停功能:针对特殊情况客户临时中止提醒
- 人工覆盖机制:对敏感客户禁用自动升级
- 邮件预览功能:首次向新客户发送前可预览邮件内容
- 速率限制:限制每日最大发信量,规避被标记为垃圾邮件的风险
- 退订处理:尊重用户退订请求(手动将其从跟踪列表中移除)
最佳实践
- 保持一致性:每日运行催款周期——规律性有助于培养客户按时付款的习惯
- 个性化模板:使用客户姓名,在第一、二阶段邮件中提及具体工作内容
- 嵌入付款链接:简化付款操作(支持 Stripe、PayPal、银行转账等)
- 渐进式升级:不可跳过阶段——语气的合理演进有助于维系客户关系
- 适时暂停:若客户沟通出现障碍,应暂停自动流程并手动跟进
- 定期归档:每月将已结清发票移入归档目录,保持数据库整洁
- 监控账龄:每周 AR 报告可揭示潜在问题(如长期拖欠客户、系统性延迟等)
典型工作流示例
初始配置:
scripts/setup.sh # 编辑 ~/.config/invoice-chaser/config.json 填写您的详细信息
开具发票后:
scripts/add-invoice.sh --number "INV-042" --client "Acme Corp" --email "billing@acme.com" --amount 2500 --date "2025-01-15" --due "2025-02-14"
每日自动催款(通过 cron 执行):
scripts/chase.sh # 每日清晨运行,依据时间规则自动发送提醒
收到付款后:
scripts/status.sh INV-042 --paid --date "2025-02-12"
每周复盘:
scripts/report.sh # 查看应收账款账龄,识别异常发票
故障排查
邮件无法发送:
- 确认
gogskill 已安装:gog gmail whoami - 检查
~/.clawdbot/secrets.env中GOG_DEFAULT_ACCOUNT是否配置正确 - 使用
--dry-run参数测试,查看邮件预览内容
升级阶段错误:
- 检查
config.json中timing配置段 - 确认发票的
date和due_date字段是否准确 - 运行
status.sh INV-XXX查看当前计算的逾期天数
付款后仍持续收到提醒邮件:
- 运行
status.sh INV-XXX --paid将其标记为已付款 - 检查
invoices.json确认状态是否已更新
设计理念
你完成了工作,理应获得报酬——你不该为此低声下气地乞求。
Invoice Chaser 代你承担自由职业中最令人不适的一环:追讨未付款项。它以持之以恒的态度与逐步升级的坚定立场完成这项任务。在早期阶段保持专业与体面,维护客户关系;在必要时刻果断升级,绝不纵容客户拖延。
现金流是小企业的生命线。付款延迟足以摧毁一家企业。Invoice Chaser 让资金持续流动,让你得以专注于真正擅长之事:你的本职工作。
停止亲自催款。你的代理会发送那些令人尴尬的邮件,而你无需再开口。
热门AI工具
相关专题
本专题介绍Gradle插件开发的基本流程,涵盖插件类编写、自定义任务注册、扩展参数设计和插件应用方法,帮助你理解插件如何组织构建逻辑,减少多个项目之间的重复配置。
0
2026.10.22
本专题介绍Gradle Wrapper的基本作用,涵盖文件组成、生成方法、版本配置和任务调用,帮助你理解项目如何使用指定的Gradle版本,减少不同开发环境带来的构建差异。
0
2026.10.22
本专题整理Golangci-lint常用Linters的用途与配置方法,覆盖错误处理、无效代码、安全、复杂度、命名和依赖检查,帮助项目合理选规则。
0
2026.10.22
本专题介绍Gradle Java项目构建方法,涵盖Java插件配置、依赖声明、源码编译、测试执行和打包检查,帮助你理解各阶段的任务关系,逐步完成项目构建。
0
2026.10.22
本专题汇总PHP常见时间戳漏洞,包括2038年溢出、时区漂移、时间戳伪造、重放攻击、时间盲注与日志审计失效等,并给出升级64位环境、使用 DateTimeImmutable、统一UTC、严格超时校验、预处理绑定、hash_equals 比对等修复方案,帮助开发者快速排查和加固时间相关代码。
0
2026.10.22
本专题聚焦Golangci-lint YAML配置文件,讲清运行参数、规则启停、目录排除、问题过滤及严重级别设置,便于团队统一检查标准。
0
2026.10.22
本专题讲解Golangci-lint的安装、初始化、基础命令和首次代码检查,覆盖本地环境、Docker及多平台用法,帮助Go开发者快速上手。
0
2026.10.22
PHP2Shell漏洞是什么,哪些PHP版本和运行环境会受到影响,服务器应该如何检测与修复?本专题提供版本自查脚本、Linux与Docker升级命令、PHP-FPM和Apache排查步骤,以及修复验证、临时缓解和应急响应方案。
0
2026.10.22
热门下载
相关下载
精品课程
共6课时 | 12.1万人学习
共79课时 | 161.5万人学习
共6课时 | 54.7万人学习
最新文章
