A control account summarizes a subledger. Accounts Payable in the GL equals the total of every open vendor bill; Accounts Receivable equals every open invoice; Retainage Receivable equals the retainage held on every pay app. Because the detail lives in the subledger, control accounts should only be posted from the subledger: by bills, invoices, payments and receipts, not by manual journal entries.
Why it matters
If someone posts a manual entry to AP, the GL balance no longer equals the aging, and nobody can say which vendor the difference belongs to. Tie-outs between control accounts and subledgers are a standard close task and audit test.
Worked example
A manual entry Dr Accounts Payable $500 / Cr Cash $500 is refused: the payment has to go through a vendor payment, so the AP aging and the GL move together.
Common mistakes
- Allowing manual JEs to control accounts “just this once”.
- Reporting retainage inside regular AR or AP, so neither ties.
How os.construction handles it
In the accounting preview, accounts carry a control flag and system role, and manual journal entries to them are refused. The subledger reconciliation report compares control accounts with their subledgers when you run it; there is no nightly job. See Security and controls.