Knowledge BaseData IntegrityTrial Balance Cross-Check
Updated 2026-04-12

Trial Balance Cross-Check

How VersionForge reconciles source totals against target totals after every sync to catch discrepancies before they reach your planning models.

Why Cross-Check Exists

A sync that completes without errors is not the same as a sync that is correct. Rows can be silently dropped, transforms can misfire, and rounding can accumulate. The trial balance cross-check is VersionForge's final verification gate -- it proves that the numbers in your planning target actually tie back to the source.

How It Works

After every load completes, VersionForge runs a three-step reconciliation automatically:

  1. Aggregate source totals -- Sum the GL amounts from the extracted snapshot, grouped by the dimensions you configure (typically account, period, and entity).
  2. Aggregate target totals -- Query the target system for the same grouping and sum the loaded values.
  3. Compare with tolerance -- Calculate the absolute variance between source and target for each group. If every variance falls within the configured tolerance, the check returns PASS. If any variance exceeds tolerance, the check returns FAIL.

The result is attached to the sync run and visible on the Verification tab.

A Real Example

Suppose your sync loads general ledger data for March 2026 into Adaptive Planning. After the load:

| Metric | Value | |--------|-------| | Source total (NetSuite GL extract) | $4,892,341.00 | | Target total (Adaptive sheet sum) | $4,892,341.00 | | Variance | $0.00 | | Tolerance | $1.00 | | Result | PASS |

The cross-check confirms that every dollar extracted from NetSuite arrived in Adaptive. No rows were dropped, no transforms introduced rounding drift, and no data was lost in transit.

What Happens on FAIL

When the variance exceeds tolerance, VersionForge takes immediate action:

  • The sync run is flagged with a red verification status visible on the dashboard.
  • Notifications fire to the configured alert channels (email, Slack, or webhook) with the variance amount and affected dimensions.
  • Subsequent scheduled syncs pause for that profile until the discrepancy is reviewed and resolved.

A FAIL result does not roll back the load -- the data is already in the target. The flag ensures your team investigates before the next cycle runs and before downstream consumers trust the numbers.

Configuring Tolerance

Tolerance is set per connector and per version in your sync profile settings:

verification:
  crossCheck:
    enabled: true
    tolerance: 1.00        # absolute dollar amount
    groupBy:
      - account
      - period
      - entity

You can configure different tolerances for different sync profiles. A high-volume revenue sync from Stripe might use a $5.00 tolerance to account for in-flight transactions, while a headcount sync from Workday might use $0.00 because the numbers must be exact.

Tolerance is applied per group, not as a grand total. If you group by account and period, each account-period combination must independently pass the tolerance check.

Audit Trail

Every cross-check result is persisted and queryable:

  • Run ID, timestamp, and operator who triggered the sync
  • Source and target totals for each dimension group
  • Variance per group with PASS/FAIL status
  • Tolerance that was in effect at the time of the check

This audit trail is immutable. Even if you later change the tolerance configuration, historical results reflect the tolerance that was active when the check ran. Auditors can trace any number in the planning model back through the verification record to the source extraction.

Built by Vantage Advisory

VersionForge is built by the team at Vantage Advisory Group — consultants who have spent years implementing Workday, NetSuite, Stripe, Salesforce, Adaptive, and Pigment integrations for finance, RevOps, and workforce-planning teams. We built the product we kept wishing existed.

See It Running on Your Own Data in 30 Minutes

Book a walkthrough with the founding team. Bring your messiest data pipeline — GL close, MRR reconciliation, or headcount plan. We'll show you how VersionForge handles it.