AP-05 EBS R12.x Accounts Payable Tier 2 Data Fix

AP Period Close Readiness Diagnostic

Pre-close readiness scan covering unvalidated invoices, unaccounted transactions, open holds, unposted cash, sweep candidates, SLA errors, and period status across all ledgers.

PlatformOracle EBS R12.x
Input RequiredPeriod Name or Period Date
Diagnostic Checks40+
Data Sources10 Oracle tables
Fix Options4 guided fixes
Backup CreatedYes — Automatic

Why This Fails — and What It Costs

The Oracle EBS AP period close process has a specific sequence of prerequisites that must all be satisfied before the period can be closed in the Payables module — and those prerequisites have their own prerequisites in the subledger accounting layer. An AP period cannot close if there are invoices in NEEDS REVALIDATION status with GL dates in the current period. It cannot close if there are SLA accounting events in ERROR status that have not been resolved. It cannot close if there are payment batches in CONFIRMING status that have not been confirmed. When any of these conditions exist, the Close Payables Period concurrent program completes with an error, and the AP team begins a manual hunt through multiple screens to identify which transactions are blocking the close.

The operational difficulty is that the blocking conditions exist in different places. Unvalidated invoices are visible in the Invoice Workbench if you know to filter by validation status. Accounting errors are visible in the Create Accounting output if you know where to look. Unconfirmed payment batches are visible in the Payment Batches form. No single screen in Oracle's standard UI shows all blocking conditions simultaneously — which means the AP team fixes one condition, reruns Close Payables Period, hits another error, fixes that one, and repeats. In a large environment with hundreds of invoices and dozens of payment batches, this process can consume an entire day.

The Sweep Payables Transactions program adds another dimension. Invoices with GL dates in prior periods that are not swept forward before the close will land in the wrong accounting period — either blocked by the closed period or posted to a period that has already been reconciled to the GL. The sweep logic has its own prerequisites: the target period must be open, the invoice must not be already accounted, and the AP system options must have the sweep enabled. AP-05 identifies all sweep candidates before the close and validates that the sweep can run successfully.

AP-05 runs a complete period-close readiness scan — all invoices in NEEDS REVALIDATION or NEVER VALIDATED with GL dates in the current period, all XLA events in ERROR or UNPROCESSED status, all payment batches not yet confirmed, all sweep candidates with target period validation, and the AP-to-GL transfer status. It produces a single prioritized report that shows every blocking condition with the exact resolution path, ordered by the sequence in which they must be resolved.

What This Script Diagnoses

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

Period Status Check
AP period status across all ledgers — OPEN, FUTURE ENTRY, CLOSED. GL period status alignment. Subledger period status in XLA_PERIOD_STATUSES.
Unvalidated Invoices
Invoices in NEEDS REVALIDATION or NEVER VALIDATED status with GL dates in the current period. Count and total amount. Invoices created in period but not yet validated.
Unaccounted Transactions
Invoices with ACCOUNTED_FLAG = 'N' — never sent to Create Accounting. SLA events in ERROR status. Events in UNPROCESSED status older than 24 hours. XLA accounting header failures.
Open Holds
All invoices with active holds — counts by hold type, total amount on hold. Invoices that will miss the close if holds are not resolved. Oldest hold age.
Sweep Candidates
Invoices with GL dates in prior periods that need to be swept forward to close. Sweep program prerequisites. Automatic sweep configuration in AP system options.
Payment Reconciliation
Unposted cash — payments confirmed but not posted to GL. Outstanding payment batches. Bank statement interface records not yet processed. Unapplied cash.

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.

AP-05 — AP-05 Diagnostic Report
════════════════════════════════════════════════════════════
  ORACLE EBS R12 — AP PERIOD CLOSE READINESS DIAGNOSTIC
════════════════════════════════════════════════════════════
  Period             : FEB-2026
  Ledger             : US Primary Ledger
  Operating Unit     : US Operations OU
  Case Number        : 856140
  Report Date        : 25-FEB-2026 16:00:44
════════════════════════════════════════════════════════════

[ SECTION 1 — PERIOD STATUS ]                STATUS: ✓ PASS
────────────────────────────────────────────────────────────
  AP Period          : FEB-2026 — OPEN ✓
  GL Period          : FEB-2026 — OPEN ✓
  XLA Period         : FEB-2026 — OPEN ✓

[ SECTION 2 — UNVALIDATED INVOICES ]         STATUS: ✗ FAIL
────────────────────────────────────────────────────────────
  NEEDS REVALIDATION : 14 invoices — $284,100 ✗
  NEVER VALIDATED    : 3 invoices — $41,500 ✗
  ✗ FAIL: 17 invoices must be validated before period close

[ SECTION 3 — UNACCOUNTED TRANSACTIONS ]     STATUS: ✗ FAIL
────────────────────────────────────────────────────────────
  XLA ERROR Events   : 2 events — Invoice IDs 1998210, 1998445 ✗
  UNPROCESSED Events : 5 events — older than 24 hours ⚠
  ✗ FAIL: 2 accounting events in ERROR must be resolved

[ SECTION 4 — OPEN HOLDS ]                   STATUS: ⚠ WARNING
────────────────────────────────────────────────────────────
  ⚠ 8 invoices on hold — $162,400 — may miss close

[ SECTION 5 — PAYMENT BATCHES ]              STATUS: ✓ PASS
[ SECTION 6 — SWEEP CANDIDATES ]             STATUS: ⚠ WARNING
────────────────────────────────────────────────────────────
  ⚠ 4 invoices with JAN-2026 GL dates — sweep required

════════════════════════════════════════════════════════════
  CLOSE READINESS SUMMARY
════════════════════════════════════════════════════════════
  PERIOD CANNOT CLOSE — 2 blocking conditions
  1. Validate 17 invoices (run Payables Invoice Validation)
  2. Resolve 2 XLA ERROR events (see Create Accounting output)
  Advisory: Sweep 4 prior-period invoices after validation
════════════════════════════════════════════════════════════

The Four-Layer Architecture in AP-05

1
Diagnostic Engine
Runs 40+ checks covering period status across AP/GL/XLA layers, unvalidated invoice counts and amounts, XLA event status, open holds analysis, unconfirmed payment batches, sweep candidates with target period validation, and AP-to-GL transfer status.
2
Backup Created
Before any period or invoice data is modified, CONS_BACKUP.AP_INVOICES_ALL_<case#>, XLA_EVENTS_<case#>, and AP_HOLDS_ALL_<case#> are created and row counts verified.
3
Guided Data Fix
Most period-close blockers resolve through Oracle's standard concurrent programs — Payables Invoice Validation, Create Accounting, Sweep Payables Transactions. AP-05 provides the exact parameters and submission sequence. Direct fixes for GL date corrections with full backup.
4
KB Article Generated
Complete KB article generated — period, blocking conditions, resolution sequence, event IDs, sweep details, close completion confirmation. Upload directly to your knowledge base.

Backup & Rollback for AP-05

Every table touched by AP-05 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 — AP-05

CONS_BACKUP.AP_INVOICES_ALL_<case#> CONS_BACKUP.AP_HOLDS_ALL_<case#> CONS_BACKUP.XLA_EVENTS_<case#> CONS_BACKUP.XLA_AE_HEADERS_<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 AP-05 execution — written from actual run output. No manual documentation required.

KB-AP-856140-001 · Script: AP-05
Period FEB-2026 Close Blocked — Unvalidated Invoices and XLA Accounting Errors
Close Payables Period program for FEB-2026 completing with error. AP period cannot be closed. GL consolidation run delayed. 17 unvalidated invoices and 2 XLA ERROR events identified as blocking conditions.
Batch invoice entry run on 24-FEB-2026 created 17 invoices in NEVER VALIDATED status — Payables Invoice Validation was not submitted after the batch entry job completed. Two XLA ERROR events were created when Create Accounting encountered a disabled account on invoices 1998210 and 1998445 — the same CCID issue affecting the ACCOUNT INVALID holds population.
AP_INVOICES_ALL — VALIDATION_STATUS (17 invoices in NEEDS REVALIDATION/NEVER VALIDATED)
XLA_EVENTS — EVENT_STATUS_CODE = ERROR (Event IDs: 881204, 881206)
Payables Invoice Validation submitted for all 17 invoices — 14 validated, 3 placed on hold (ACCOUNT INVALID — referred to GL-03 for CCID resolution). XLA ERROR events corrected via Create Accounting after CCID fix. Sweep Payables Transactions run for 4 prior-period invoices to FEB-2026. Period closed 25-FEB-2026 17:42.
Batch invoice entry jobs should include an automatic Payables Invoice Validation submission as the final step. AP-05 should be run at period day-minus-3 to surface close blockers before the deadline.
APPeriod CloseUnvalidated InvoicesXLA EventsSweepNEEDS REVALIDATIONCreate AccountingEBS R12.2

Most Common Issues Detected by AP-05

Critical

Unaccounted Invoices Blocking Close

Invoices validated but not sent to Create Accounting. AP-05 lists them by GL date with aging and provides the resubmit path for the Create Accounting concurrent program.

Critical

SLA Events in ERROR Status

XLA accounting events in error — blocking GL posting. AP-05 identifies the error type, affected invoices, and provides the error correction navigation path.

Warning

Prior Period GL Dates Need Sweep

Invoices with prior period GL dates that will land in the wrong period if not swept. AP-05 identifies sweep candidates and the Sweep Payables Transactions program parameters.

Warning

Payment Batches Not Confirmed

Payment batches in FORMATTING or CONFIRMING status will not hit GL until confirmed. AP-05 shows outstanding batches by age and total amount.

Tables & Views Examined

Table / ViewSchemaPurpose in Diagnostic
AP_INVOICES_ALL AP Invoice status and accounting flags
AP_HOLDS_ALL AP Active holds blocking posting
XLA_EVENTS XLA SLA event status — error and unprocessed
XLA_AE_HEADERS XLA Accounting header status per event
GL_PERIOD_STATUSES GL Period open/closed status
AP_PAYMENT_HISTORY_ALL AP Payment batch confirmation status
CE_STATEMENT_LINES CE Bank statement interface records
AP_INVOICE_PAYMENTS_ALL AP Individual payment to invoice links
XLA_PERIOD_STATUSES XLA Subledger period status
AP_SYSTEM_PARAMETERS AP AP options including sweep configuration
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
Unvalidated invoices in NEEDS REVALIDATION or NEVER VALIDATED Functional First Submit Payables Invoice Validation concurrent program for the operating unit and period. AP-05 provides the exact parameters. If holds result from validation, they are categorized by type for priority resolution.
XLA events in ERROR — accounting blocked Oracle Support XLA error events are investigated through the Create Accounting output and the Oracle Subledger Accounting module. Root cause is typically a disabled account or missing accounting rule. Direct DML on XLA tables is never performed.
GL date in closed period — invoice will not validate Direct Fix AP-05 identifies the next open period, generates the GL date update against AP_INVOICES_ALL with full backup. Pre-flight confirms invoice is unposted and no XLA event is active before proceeding.
Unconfirmed payment batches blocking close Functional First Submit Confirm Payments concurrent program for each outstanding batch. AP-05 identifies all batches in FORMATTING or CONFIRMING status with the request ID and submission parameters.
Sweep candidates — prior period GL dates Functional First Submit Sweep Payables Transactions concurrent program with the target period. AP-05 identifies all sweep candidates, validates the target period is open, and confirms auto-sweep is enabled in AP system options.
AP-to-GL transfer incomplete — journal not created Functional First Submit Transfer to GL concurrent program. AP-05 identifies which accounting periods have untransferred journals and provides the exact submission parameters.
Accounting events UNPROCESSED — older than 24 hours Functional First Resubmit Create Accounting for the affected application and period. UNPROCESSED events older than 24 hours typically indicate the Create Accounting job did not run or completed with a timeout.
Period status mismatch — AP open, GL closed Oracle Support GL period status is managed by the General Ledger module. AP cannot be closed into a closed GL period. GL period reopening requires Controller authorization and Oracle GL support if the period was closed in error.
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.

AP_INVOICES_ALL
AP_HOLDS_ALL
XLA_EVENTS
XLA_AE_HEADERS
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.
AP-05 — Pre-Flight & Backup Verification
════════════════════════════════════════════════════════════
  PRE-FLIGHT SAFETY CHECK
════════════════════════════════════════════════════════════
  Period             : FEB-2026
  AP Period Status   : OPEN ✓
  CONS_BACKUP Schema : Accessible ✓
  Session Lock Check : No locks on target rows ✓
────────────────────────────────────────────────────────────
  ALL PRE-FLIGHT CHECKS PASSED — Ready to create backup
════════════════════════════════════════════════════════════
  Creating : CONS_BACKUP.AP_INVOICES_ALL_856140
  Rows     : 17 rows backed up ✓ Verified
  Creating : CONS_BACKUP.XLA_EVENTS_856140
  Rows     : 2 rows backed up ✓ Verified
  Registry : FIX_BACKUP_REGISTRY — ID 2104 created ✓
────────────────────────────────────────────────────────────
  BACKUP COMPLETE — Rollback available via single INSERT
════════════════════════════════════════════════════════════
  Enter case number to confirm : 856140
  Confirmed. Executing GL date corrections...
════════════════════════════════════════════════════════════
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-AP-856140-001
Period FEB-2026 Close Blocked — Unvalidated Invoices and XLA Accounting Errors
EBS R12.2.10 · Accounts Payable
● RESOLVED
Symptom
Close Payables Period program for FEB-2026 completing with error. AP period cannot be closed. GL consolidation run delayed. 17 unvalidated invoices and 2 XLA ERROR events identified as blocking conditions.
Root Cause
Batch invoice entry run on 24-FEB-2026 created 17 invoices in NEVER VALIDATED status — Payables Invoice Validation was not submitted after the batch entry job completed. Two XLA ERROR events were created when Create Accounting encountered a disabled account on invoices 1998210 and 1998445 — the same CCID issue affecting the ACCOUNT INVALID holds population.
Tables
AP_INVOICES_ALL — VALIDATION_STATUS (17 invoices in NEEDS REVALIDATION/NEVER VALIDATED)
XLA_EVENTS — EVENT_STATUS_CODE = ERROR (Event IDs: 881204, 881206)
Fix Applied
Payables Invoice Validation submitted for all 17 invoices — 14 validated, 3 placed on hold (ACCOUNT INVALID — referred to GL-03 for CCID resolution). XLA ERROR events corrected via Create Accounting after CCID fix. Sweep Payables Transactions run for 4 prior-period invoices to FEB-2026. Period closed 25-FEB-2026 17:42.
Prevention
Batch invoice entry jobs should include an automatic Payables Invoice Validation submission as the final step. AP-05 should be run at period day-minus-3 to surface close blockers before the deadline.
Tags
APPeriod CloseUnvalidated InvoicesXLA EventsSweepNEEDS REVALIDATIONCreate AccountingEBS R12.2

Oracle Documentation References

R12 Guide (PDF)Title & ChapterDetail
120apug.pdfOracle Payables User's Guide — Ch. 8: Accounting — Period CloseCh. 8: Payables Accounting Process, period-end accruals, and transferring to GL
120ceug.pdfOracle Cash Management User Guide — Ch. 2: Setting Up AP for CE Integrationpp. 2-12 to 2-14: AP bank account reconciliation setup required for clean period close
120poug.pdfOracle Purchasing User's Guide — Ch. 9: Receipt Accrualspp. 9-89 to 9-120: Accrual process and AP/PO accrual reconciliation for period-end

Ready to Resolve This in Your Environment?

AP-05 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 →