Finance — cash flow and AR aging for a small business

20 minutes. Two CSVs. You play the operations controller at a 10-person consulting firm and stop losing money to late-paying customers.

Updated 2026-04-17

Industry: Finance / Small business Difficulty: Intermediate Time: 20 min Plan: Free works

The scenario

You’re the ops controller at Northlane Consulting, a 10-person advisory shop. You bill ~$200K/month across a dozen clients on NET-30 or NET-45 terms. Your pain isn’t revenue — it’s the gap between revenue invoiced and revenue collected. Three clients are chronically late, and nobody has the time to chase them.

The four questions you’ll answer:

  1. Where’s our cash right now — what came in, what went out, what’s the runway?
  2. Who owes us money — AR aging, who’s overdue and by how much?
  3. Who’s chronically late — separating bad luck from bad habits?
  4. Can we predict when cash will dip — so we don’t get caught short?

Download the sample data

100 rows · 4 months
invoices.csv
Invoices issued — customer, amount, issue date, due date, payment terms.
74 rows · 4 months
transactions.csv
Receipts (money in) and expenses (money out). Joined to invoices where applicable.
01

Where's our cash right now?

Cumulative receipts minus expenses, plotted over the last 90 days.
Prompt
Compute daily cash flow from transactions.csv: sum of receipts minus expenses per day, and the cumulative running balance. Show me where the balance dipped lowest.

Expected answer (approximate — numbers depend on random seed):

The Agent sums per-day, computes a running balance, flags the minimum. You’ll see something like: “Cumulative cash moved from an assumed $0 on 2026-01-18 to +$42K today, with a low point of -$18K on 2026-02-15 (right after the February payroll run, before Acme Corp paid their January invoice).” Chart attached.

Keep it: + Save as weekly Report named “Cash position”. Your weekly Friday review is now automated.

02

Who owes us money?

Classic AR aging — 0-30 / 31-60 / 61-90 / 90+ days overdue.
Prompt
Build an AR aging report. For each unpaid invoice (invoice exists in invoices.csv but no matching receipt in transactions.csv), bucket by days past due: not yet due, 0-30, 31-60, 61-90, 90+. Show total in each bucket and the top 5 customers by outstanding amount.
northlane · ar aging
step 2 · expected answer
Tablize
sql.query · invoices left-join transactions on invoice_id 188 ms
Total AR: $284,000, of which $64,000 is over 60 days past due — that's the stuff worth chasing first.
BucketInvoicesAmount
Not yet due18$142,800
0–30 days9$52,400
31–60 days5$25,100
61–90 days4$31,200
90+ days3$32,700
Worst offenders: Lucid Ventures ($28K, 120 days late), Delta Holdings ($22K, 85 days late), Gold Star Co ($14K, 62 days late).
· Step 2 — AR aging with worst-offender list

Keep it: click + Watch overdue. The Agent sets up a daily check; you get a Slack ping when any invoice crosses the 60-day threshold. Early-warning instead of end-of-quarter panic.

03

Who's chronically late?

Payment reliability score per customer. Separates unlucky from unreliable.
Prompt
For each customer, across all their invoices (paid and unpaid), compute: average days late (or early), percentage of invoices paid on time, and total amount currently outstanding. Sort by "worst payer" — high outstanding amount and high average days late.

The Agent ranks your customers by payment reliability. The pattern: two customers pay 15+ days late consistently across every invoice — that’s not bad luck, that’s how they operate. You now have evidence for a conversation about advance payment or shorter terms.

Keep it: + Save as Script — rerunnable quarterly to re-evaluate the book.

04

Can we predict when cash will dip?

Project the next 60 days using your payment reliability data.
Prompt
Project cash flow for the next 60 days. For each unpaid invoice, predict when it'll actually be paid based on that customer's average days-late. Subtract expected monthly expenses ($50K for payroll, $5K rent, $3K software, $2K other). Show the projected balance day-by-day and flag any days below $10K.

The Agent produces a 60-day forward projection. It’ll flag a dip in week 3 (after payroll, before the two biggest expected receipts) — actionable ahead of time rather than after.

Keep it: + Build Dashboard — “Cash position — live.” One panel: current balance. One panel: 60-day projection. One panel: top 5 overdue customers. Pin it to your Notion finance page.

What you built in 20 minutes

  • 2 Reports — weekly cash position, AR aging.
  • 1 Watch — overdue invoice alarm.
  • 1 Script — customer reliability ranking, quarterly.
  • 1 Dashboard — live cash position for the founder.

You now have 45+ days of forward visibility on cash. The weekly review is automated. And when a client slips past 60 days, you know the day it happens — not the day you get around to reviewing the accounts.

Next steps in this industry

  • Connect real dataStripe for receipts, your accounting tool (QuickBooks via Web API) for invoices and expenses.
  • Layer in runway modeling — include fixed and variable expenses, project burn, alert at N months of runway remaining.
  • Read the Finance industry page — deeper scenarios: multi-currency books, FX hedging, reconciliation with bank feeds.

Nearby tutorials

  • E-commerce — if margin, not invoicing, is your pain.
  • SaaS — if your revenue is subscription, not project-billed.