GL-04 EBS R12.x General Ledger Tier 2 Data Fix

Intercompany Balancing Diagnostic

Detects intercompany journal imbalances, missing due-to/due-from entries, account setup gaps, unmatched trading partner entries, and elimination set completeness for consolidation.

PlatformOracle EBS R12.x
Input RequiredLedger Set or Balancing Segment Value
Diagnostic Checks28+
Data Sources7 Oracle tables
Fix Options3 guided fixes
Backup CreatedYes — Automatic

Why This Fails — and What It Costs

Intercompany accounting in Oracle EBS General Ledger is governed by the balancing segment — typically the Company segment — which must net to zero across all entities in the ledger set for the period to close cleanly. When Company 01 records an expense that requires a recharge to Company 02, Oracle's AutoBalancing feature can generate the offsetting intercompany clearing entries automatically. When it does not — because AutoBalancing is disabled, because the intercompany accounts are not set up, or because a manual journal bypassed the balancing logic — the intercompany clearing account carries a non-zero balance at period end, and the GL period cannot close until the imbalance is resolved.

The intercompany imbalance problem is particularly common in environments where multiple entities share a single Oracle ledger and use manual journal entry for intercompany allocations. A cost allocation journal that debits Company 01 and credits Company 02 correctly handles the intercompany offset within the same journal batch. But when those entries are entered as two separate journal batches — one by the Company 01 accountant and one by the Company 02 accountant — the risk of a mismatch in amount, period, or account combination increases significantly. The result is an intercompany account that does not zero out at period end.

Secondary ledger intercompany differences add a third dimension for organizations using Oracle's multiple representation ledger feature. A transaction that balances in the primary ledger may not balance in the secondary ledger if the conversion rate was applied incorrectly or if the secondary ledger uses a different chart of accounts with different intercompany segment mappings. GL-04 checks balancing in both the primary and any secondary ledgers linked to the primary.

GL-04 runs a complete intercompany balancing diagnostic — intercompany account balance by balancing segment value, unbalanced journal identification by batch and source, AutoBalancing configuration status, intercompany account setup completeness in GL_INTERCOMPANY_ACCOUNTS, secondary ledger balance discrepancy analysis, and elimination entry status for consolidation purposes.

What This Script Diagnoses

GL-04 systematically investigates every major condition that can cause the issue this diagnostic targets. Below is the complete coverage breakdown.

IC Balance by Entity
Intercompany receivable and payable balances by balancing segment value for the period. Net IC position per entity pair. Clearing account balance analysis.
Unbalanced Journal Detection
Journal batches where one entity has an intercompany entry with no corresponding offsetting entry in the partner entity. Identified by batch, source, and amount.
AutoBalancing Configuration
AutoBalancing status per journal source. Sources where IC entries are expected but AutoBalancing is disabled — creating manual balancing risk.
IC Account Setup
GL_INTERCOMPANY_ACCOUNTS completeness for all active balancing segment pairs. Missing account assignments that would prevent AutoBalancing from functioning.
Secondary Ledger Analysis
IC balance discrepancies in secondary ledgers linked to the primary. FX conversion differences between primary and secondary ledger IC positions.

What the Report Looks Like

Representative output showing the diagnostic running against a real-world scenario. The script identifies every condition, states the root cause, and generates the fix.

GL-04 — GL-04 Diagnostic Report
════════════════════════════════════════════════════════════
  ORACLE EBS R12 — INTERCOMPANY BALANCING DIAGNOSTIC
════════════════════════════════════════════════════════════
  Ledger Set         : US Consolidated Ledger Set
  Period             : FEB-2026
  Case Number        : GL-514220
  Report Date        : 24-FEB-2026 15:40:18
════════════════════════════════════════════════════════════

[ SECTION 1 — INTERCOMPANY BALANCE BY ENTITY ]
────────────────────────────────────────────────────────────
  Company 01         : Receivable from IC: +$284,100
  Company 02         : Payable to IC:      -$284,100
  Net Balance        : $0.00 ✓ — Balanced

[ SECTION 2 — UNBALANCED JOURNALS ]           STATUS: ✗ FAIL
────────────────────────────────────────────────────────────
  Batch ID           : JE-BATCH-2026-04481
  Source             : Manual — FEB Allocation
  Company 01 Entry   : Debit $48,200 — 01-900-1200-0000
  Company 02 Entry   : NOT FOUND ✗
  ✗ FAIL: Company 01 entry has no offsetting Company 02 counterpart
  Variance           : $48,200 — Company 01 IC account not zeroed

[ SECTION 3 — AUTOBALANCING CONFIG ]          STATUS: ⚠ WARNING
────────────────────────────────────────────────────────────
  ⚠ AutoBalancing DISABLED for Manual Journals source
  ⚠ Manual IC entries must be entered with offsetting lines

[ SECTION 4 — IC ACCOUNTS SETUP ]             STATUS: ✓ PASS

════════════════════════════════════════════════════════════
  DIAGNOSTIC SUMMARY
════════════════════════════════════════════════════════════
  Intercompany imbalance: $48,200 — Company 02 entry missing
  FIX: Post offsetting journal for Company 02 or enable AutoBalancing
════════════════════════════════════════════════════════════

The Four-Layer Architecture in GL-04

1
Diagnostic Engine
Runs 28+ checks covering intercompany account balance by balancing segment, unbalanced journal identification by batch and source, AutoBalancing configuration status per journal source, intercompany account setup in GL_INTERCOMPANY_ACCOUNTS, and secondary ledger balance discrepancy analysis.
2
Backup Created
Before any journal or balance data is modified, CONS_BACKUP.GL_JE_HEADERS_<case#>, GL_JE_LINES_<case#>, and GL_BALANCES_<case#> are created and row counts verified.
3
Guided Data Fix
Intercompany balancing entries are generated with full backup after Controller authorization. GL-04 calculates the exact clearing entry required per balancing segment and generates the journal in the correct format for GL import.
4
KB Article Generated
Complete KB article generated — entity balances, unbalanced batch reference, clearing entry generated, authorization trail, AutoBalancing configuration recommendation. Upload directly to your knowledge base.

Backup & Rollback for GL-04

Every table touched by GL-04 data fixes is backed up before the first UPDATE fires. Backup is verified by row count. One script restores the original state if needed.

Tables Backed Up — GL-04

CONS_BACKUP.GL_JE_HEADERS_<case#> CONS_BACKUP.GL_JE_LINES_<case#> CONS_BACKUP.GL_BALANCES_<case#> CONS_BACKUP.GL_INTERCOMPANY_ACCOUNTS_<case#>

Backup happens before any DML. Script aborts if backup creation fails.

Pre-Flight Safety Guards

POSTED_FLAG = 'N'Required ✓
ACCOUNTING_EVENT_ID IS NULLRequired ✓
No active session lockChecked ✓
CONS_BACKUP schema accessibleVerified ✓

FIX_BACKUP_REGISTRY Entry

REGISTRY_ID<auto-generated>
CASE_NUMBER<consultant case#>
SOURCE_TABLE<table modified>
ROWS_BACKED_UP<row count>
BACKUP_VERIFIEDYES ✓
ROLLBACK_SQLStored as CLOB
STATUSACTIVE
ENVIRONMENTPRODUCTION

Auto-Generated Knowledge Base Article

This article is produced automatically at the end of every GL-04 execution — written from actual run output. No manual documentation required.

KB-GL-514220-001 · Script: GL-04
Intercompany Imbalance — $48,200 Company 01 Entry Without Company 02 Offset
GL-02 period close readiness flagged intercompany imbalance. GL-04 confirms Company 01 recorded a $48,200 intercompany debit (JE-BATCH-2026-04481) with no corresponding Company 02 credit. IC clearing account balance non-zero at period end.
Manual allocation journal was entered by the Company 01 accountant with only the Company 01 debit line. The Company 02 accountant had not yet entered the corresponding credit — the entries were expected to be entered by each entity separately, but Company 02 missed the deadline.
GL_JE_LINES — BALANCING_SEGMENT_VALUE (Company 01, Batch: JE-BATCH-2026-04481)
GL_BALANCES — PERIOD_NET_DR, PERIOD_NET_CR (IC clearing account, FEB-2026)
Company 02 accountant posted the offsetting $48,200 credit entry. IC clearing account zeroed. Period close readiness check confirmed balanced. AutoBalancing enabled for Manual Journals source to prevent recurrence.
AutoBalancing should be enabled for all journal sources where intercompany entries are expected. GL-04 intercompany balance check should run at period day-minus-5. Monthly intercompany reconciliation meeting scheduled between Company 01 and Company 02 Controllers.
GLIntercompanyBalancing SegmentAutoBalancingGL_INTERCOMPANY_ACCOUNTSPeriod CloseEBS R12.2

What This Script Finds

Imbalance

Missing Partner Entity Entry

Company A records an IC debit with no corresponding Company B credit. GL-04 identifies the unmatched journal batch, the exact variance, and generates the offsetting entry for review.

Config

AutoBalancing Disabled

Manual journal sources with IC entries where AutoBalancing is off — creating systematic risk of period-end imbalances. GL-04 identifies the sources and the IC account configuration needed to enable it.

Aged

IC Balance Over 90 Days

Long-aged intercompany positions indicate unresolved allocations or unmatched reversals. GL-04 flags these with the originating journal reference for investigation.

Secondary

Secondary Ledger IC Discrepancy

FX conversion producing a different IC balance in the secondary ledger versus the primary. GL-04 calculates the conversion difference and generates the correcting entry.

Tables Examined

TableModulePurpose
GL_JE_HEADERSGLJournal batch headers — source, period, status
GL_JE_LINESGLJournal lines — balancing segment, account, amount
GL_BALANCESGLPeriod balances per account combination
GL_INTERCOMPANY_ACCOUNTSGLIC receivable/payable account setup by entity pair
GL_LEDGERSGLPrimary and secondary ledger configuration
GL_PERIOD_STATUSESGLPeriod open/closed status per ledger
GL_CONSOLIDATION_SETSGLConsolidation elimination sets
Decision Framework

How Every Fix Decision Is Made

Before any data is modified in a production Oracle database, AP-01 walks through a four-stage decision process. Every condition identified by the diagnostic maps to exactly one resolution path.

1
First Option — Always
Can the front end fix this?

Oracle's own forms and concurrent programs are always the first option. If the condition can be corrected through Oracle's standard UI — a form, a concurrent program, a setup screen — that path is taken first. No consultant SQL required, no database risk, and the fix is fully supported by Oracle. The diagnostic identifies these conditions explicitly and states the exact front-end navigation path.

✓ Functional Fix
2
When Front End Is Not Available
Is a direct data fix safe to apply?

When the front-end path is unavailable or would require an unacceptable volume of manual steps, a direct fix is evaluated against explicit criteria. All of the following must be true before proceeding:

The fix mirrors exactly what Oracle's own code would have done if the underlying condition were corrected
All dependent tables have been identified and will be updated in the same transaction
The fix is fully reversible — a single INSERT from the backup table restores the original state
The environment patch level has been confirmed against the fix logic version
⚡ Direct Fix
3
Hard Stops — No Exceptions
Does this require Oracle Support?

Certain table areas are never touched directly, regardless of how well the underlying structure is understood. The diagnostic flags these conditions and generates the Service Request documentation:

XLA subledger tablesXLA_EVENTS, XLA_AE_HEADERS — incorrect changes corrupt the subledger audit trail in ways undetectable until period close fails or an auditor requests a reconciliation
Workflow engine tablesWF_ITEMS, WF_ITEM_ACTIVITY_STATUSES — ad-hoc DML can corrupt the workflow engine state instance-wide
Recurring conditions after a fix — indicates a code defect, not a data error. Documented and submitted as a Service Request with a reproducible test case
⚠ Oracle Support
4
For All Approved Direct Fixes
Backup → Execute → Verify → Document

A timestamped backup table is created and row-count verified before the first UPDATE fires. Explicit parameter confirmation is required — the script will not self-execute. After execution, a verification query confirms the expected state. A complete change record — rows affected, before and after values, database username, timestamp — is written to the FIX_BACKUP_REGISTRY and becomes the primary artifact in the knowledge base entry for this incident.

📋 Documented
Condition Identified Resolution Path Notes
Unbalanced intercompany journal — one entity entry missing Functional First Post the offsetting journal entry for the missing entity. GL-04 generates the exact journal line needed — account, amount, and balancing segment — for review and posting.
AutoBalancing disabled for a journal source with IC entries Functional First Enable AutoBalancing for the journal source via GL > Setup > Journal Sources > AutoBalancing. GL-04 identifies which sources are generating IC imbalances that AutoBalancing would resolve.
IC accounts not configured in GL_INTERCOMPANY_ACCOUNTS Functional First Configure the intercompany receivable and payable accounts via GL > Setup > Intercompany Accounts. GL-04 identifies which balancing segment pairs are missing intercompany account assignments.
Secondary ledger IC imbalance — conversion rate discrepancy Direct Fix GL-04 calculates the FX conversion difference and generates a correcting journal in the secondary ledger with full backup. Controller authorization required before posting.
Large IC balance aged over 90 days Functional First Long-aged IC balances indicate unresolved allocations or entries that were reversed in one entity but not the other. GL-04 identifies the originating journal and the expected offsetting entry for resolution.
IC elimination entry not generated for consolidation Functional First Submit the Consolidate Balances concurrent program with elimination sets. GL-04 identifies which entity pairs are missing elimination entries for the current consolidation run.
IC journal in wrong period — one entity in prior period Direct Fix GL-04 identifies the period mismatch and generates the period correction on the GL_JE_HEADERS record with full backup after confirming both periods are open.
Rounding difference in IC balance — sub-cent variance Direct Fix GL-04 calculates the rounding variance and generates a correcting entry for the IC clearing account with full backup and explicit confirmation.
Safeguards

Nothing Executes Without a Safety Net

Before any data fix runs, the script verifies pre-flight conditions and creates a complete verified backup. If any check fails, the script aborts. There is no partial execution path.

Pre-Flight Checks — All Must Pass
POSTED_FLAG = 'N'
Will not modify a posted transaction under any circumstances
ACCOUNTING_EVENT_ID IS NULL
Will not modify rows with an active or pending XLA accounting event
No active database lock
Checks V$LOCK — will not proceed if another session holds a lock on target rows
CONS_BACKUP schema writable
Backup schema must be accessible before any DML is permitted
Explicit confirmation required
Script outputs a confirmation prompt — DML does not execute until consultant enters the case number as the execution parameter
Backup Methodology

Before the first UPDATE fires, the script creates a complete copy of every row to be modified. Tables are named CONS_BACKUP.<TABLE>_<CASE#> and persist permanently after execution.

GL_JE_HEADERS
GL_JE_LINES
GL_BALANCES
GL_INTERCOMPANY_ACCOUNTS
Row count verified after backup creation. If backup fails for any reason the script aborts without executing any DML. Rollback is a single INSERT from the backup table. No reconstruction required.
GL-04 — Pre-Flight & Backup Verification
════════════════════════════════════════════════════════════
  PRE-FLIGHT SAFETY CHECK
════════════════════════════════════════════════════════════
  Ledger Set         : US Consolidated Ledger Set
  IC Imbalance       : $48,200 — Company 01 vs Company 02
  CONS_BACKUP Schema : Accessible ✓
  Session Lock Check : No locks on journal lines ✓
────────────────────────────────────────────────────────────
  ALL PRE-FLIGHT CHECKS PASSED
════════════════════════════════════════════════════════════
  Creating : CONS_BACKUP.GL_JE_LINES_514220
  Rows     : 2 rows backed up ✓
  Creating : CONS_BACKUP.GL_BALANCES_514220
  Rows     : 4 rows backed up ✓
  Registry : FIX_BACKUP_REGISTRY — ID 4122 created ✓
────────────────────────────────────────────────────────────
  BACKUP COMPLETE
════════════════════════════════════════════════════════════
  Enter case number to confirm : 514220
  Confirmed.
════════════════════════════════════════════════════════════
Knowledge Base

Every Execution Produces a Record

The knowledge base article is generated automatically from the script's execution output. No manual documentation required. It becomes the institutional record — for the team, for auditors, and for every future engagement in the same environment.

Zero Manual Effort
Every field — environment, tables, before/after values, backup reference, root cause, prevention — is generated from actual execution output. Nothing is written by hand.
Patterns Surface Over Time
The first engagement produces findings. The third produces patterns. Recurring conditions that are invisible as individual incidents become obvious as knowledge base trends.
Survives Staff Turnover
The knowledge base is an institutional record of the Oracle environment. A new manager, a new DBA, or an external auditor can read exactly what happened, what was done, and what prevents recurrence.
KB-GL-514220-001
Intercompany Imbalance — $48,200 Company 01 Entry Without Company 02 Offset
EBS R12.2.10 · General Ledger
● RESOLVED
Symptom
GL-02 period close readiness flagged intercompany imbalance. GL-04 confirms Company 01 recorded a $48,200 intercompany debit (JE-BATCH-2026-04481) with no corresponding Company 02 credit. IC clearing account balance non-zero at period end.
Root Cause
Manual allocation journal was entered by the Company 01 accountant with only the Company 01 debit line. The Company 02 accountant had not yet entered the corresponding credit — the entries were expected to be entered by each entity separately, but Company 02 missed the deadline.
Tables
GL_JE_LINES — BALANCING_SEGMENT_VALUE (Company 01, Batch: JE-BATCH-2026-04481)
GL_BALANCES — PERIOD_NET_DR, PERIOD_NET_CR (IC clearing account, FEB-2026)
Fix Applied
Company 02 accountant posted the offsetting $48,200 credit entry. IC clearing account zeroed. Period close readiness check confirmed balanced. AutoBalancing enabled for Manual Journals source to prevent recurrence.
Prevention
AutoBalancing should be enabled for all journal sources where intercompany entries are expected. GL-04 intercompany balance check should run at period day-minus-5. Monthly intercompany reconciliation meeting scheduled between Company 01 and Company 02 Controllers.
Tags
GLIntercompanyBalancing SegmentAutoBalancingGL_INTERCOMPANY_ACCOUNTSPeriod CloseEBS R12.2

Oracle Documentation References

References the Oracle public documentation for this diagnostic area. These links open directly on docs.oracle.com.

R12 Guide (PDF)Title & ChapterDetail
120glug.pdfOracle General Ledger User's Guide — Intercompany AccountingIntercompany balancing rules, due-to/due-from accounts, and elimination setup
120glug.pdfOracle General Ledger User's Guide — Period CloseIntercompany imbalance identification as period close prerequisite
120funmo.pdfOracle Applications Multiple Organizations Implementation Guide — IntercompanyAdvanced Global Intercompany System (AGIS) setup for multi-entity balancing

Ready to Resolve This in Your Environment?

GL-04 is one of 65 diagnostic scripts covering every major Oracle EBS and Fusion module. William A. Green Consulting runs the script in your environment, applies guided data fixes, and builds the knowledge base that prevents the same issues from recurring.

Schedule a Discovery Call → ← View All 65 Scripts

See this script run autonomously — Oracle AI Platform →