# GL period will not close: unposted or unaccounted journal batches

> Source: https://netray.co/erp-help/ebs-gl-period-close-unposted-journals-error
> Publisher: Netray (netray.co), AI and integration engineering for ERP and manufacturing systems.
> Section: ERP Help

## Short answer

Oracle EBS General Ledger blocks a period close whenever unposted journal batches, unaccounted subledger transactions, or pending mass allocations still reference that period. Run the Unposted Journals and Period Close Exceptions reports to find the offending batches, then post or reverse them before retrying the close.

## Kind

error

## System

oracle-ebs

## Erp

Oracle E-Business Suite (R12 General Ledger)

## Module

General Ledger / Period Close

## Query

You cannot close this period, there are unposted journal batches

## Alternate Queries

- EBS GL period close error unposted journals
- GL close period unaccounted transactions error
- Oracle EBS cannot close period fix

## Applies To

Oracle E-Business Suite R12.1 and R12.2 General Ledger, applies similarly to 11i

## Steps

### Clear a blocked GL period close

**Items:**

Navigate to General Ledger > Reports > Run and submit the Unposted Journals and Suspense Journals Report for the period you are trying to close.

From Setup > Financials > Close Cycle Forecast, or Period Close screen, run the Period Close Exceptions report to see which subledgers (AP, AR, PA, FA) still have unaccounted transactions.

For subledger transactions, run each subledger's Create Accounting process in Final mode with 'transfer to GL' enabled, then re-run GL Journal Import if any entries are stuck.

For journal batches showing as Unposted in GL, open Journals > Enter, query the batch, and either complete and post it or reverse/delete it if it was created in error.

Check for journal batches with a status of Error - these usually failed posting due to an invalid or disabled account combination and need the account fixed and the batch re-posted.

If a subledger period will not close because of unprocessed transactions (e.g. unmatched AP invoices, unapplied AR receipts), resolve those in the subledger before GL will accept the close.

Once all exceptions clear, close the period from Setup > Financials > Open/Close Periods and confirm the status changes to Closed.

## Sections

### How the GL close-period validation actually works

**Body:**

When you attempt to close a GL period, Oracle runs a validation pass that checks three things: no journal batches in Unposted or Error status reference the period, no subledger has unaccounted transactions still pointing at that period (via the subledger accounting event model), and no encumbrance journals are outstanding if budgetary control is enabled.

The error message is intentionally blunt because it is a hard stop, not a warning - EBS will not let a period close with a gap between the GL trial balance and the subledgers, since that gap is exactly what causes reconciliation problems weeks later during audit.

### Subledger accounting is usually the real cause

**Body:**

In R12, most 'unposted journal' close blocks actually originate in a subledger (Payables, Receivables, Projects, Fixed Assets) that has not run Create Accounting in Final mode for the period, so its accounting events never made it into GL as journal entries at all.

Check each subledger's own period-close status first (Payables > Control > Accounting > Period Close, similarly for AR and FA) - a subledger period cannot itself close with unaccounted or unprocessed transactions, and until it closes, GL will keep finding the gap.

**Code:**

- SELECT je_header_id, name, status, period_name
FROM gl_je_batches
WHERE period_name = '&period_name'
AND status <> 'P';

### Recurring and mass allocation journals

**Body:**

A second common cause is a recurring journal formula or a mass allocation batch that was generated but never completed and posted - these sit silently in Unposted status until someone notices at month end.

Check Journals > Enter > Find with a status filter for Unposted and Incomplete across all sources, not just Manual, since MassAllocation, Recurring, and interfaced sources (e.g. Payroll, custom interfaces) are just as likely to leave orphaned batches behind.

## Pitfalls

- Force-closing via direct table updates instead of resolving the underlying batches - this corrupts the trial balance and causes reconciliation failures that are far harder to fix later.
- Only checking GL journals and missing that a subledger (commonly Payables or Projects) has unaccounted transactions that never reached GL.
- Not checking journal batches in Error status separately from Unposted - Error batches usually need an account combination fix before they will post.
- Forgetting encumbrance journals when budgetary control is enabled; these follow the same close-blocking rule as actual journals.
- Closing the subledger period before confirming GL successfully imported and posted everything from that subledger for the period.

## Ai Angle

ERPray, grounded on your EBS General Ledger, can run the Unposted Journals and Period Close Exceptions checks proactively a few days before close, list the specific batch numbers and subledgers blocking the period in plain language, and flag Error-status batches with the account combination that needs correcting, so the close team is not manually running four reports against a shrinking deadline.

## Faq

### Why does a subledger period need to close before GL?

**Answer:** GL's close validation checks for unaccounted subledger transactions via the SLA (Subledger Accounting) event model. A subledger with open or unaccounted transactions will keep tripping the GL close check even if GL's own journals look clean.

### Can I close GL with a journal still in Error status?

**Answer:** No. Error-status batches block the close just like Unposted ones. Fix the invalid or disabled account combination the batch references, then re-run Post from the batch.

### What is the fastest way to find every blocking batch across all subledgers?

**Answer:** Run the Period Close Exceptions report from the Period Close workbench (General Ledger > Setup > Financials > Close Cycle Forecast in R12.2, or Period Close screen in R12.1) - it aggregates GL and subledger exceptions in one view instead of checking each module separately.

### Is it safe to just delete an old Unposted batch to unblock close?

**Answer:** Only if you are certain it was created in error and never should have existed. If it represents real activity, reverse it properly instead of deleting it, so the audit trail and any downstream reporting stay intact.

## Search terms

EBS GL period will not close, unposted journal batches error, GL period close exceptions report, subledger unaccounted transactions, Oracle EBS month end close error, gl_je_batches status query, create accounting final mode, EBS close period error fix

---
Talk to an engineer: https://netray.co/contact?intent=erp_ai | Machine catalog: https://netray.co/agent/catalog.json
