Now accepting guest editorial from SAP, Oracle, Workday and ServiceNow practitioners.Pitch a guide
The Sign-Off Table

Lesson 3 of 5

Reconciliation design

13 min

Listen to this lesson

0:00 / 15:25

Reconciliation proves completeness and correctness in bulk: what left the source arrived in the target, with the same counts and values, except for differences that are explained and approved. It is the migration equivalent of an accountant tying out a ledger, and finance owners will not sign without it.

Three kinds of checks

CheckWhat it comparesAlternadores del Norte exampleCatches
CountNumber of records per object and key dimensionCustomers per sales area; open PO items per plantMissing or duplicated records
SumTotals of amounts and quantities per dimensionOpen AR by company code and currency; stock quantity and value by plant and storage locationWrong amounts, signs, currencies
Key attribute and sampleField values for important attributes, for all records or a samplePayment terms, bank details, tax numbers, product valuation classWrong values that totals hide
Reconciliation checks. Counts and sums cover everything; attribute checks catch errors that cancel out in totals.
The Sign-Off Table · thesignofftable.com/academy/sap-tst-308

Where to reconcile

Reconcile at each hand-off, so that a difference points directly at the stage that caused it: source to extract (did we extract what the selection rule says?), extract to staging (did transformation keep or explain every record?) and staging to target (did the load post everything?). A single source-to-target comparison tells you that something is wrong but not where.

  1. Source (legacy ERP)Counts and totals from the source as of the cutover key date
  2. ExtractReconcile to source; differences = selection rules
  3. StagingReconcile to extract; differences = transformations, merges, exclusions
  4. Target (SAP S/4HANA)Reconcile to staging; differences = load rejects
  5. ExplainedEvery difference listed with reason and owner approval
Reconcile at every hand-off so differences point to their cause.
The Sign-Off Table · thesignofftable.com/academy/sap-tst-308

Designing the financial reconciliation

Finance objects need the most precise design, agreed with Dan before Mock 1. For the Alternadores del Norte load:

  • Open receivables and payables: count of open items and sum of open amounts per company code, currency and customer or supplier, source against target. Display the target with customer and supplier line item reports (for example FBL5N and FBL1N in SAP GUI, or the Manage Customer Line Items and Manage Supplier Line Items apps).
  • Inventory: quantity and value per product, plant and storage location (for example with MB52, or the stock apps in Fiori), compared with source stock on the key date.
  • G/L balances: the trial balance by G/L account for company code 1910, mapped from the legacy ERP's accounts to Contoso's chart of accounts, so that the opening balances in company code 1910 equal the legacy ledger's.
  • Migration clearing accounts: zero after all financial objects are loaded. Any residual means a gap or a double count.

Tolerances and explained differences

Agree up front what difference is acceptable per check. For financial values the usual tolerance is zero, after explained items. For counts, differences are normal when selection rules exclude records or duplicates are merged; the requirement is that every difference is listed with its reason. Record each reconciliation as: check, source figure, target figure, difference, explanation, owner approval. That table is the core of the migration evidence.

Check (Mock 3)SourceTargetDifferenceExplanation
Customers, sales area 1910 / 10 / 001,9461,943−33 merged duplicates per approved rule
Open AR, company code 1910, MXNMXN 48,615,320.40MXN 48,615,320.400–
Stock ADN-200, plant 19102,300 pc / MXN 6,210,000.002,300 pc / MXN 6,210,000.000–
Open PO items, plant 1910612610−22 items fully received before key date; source extract timing; approved

Extract from the Alternadores del Norte reconciliation log. Numbers are fictional.

What would you do?

In Mock 3 of the Alternadores del Norte load, open AR for company code 1910 matches in total, but a per-customer comparison shows Flotillas Monterrey S.A. de C.V. MXN 12,400 higher in the target and another customer MXN 12,400 lower. What should Priya do?

Make reconciliation repeatable

Reconciliation runs in every mock and again on go-live weekend, at three in the morning, under time pressure. Build it once and reuse it. Prepare source and target reports with the same dimensions (company code, currency, plant, customer, supplier, G/L account), in the same layout, so that comparison is mechanical. Keep the queries or report variants under version control with the mapping specification, and test them in Mock 1 alongside the data. On the weekend, the job should be to run the prepared reports and read the differences, not to design checks.

Also agree with Luis where reconciliation sits in the cutover plan. Some checks, such as counts after each object load, run immediately; financial reconciliation runs after all finance objects are loaded. Each check gets a time slot, an owner and a decision point, because a difference found late in the sequence can force earlier objects to be reloaded.

Key points
  • Use count, sum and key-attribute checks; each catches different errors.
  • Reconcile at every hand-off: source to extract, extract to staging, staging to target.
  • Financial objects: open items per customer and supplier, stock per product and location, G/L by account, clearing accounts to zero.
  • Agree tolerances in advance; list every difference with an explanation and owner approval.

Check your understanding · not graded

Lesson check

  1. 1. Which reconciliation check proves open AR balances migrated correctly in total?

  2. 2. Why reconcile at each hand-off rather than only source to target?

  3. 3. Why reconcile per customer as well as in total?

  4. 4. What should migration clearing accounts show once all financial objects are loaded?