Every Sage X3 subledger has a matching control account in the general ledger. Supplier invoices, customer invoices, depreciation, and stock movements all post through automatic journals into those accounts, and the intent is that the account balance always equals the detail behind it. When it does not, the close slows down, the auditors ask for a reconciliation schedule, and the finance team starts rebuilding the answer in a spreadsheet each month.
The good news is that these differences are structural, not mysterious. A control account only diverges from its subledger for a small number of reasons: something was posted into the account without going through the subledger, something was recorded in the subledger and never reached the ledger, or the two sides landed in different periods. The work is figuring out which of those three it is, in which area, and for which amount.
This page walks through what the symptom looks like in each subledger, what causes it, and a reconciliation sequence you can run at any period end. It stays deliberately general on version-specific screen behaviour — control-account handling, automatic journals, and reconciliation inquiries vary by version, patch level, and localisation, so confirm the exact behaviour in your own folder before drawing conclusions.
Symptoms by area
The same underlying fault shows up differently depending on where it lands. Working area by area is faster than working the whole trial balance at once, because it tells you which population of documents to interrogate.
Accounts payable
The AP control account balance does not equal the total of open supplier items. Typical tells: a round-number difference that appeared in a single period (a manual journal booked straight to the control account), a difference equal to one invoice (a document posted in the subledger but sitting in an error or pending state on the accounting side), or a drift that grows every month (an accounting code or automatic journal sending part of the posting somewhere unintended). Prepayments and supplier credit notes posted outside the normal flow are frequent contributors.
Accounts receivable
The AR control account does not tie to the open customer items list. Look first at write-offs, credit notes, and cash applications entered as journals rather than through the receivable functions, then at deposits and unapplied receipts, which can legitimately sit in a different account and are often mistaken for a variance. Recurring differences in AR are also caused by invoices validated near a period boundary where the accounting date and the document date fall on opposite sides of the close.
Fixed assets
The asset register — cost, accumulated depreciation, and net book value by asset — does not agree with the corresponding GL accounts. The usual causes are assets capitalised by journal entry instead of created in the register, disposals recorded in accounting but not in the register (or vice versa), depreciation calculated but not posted for a period, and differences between accounting plans where only one plan feeds the ledger. Because depreciation is periodic, a fixed-asset difference tends to repeat every month at exactly the same amount once it starts.
Inventory
Stock valuation does not equal the inventory GL account. This is a large topic on its own — valuation method, movement posting, and period timing all contribute — so treat it as a separate workstream and work it through the detailed stock-to-GL reconciliation page rather than inside the AP/AR reconciliation.
Isolate one area before starting. A single reconciliation that tries to explain AP, AR, assets, and stock simultaneously usually produces a number nobody trusts.
Common causes
Across engagements, the same handful of causes explain the large majority of subledger differences. Most are process or configuration issues rather than product defects, which is why the variance returns after a corrective journal unless the cause is fixed.
Manual journals posted directly to control accounts
The single most common cause. A correcting journal booked straight into the AP, AR, or asset control account moves the ledger without touching the subledger, so the two can never agree again. Control accounts should be restricted from direct entry, and corrections should be made through the subledger function that owns the balance.
Entries created but not interfaced or posted
Documents can be recorded in the subledger and stop short of the ledger — temporary journals awaiting final posting, entries in error status, or an interface batch that failed partway. The subledger looks complete, the ledger is short, and nothing in the trial balance shows why.
Period and date mismatches
Where a document date, an accounting date, and a due date differ, a document can appear in the subledger population for one period and in the ledger for the next. This produces differences that reverse themselves the following month, which is a strong diagnostic clue in itself.
Unposted, simulated, or temporary entries in the comparison
Reconciling a ledger balance that includes non-final entries against a subledger listing that excludes them (or the reverse) creates a difference that has nothing to do with data quality. Fix the definition of the comparison before investigating the amount.
Currency and revaluation differences
Foreign-currency documents carry a transaction amount and a ledger amount. Revaluation and conversion differences that post to one side, or to a gain/loss account only, will separate a control account from a subledger listed at a different rate. Always confirm which currency each side of the comparison is expressed in.
Custom code and imports bypassing standard posting
Interfaces, mass-import utilities, and custom programs that write accounting entries or subledger documents without following the standard posting path are a recurring source of one-sided records. They are also the hardest cause to see, because the resulting entries look ordinary in every screen.
Two causes can coexist. A small permanent difference from a configuration issue often hides behind a large timing difference, and the small one only becomes visible once the timing item clears.
A reconciliation sequence that works
- 1. Fix the scope of the comparison
Choose one subledger, one company or site, one ledger, one currency, and one period end. Write down which accounts you are including. Half of all failed reconciliations are scope problems, not data problems.
- 2. Take both balances from the system, not from a spreadsheet
Pull the control account balance from the ledger inquiry and the subledger total from the standard open-items or register report at the same period end and the same posting status. Reuse of last month's workbook carries last month's assumptions.
- 3. Quantify and date the difference
Compare the difference across several consecutive periods. A constant amount points to a historical one-off; a growing amount points to a configuration or process issue that repeats; an amount that reverses next period points to timing.
- 4. Screen the control account for non-subledger entries
List entries in the control account by journal or entry type and isolate anything that did not originate in the subledger. Manual journals here are both the most common cause and the easiest to confirm.
- 5. Look for documents that stopped short of the ledger
Review the subledger for documents in error, pending, or temporary status, and check interface or batch logs for failed postings. These explain differences where the subledger is ahead of the ledger.
- 6. Test the period boundary
Re-run both sides one period earlier and one period later. If the difference disappears at a different cut-off, you are looking at accounting-date treatment rather than missing data.
- 7. Check the posting configuration behind the amount
Trace a sample transaction of the type involved through its automatic journal and accounting codes, and confirm where each line is intended to land. A configuration that splits a posting unexpectedly reproduces the variance every month.
- 8. Separate the explained from the unexplained
Build a short schedule: opening difference, items explained by timing, items explained by manual journals, items explained by failed postings, and a residual. The residual is the only part that needs further investigation.
- 9. Correct through the owning function, then re-run
Re-process failed postings, reverse improper journals, and correct configuration before booking any adjustment. Then reproduce the reconciliation from step two so the correction is evidenced rather than assumed.
- 10. Lock the control accounts and make the procedure repeatable
Restrict direct entry to control accounts, document the reconciliation as a standard close step with a named owner, and keep the schedule format stable month to month so the next difference is visible immediately.
When this becomes a consulting engagement
- The difference has been carried forward for several periods and nobody can say what it represents.
- Reconciliation takes days of manual work every close and the schedule is rebuilt from scratch each time.
- The same variance reappears after being adjusted, which means the cause is configuration or process, not the entry.
- More than one subledger is out of balance at the same time, or the difference spans companies, sites, or currencies.
- Auditors have asked for a control-account reconciliation the team cannot produce from the system.
- Custom code or an interface is suspected of writing entries outside the standard posting path.
Work of this kind is usually short and well defined: a senior consultant reconstructs the reconciliation from the system, identifies and quantifies each contributing cause, corrects the configuration or process that keeps producing it, and leaves behind a close procedure the finance team can run without help. The objective is not a single clean month — it is a control account that stays reconciled.
Questions we get asked
Should we just post an adjusting journal to clear the difference?
Not before the cause is identified. An adjustment to a control account moves the ledger without moving the subledger, so it either hides the problem or widens it next period. Correct the cause first, then adjust only the residual you can explain — and document what it represents.
Can control accounts be locked against direct journal entry?
In general terms yes: accounts can be configured so that ordinary users cannot post directly to them, forcing corrections through the subledger. The exact settings and their side effects depend on your version and localisation, so test the restriction in a non-production folder before applying it, and confirm no legitimate process relies on direct entry.
Why does the same difference appear every month?
A repeating, identical amount almost always means a historical one-sided entry carried forward in the opening balance. A repeating amount that grows means something in the posting configuration or a recurring process is producing the difference each period. The two need different fixes, so distinguish them before investigating.
Is a small difference acceptable?
Rounding on foreign-currency documents can produce genuinely immaterial differences, and many organisations set a tolerance for them. What is not acceptable is a tolerance used as a place to hide unexplained amounts — the residual should be understood even when it is not worth correcting.
How long should a reconciliation take once the process is in place?
With the comparison defined, the right system reports identified, and control accounts restricted from direct entry, most subledger reconciliations become a review of a short exception list rather than a rebuild. Teams typically move from days to under an hour per subledger, though the first cleanup is longer.
Does inventory belong in this reconciliation?
Treat it separately. Stock valuation involves valuation methods, movement timing, and variance postings that behave differently from AP and AR documents, and mixing it into the same schedule usually obscures both. Reconcile stock to the GL on its own, then reconcile the remaining subledgers.
Where to go next
- Sage X3 Inventory Valuation and Stock-to-GL Reconciliation
The detailed treatment of stock valuation and the inventory control account.
- Sage X3 Bank Reconciliation
Cash-side reconciliation, statement imports, and unmatched items.
- Sage X3 Fixed Assets Implementation
Asset register setup, depreciation plans, and how assets reach the ledger.
- Finance and Accounting Services
How we work on close, control accounts, and financial reporting in Sage X3.
- Sage X3 Support
Senior support and managed services for existing Sage X3 environments.
