SOPs
Purpose
Output Systems runs on a small number of predictable dollars. This SOP is the routine that keeps them predictable — invoicing on time, collecting without drama, reconciling monthly, and never having to think about billing during client work.
Owner and status
Curtis owns this SOP for the current phase (single-operator). Status: approved. Reviewed on the last business day of each quarter.
The monthly cycle
-
1st of the month — generate invoices. All retainer clients invoiced on the 1st, due on receipt (Net 0). Project clients invoiced on milestone completion, Net 15. Every invoice references the engagement letter, includes a one-line summary of what was delivered the prior month, and links to the client's Command Center portal if they want to see the receipts.
-
1st of the month — send the monthly report. Every retainer client receives a one-page monthly summary: what got done, what's next month's focus, one metric that moved. This is the thing that gets your invoice paid without a chase email.
-
5th of the month — reconcile the prior month. Match Stripe deposits to invoices in QuickBooks. Reconcile the RBC operating account. Any exception (client paid short, wire didn't arrive, refund pending) becomes an entry in the Financials module and a task with a 5-day due date.
-
10th of the month — first collection nudge. For anyone unpaid by day 10, send a soft nudge from the shared billing inbox (not the founder's email — this preserves the relationship for the strategic conversations). Template: "Just following up on invoice #X, please let me know if there are any questions."
-
15th of the month — direct principal call for anything still open. Founder-to-founder phone call, no email. Usually reveals a real issue (invoice went to spam, ACH bounced, they're unhappy about something). Address the real issue, don't re-send the invoice again.
-
End of month — close the books. Categorize every expense, tag any client-billable, run a P&L and a cash flow statement, update the Financials module with MRR, active client count, pipeline weighted value, and cash on hand. Save the P&L to Documents.
Quarterly
-
End of quarter — repricing review. Any client engagement approaching renewal? Book a repricing conversation 45 days before renewal date. Any client over-serviced (i.e., delivering more than the contract calls for) gets a real conversation about scope or pricing before renewal, never at renewal.
-
End of quarter — tax provisioning. Move 30% of net income to the tax reserve account. Non-negotiable. Do not touch this account for any other purpose.
Setup rules
- Every retainer client has a Stripe subscription set to auto-charge on the 1st. Every project client has manual invoices.
- Currency is CAD for Canadian clients, USD for US clients. Cross-currency invoices carry the exchange rate on the invoice as a note.
- Refund policy: pro-rated to the day of cancellation, refunded within 5 business days. Never argue about a refund — refund fast, learn slowly.
- Chargebacks: dispute every single one with delivery evidence (meeting notes, deliverable timestamps, emails). Chargeback fraud on service businesses is real.
Edge cases
- Client wants to pay by cheque. Fine. Add 10 days to the due date and note it in the engagement letter next time.
- Client wants to renegotiate mid-engagement. Never do it mid-cycle. Say "let's address at renewal" and mean it.
- Discovery client wants to prepay a year for a discount. 10% off for annual prepay, no more. Never lock in more than 12 months.
- Client is 45+ days late. Pause services until paid. Send the letter. Do not ghost them — a pause with an explanation is a strategy; a ghost is a mess.
Success criteria
- 95%+ of invoices paid within 15 days.
- Zero write-offs in a rolling 6-month window.
- Books closed within 5 business days of month-end.
- Tax reserve funded to 30% every quarter without shortfall.
Related SOPs
- New Client Discovery and Proposal SOP (pricing is set at proposal)
- Client Onboarding SOP (first invoice is triggered at signature)