How to track ar aging and run collections as Small Finance Teams

Finance & FP&AFor Small Finance Teams3 apps12 steps~24 min to set up

Your AR aging report lives in NetSuite or QuickBooks, but getting it into a format the CFO or CEO can actually read means exporting to Excel, reformatting columns, and rebuilding the pivot every week. Collections follow-up is whoever remembered to check the aging that morning — usually you. Stripe payouts don't line up cleanly with invoice records in your ERP, so reconciling what's actually outstanding versus what's just unmatched takes 45 minutes every Friday. You have three people and a 200-person company's worth of receivables to manage, and the tooling assumes you either have a dedicated AR clerk or a $50k/year collections software contract.

Finance & FP&AFor Small Finance Teams3 apps12 steps~24 min to set up
Outcome

What you'll set up

A live AR aging dashboard that pulls directly from QuickBooks or NetSuite and shows you what's current, 30-60-90+ days overdue, and which customers are repeat late-payers — updated on a schedule, not whenever you remember to export
Automated collections sequences that draft and send follow-up emails for overdue invoices, log responses, and escalate to you when a customer replies with a dispute or payment promise
A reconciliation view that matches open invoices in your ERP against Stripe payouts so you can close the gap between 'invoiced' and 'cash in account' without a manual lookup
The Starch recipe

Apps, data, and prompts

The combination of Starch apps, the data sources they pull from, and the prompts you use to drive them.

Data sources & config

Starch syncs your QuickBooks data on a schedule (invoices, payments, customers, vendors — 20+ entities) and syncs your Stripe data on a schedule (charges, payouts, customers). Gmail is connected on a scheduled sync for the collections email workflow. The AR aging dashboard and reconciliation view query from those synced datasets; the collections email agent reads Gmail threads and sends from your connected Gmail account.

Prompts to copy
Build me an AR aging dashboard pulling from QuickBooks that shows all open invoices grouped by customer and aging bucket (current, 31-60, 61-90, 90+ days), with a column for the last payment date and a flag for any customer with more than $10,000 overdue for 60+ days.
Create an automated collections workflow: every Monday, pull the 60+ day overdue invoices from QuickBooks, draft a follow-up email to each customer referencing their specific invoice numbers and amounts, and queue them for my review before sending. If a customer hasn't responded in 5 business days, draft a second escalation email.
Show me a reconciliation view that compares open invoices in QuickBooks against Stripe payouts in the last 30 days and flags any invoice marked open in QuickBooks where a matching Stripe charge exists.
Run these in Starch → or paste them into your favorite agent
Walkthrough

Step-by-step

1 Connect QuickBooks through Starch's scheduled sync. Within a few minutes, Starch has pulled your invoices, customers, payments, and aging data into its database — no export required.
2 Connect Stripe through Starch's scheduled sync so charge and payout data is available alongside your invoice records. This is what powers the reconciliation view.
3 Connect Gmail through Starch's scheduled sync so the collections automation can read existing threads with customers and send follow-ups from your actual inbox, not a third-party domain.
4 Start from the Investor Reporting app template in the App Store, which already surfaces QuickBooks and Stripe data, then customize it: tell Starch to add an AR aging table grouped by customer and bucket, with a flag column for 60+ day overdue balances above your chosen threshold.
5 Tell Starch to build the collections automation: describe the trigger (Monday morning, or any invoice that crosses 60 days overdue), the email template logic (reference specific invoice numbers and amounts pulled from QuickBooks), and the approval queue so you review drafts before they send.
6 Build the Stripe-to-QuickBooks reconciliation view by describing what you want: open invoices in QuickBooks matched against Stripe charges by amount and approximate date, with unmatched rows surfaced at the top.
7 Set up a Slack notification (Starch connects to Slack on a scheduled sync) to ping your finance channel every Monday with a summary: total AR outstanding, amount in each aging bucket, and the five largest overdue accounts.
8 Run the collections automation for the first time in review mode — Starch drafts emails for every 60+ day account, you review them in a queue, and send or edit before anything goes out.
9 After the first week, tell Starch to adjust the escalation logic based on what you saw: for example, customers with a dispute flag in their last email thread should route to you directly rather than getting an automated second follow-up.
10 Each week, open the AR aging dashboard to review what moved — which accounts paid, which crossed into a new bucket, and whether any new invoices were created that are already past due because of terms mismatches.
11 Use the reconciliation view during monthly close to confirm that Stripe revenue recognized in QuickBooks matches actual payouts to your bank account — flag discrepancies for your bookkeeper before the close is finalized.
12 Once the workflow is stable, use Starch's Runway Analysis app alongside it: AR aging tells you what cash is owed; Runway Analysis tells you what happens to your burn rate if the 90+ day bucket doesn't collect this month.

See this running on Starch

Connect your tools, describe what you want, and the agent builds it. Closed beta is free.

Try it on Starch →
Worked example

March 2026 close — $340K AR outstanding across 42 open invoices

Sample numbers from a real run
Current (0-30 days)142,000
31-60 days overdue89,000
61-90 days overdue67,000
90+ days overdue42,000
Disputed / on hold18,500

Going into March close, your AR aging dashboard shows $340K outstanding across 42 invoices. The $142K current bucket is fine — those are invoices from the last two weeks of February. The $89K in 31-60 days includes three enterprise customers who always pay late but do pay; the collections automation sent them a first follow-up on Monday and two have already replied with remittance confirmations. The $67K in 61-90 days is the problem: two customers totaling $51K haven't responded to any automated follow-up, so Starch has routed those to you for a personal call. The $42K in 90+ includes one $28K account that went into a payment plan in January — the dashboard flags it as 'payment plan active' because you told Starch to tag it that way when you set up the escalation rules. The $18.5K disputed bucket is a single customer who claims one invoice was for work not delivered; that thread is in your Gmail and the email agent has already summarized the dispute history for you. The Stripe reconciliation view caught one mismatch: a $4,200 charge that cleared in Stripe on March 3rd but is still showing as open in QuickBooks because your bookkeeper hasn't applied the payment yet — you forwarded the flagged row to her before the close call.

Measurement

How you'll know it's working

Days Sales Outstanding (DSO) — tracked weekly, not just at quarter-end
AR by aging bucket as a percentage of total outstanding — to catch the mix shifting toward 60+ before it becomes a cash flow problem
Collection rate: what percentage of 30+ day overdue invoices collected within 15 days of first follow-up
Stripe-to-QuickBooks reconciliation gap — dollar amount of charges cleared in Stripe but still open in the ERP at close
Time spent on collections workflow per week — the baseline before Starch is probably 3-5 hours; target is under 1 hour of review time
Comparison

What this replaces

The other ways teams handle this today, and how the Starch version compares.

NetSuite AR module + manual email follow-up
NetSuite's aging report is accurate but static — you still export it, reformat it, and send follow-up emails manually or through a separate tool; Starch adds the automation layer on top of the data NetSuite already has.
QuickBooks + spreadsheet aging tracker
A QuickBooks export into Excel works but goes stale the moment you close the file; Starch keeps the same data live and adds the collections email workflow without a separate tool.
Dedicated AR/collections software (e.g. Versapay, Gaviti, Kolleno)
Purpose-built AR tools have deeper collections workflow features, but they're priced for companies with a dedicated AR team and add another vendor to manage; Starch handles AR aging as one surface alongside your cash forecasting and board reporting in the same platform.
Accounts receivable module in your existing accounting firm's stack
Outsourcing AR follow-up to your bookkeeper or accountant works but adds lag and cost; Starch lets your internal team own the workflow without headcount.
On Starch RECOMMENDED

One platform — investor reporting, email agent, runway analysis all running on connected data. Setup in plain English; numbers stay current via scheduled syncs and live agent queries.

Try it on Starch →
FAQ

Frequently asked questions

Does Starch connect to both QuickBooks and NetSuite, or do I have to pick one?
Both. Starch syncs your QuickBooks data on a schedule and syncs your NetSuite data on a schedule — invoices, payments, customers, journal entries, and more. If your company uses NetSuite for the ledger and QuickBooks for something else, you can connect both and build surfaces that pull from either or both.
The QuickBooks AR aging report I use includes some custom fields we set up. Can Starch pull those?
Starch syncs 20+ QuickBooks entities including invoices, payments, and customers. One honest limit: QuickBooks report views — like the built-in Transaction List or P&L report — are temporarily unavailable due to an upstream connector issue. Entity-level data, which is what powers the AR aging dashboard, syncs normally. If you need a very specific report-view format, describe it to Starch and it will build the equivalent from the underlying invoice and payment records.
Will the collections emails come from my actual Gmail address or some Starch-branded address?
They come from your connected Gmail account. One thing to know: the Gmail OAuth consent screen currently shows the underlying connector's name when you first authorize it, not 'Starch' — that's being fixed and is on the roadmap. Once connected, emails send and receive normally from your address.
We're not SOC 2 certified yet — is Starch?
Starch is not SOC 2 Type II certified today. That's worth knowing before you connect production financial data. If your company's security review requires SOC 2 Type II, Starch isn't the right fit right now.
Can Starch pull historical AR data going back 2+ years for trend analysis?
Starch is built for live data surfaces, not a long-horizon data warehouse. The QuickBooks sync gives you access to current entity data — open invoices, recent payments, customer records — which is enough for an aging dashboard and collections workflow. If you need multi-year cohort analysis or archived data that goes beyond what the sync covers, that's a better fit for a dedicated analytics tool or data warehouse.
What if a customer replies to the automated follow-up with a dispute? Does Starch handle that automatically?
By default, Starch routes dispute replies to your review queue rather than sending another automated response — you define the escalation rules when you set up the workflow. The email agent will summarize the thread for you so you're not reading a 12-message chain before you respond. You can also tell Starch to tag those invoices as 'disputed' in the dashboard so they don't keep triggering the collections sequence.
Can I use this with Stripe even if our invoicing isn't done in Stripe — we invoice in NetSuite and collect via ACH?
Yes. The Stripe sync is separate from the NetSuite sync. If you use Stripe for some revenue streams and NetSuite for others, you can connect both. The reconciliation view is built by describing what you want Starch to match — it doesn't assume Stripe is your only payment source.

Ready to run track ar aging and run collections on Starch?

Request closed-beta access. Everything is free during beta.

You're on the list! We'll be in touch soon.