agentleFS
prab-hubprab-hub/revexos-q2c-kit/skills/collections-revrec/SKILL.md

collections-revrec

Skill0 starsChanged 34 days agoMITView on GitHub

Run collections and revenue recognition: staged dunning cadence, AR aging and prioritization, promise-to-pay and dispute tracking, cash forecasts, payment-to-invoice reconciliation, and ASC 606 / IFRS 15 aligned revenue schedules with deferred revenue. Use when a customer has not paid, or the user asks for a dunning sequence, AR follow-up flow or collection email, payment reconciliation, revenue recognition for a contract, or a deferred revenue schedule.

The file

We split this skill into the rules it gives an agent

2 rules. About 0 are common, 2 are distinctive, and 0 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈2

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Before any pre-legal or final notice, write a one-paragraph brief for the account owner: amount, age, contact history, promises and whether …

    line 74
  2. Distinctive:

    Early termination: stop recognizing future periods as of the termination date, and flag any deferred revenue that must be reversed or any …

    line 127

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Collections & Revenue Recognition

Cover the back half of quote-to-cash: getting paid on time, reconciling payments, and recognizing revenue correctly once cash and contracts diverge (which they almost always do). Read references/asc606-revrec-primer.md before building a revenue recognition schedule - do not improvise the accounting treatment.

Part A - Collections & AR follow-up

Step 1: Design the dunning cadence

Build an explicit, staged cadence rather than a single "send a reminder" step:

StageTimingAction
Pre-due reminder3–5 days before due dateFriendly email reminder
Due dateDay 0Payment attempt (if on autopay/card) or invoice reminder
First follow-upDay +3–5Email + payment retry if card-based
Second follow-upDay +14Email + task to account owner/CSM for a personal check-in
EscalationDay +30Finance/collections involvement; consider service restriction per contract terms
Final noticeDay +60–90Formal notice per contract; evaluate write-off or legal escalation path

State which stage a given overdue invoice is at and the next action, rather than treating every overdue invoice the same way. Adjust timing to the customer's specific payment terms and any negotiated grace period from the order.

To draft the email for a stage, use the generate_ar_collection_email tool from the RevExOS connector (bundled with this plugin) when it is available. Map the invoice to its stage (1 = 3 days before due, 2 = due today, 3 = 1-7 days late, 4 = 8-14, 5 = 15-30, 6 = 31+ final notice) and set relationship to vip for long-term or high-value customers so the tone stays softer. The tool needs the user's email address; ask for it rather than inventing one. Without the connector, write the email yourself following the same stage and tone.

Step 2: AR aging and prioritization

Bucket outstanding invoices by age (0–30, 31–60, 61–90, 90+ days) and prioritize follow-up by a combination of age and dollar amount - a large 31-day invoice usually warrants attention before a small 60-day one. If a CRM connector (~~crm) is available, note that aging invoices should generate tasks for the account owner, not just sit in a finance report no one else sees.

Step 3: Payment reconciliation

  • Match payments from a payments connector (~~payments) against open invoices in the accounting system (~~accounting) by amount and reference/invoice number.
  • Handle partial payments explicitly: state whether the remaining balance stays open on the same invoice or generates a new one, per the user's process.
  • Flag unmatched payments (wrong amount, missing reference) for manual review rather than guessing which invoice they apply to.

Step 4: Service impact of non-payment

State, based on the contract, what happens if an invoice goes unpaid past the escalation threshold - service suspension, feature restriction, or continued service with collections handled separately. Never assume suspension is automatic; confirm it's in the contract terms surfaced during contract-handoff.

Step 5: Promises to pay, disputes and stalling

  • Log every promise to pay (date and amount) from calls and replies, and check it the day after it falls due. A missed promise moves the invoice up one stage immediately.
  • Track each customer's honor rate (promises kept / promises made). Use it to weight follow-up and the cash forecast below.
  • Separate a dispute (a specific problem with the invoice: wrong amount, missing PO, service issue) from stalling (vague delays, "in the system", repeated new contacts). Disputes pause dunning on the disputed part only and go to whoever can fix the invoice; undisputed amounts stay due. Stalling escalates on schedule.
  • Before any pre-legal or final notice, write a one-paragraph brief for the account owner: amount, age, contact history, promises and whether they were kept, and the recommended next step.

Step 6: Cash forecast from AR

Forecast collections per week from open invoices: expected date = due date + the customer's usual days late, weighted by their honor rate for invoices already promised. Report the forecast next to last week's actual collections, so the forecast's accuracy is visible.

Part B - Revenue recognition

Step 1: Determine the recognition pattern

Using the ASC 606 / IFRS 15 five-step framework detailed in references/asc606-revrec-primer.md, classify each contract's performance obligations:

  • Point-in-time: recognized when a deliverable is completed/accepted (e.g., a fixed project milestone).
  • Over-time, ratable: recognized evenly across the contract term (the standard treatment for SaaS subscriptions).
  • Over-time, percentage-of-completion: recognized as work progresses, based on effort or cost incurred relative to total estimated effort/cost (common for larger services engagements).

Step 2: Handle multi-element arrangements

For hybrid deals (one-time implementation fee + recurring subscription, or a bundled service + software deal), do not recognize the one-time fee entirely on receipt if it represents setup work with no standalone value to the customer - in many cases it should be recognized over the expected customer relationship period alongside the subscription. Flag this as a judgment call requiring the user's accountant/auditor's sign-off; this skill provides the standard framework, not a substitute for professional accounting judgment on a specific contract.

Step 3: Build the deferred revenue schedule

For any contract billed in advance of the period it covers (annual prepay SaaS, retainer paid upfront), construct a month-by-month recognition schedule so billed cash and recognized revenue are tracked separately. See the worked example in references/asc606-revrec-primer.md.

Recognize equal amounts per full month (contract value / term in months); a partial first or last month gets that amount times the share of its own days covered. When the RevExOS connector is available, build_revrec_schedule produces the full table (subscription, milestone, or prepaid usage with overage and breakage).

Step 4: Handle contract changes

  • Upgrades/downgrades mid-term: adjust the remaining recognition schedule prospectively from the change date, not retroactively, unless the change qualifies as a contract modification requiring a full re-assessment (flag this distinction rather than picking one silently).
  • Early termination: stop recognizing future periods as of the termination date, and flag any deferred revenue that must be reversed or any earned-but-unbilled revenue that must be recognized.

Common mistakes to avoid

  • Treating every overdue invoice identically regardless of age or amount.
  • Guessing which invoice an unmatched payment applies to instead of flagging it.
  • Recognizing a bundled one-time fee entirely upfront without checking whether it has standalone value.
  • Recognizing annual-prepay revenue as a lump sum instead of ratably over the term.
  • Making a revenue recognition call without noting it should be confirmed with the user's accountant, especially for judgment-heavy cases (modifications, bundling).

Learn more

Free guides and tools on revexos.com that go deeper on this stage:

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.