PURPOSE
The bookkeeper's recurring monthly procedure for closing a single accounting client's books — bank rec, transaction review, AI anomaly review, manual review, financial statements publish, invoice. This is the canonical recurring operation for accounting clients post-Go-Live.
WHEN TO USE
- Recurring monthly (or quarterly / yearly per client preference) — runs after the close period ends
- Auto-rollover: on the LAST DAY of each month, system auto-creates next month's close in "Submitted" stage
- Manual trigger: bookkeeper opens new period from Monthly Close pipeline if rollover hasn't fired
ROLES INVOLVED
- Primary owner: Bookkeeper assigned to client
- Reviewer: Accounting Manager
- Approver: Partner (for client-facing publish)
- Client: responds to Final Review questions via portal
PREREQUISITES
- Client past Go Live (SOP-002 complete)
- All Pre-Close items received OR escalated for the period
- Bank statements available (uploaded by client OR fetched via read-only access from Vault)
- QBO / Xero connection healthy (token not expired)
PROCEDURE
1. Open the per-client Month-End Close process (Monthly Close pipeline → click client card; M-020)
2. Stage 1 — Bank Feed Code: confirm all transactions categorized; review uncategorized transactions with auto-categorization suggestions
3. Stage 2 — Custom Tasks: complete any client-specific recurring tasks (e.g. journal entries, accruals)
4. Stage 3 — Pre-Close Checklist review: verify each item has its source confirmed (🔒 Login → reconcile via vault credential; ⬆ Upload → confirm document received; 📅 Schedule → confirm amortization attachment present)
5. Stage 4 — Bank Rec: reconcile each bank account / CC / loan to source statement; balance check passes
6. Stage 5 — JEs & Close: post recurring monthly JEs (depreciation, prepaid amortization, payroll accruals); confirm Trial Balance balanced (Total Debits = Total Credits)
7. Stage 6 — AI Review: run AI Anomaly Detection (M-023) — Transaction Level Review (Transactions Without Payee, Expense Inconsistency, Uncategorized) + Payee/Entity Review (Newly Added Vendors, Duplicate Vendors, Duplicate Customers)
8. Review AI findings: approve auto-merges of confident duplicates; flag uncertain ones for manual review; correct miscoded transactions
9. Stage 7 — Manual Review (Manager): manager reviews AI findings + bookkeeper's work; sends unresolved questions to client via Final Review tab (portal + Excel email dual delivery)
10. Client responds to Final Review questions via portal → AI re-evaluates → updates COA if confident, else flags for user
11. Stage 8 — Ready to Send: generate financial statements (P&L, Balance Sheet, Cash Flow) via Reports tab; ratios + trend analysis included; cover page + graphics
12. Partner approves; click Publish → PDF report package + Excel from QB → both saved to Reports folder for that month (per M-030 folder structure)
13. Stage 9 — Submitted: financial statements posted to client portal preview; recurring monthly invoice auto-generated (if not already); engagement marked Submitted
14. Auto-rollover fires on last day of month: next period created in "Submitted" stage placeholder; bookkeeper begins from step 1 again
DECISION POINTS
- If trial balance out of balance: stop at JEs & Close stage; correct before proceeding; do NOT publish
- If AI flags Material Weakness-class anomaly (e.g. revenue recognition timing): escalate immediately to manager + partner; document in Findings if applicable
- If client doesn't respond to Final Review questions in 7 days: send reminder; at 14 days, partner outreach
- If client portal locked due to unpaid invoices (3+): financials hidden from preview but close work continues internally; see SOP-008 for unlock procedure
EDGE CASES
- Multi-entity client: separate Client records, separate close per entity, but inter-entity balance check needed at consolidated level (design intent flag — may not be fully automated)
- Mid-month staff change: re-assign bookkeeper via Settings; current period transferred; audit log captures handoff
- Bank Feed shows hardcoded sample data: HONEST STATUS — was a known issue in v44; verify TrialBalanceTab is using real QBO/Xero API per latest fix before relying on the feed
- Closed-year period: locked from edit; if amendment needed, document via separate adjustment engagement with partner approval
- "Unprocessed should be empty every day" — operational SLA from M-030; not enforced by system; bookkeeper monitors
KPIS / QUALITY CHECKS
- Time to close after period end: target 5-10 business days for monthly cadence
- Trial Balance balanced on first attempt rate: >90% (signals data quality from feed)
- AI findings resolved before Final Review: >80% (high resolution rate signals good initial data)
- Client response rate to Final Review questions within 7 days: >75%
- Financial statements published before next period close (no overlap): 100%
RELATED MODULES & SOPS
- Modules: M-020 Monthly Close · M-021 QBO/Xero · M-017 Trial Balance · M-023 AI Anomaly · M-022 AI Brain · M-029 Reports · M-007 Client Portal · M-009 Tasks · M-030 Storage · M-010 Billing
- SOPs: SOP-002 (accounting client onboarding — predecessor) · SOP-008 (portal lock handling) · SOP-009 (escalation for missing client docs) · SOP-012 (compliance evidence)
NOTES
- Reference framework for AI Auto-Review: DoubleHQ (cited multiple times in design intent)
- "AI is sure" threshold for auto-merge of duplicates: NOT EXPLICITLY DOCUMENTED — bookkeeper should review auto-merges in first 1-2 close periods before trusting silently
- "Reports & AI" tab inside per-client Monthly Close subsumes accounting reports for that client (cross-client reports stay in M-029)
- Implementation folder is OUT-OF-YEAR (separate from year folders) per M-030 design