Oracle EBS Open Interface Tables, Import Programs and Error Tables
A cross-module map of the Oracle EBS 12.1/12.2 open interfaces: which table to load, which concurrent program imports it, which column tells you a row failed and where the error text lands. It covers GL, AP, AR, INV, OM, PO, RCV, BOM, WIP, Cost, FA and Projects.
| Module | Interface table(s) | Import program | Where errors appear | Status column to check | Notes |
|---|---|---|---|---|---|
GL | GL_INTERFACE | Journal Import (GLLEZL) | STATUS column on the failed rows; Journal Import Execution Report | STATUS = 'NEW' on insert; error codes beginning with E are written back on failure | Successfully imported rows are deleted from GL_INTERFACE; GROUP_ID and USER_JE_SOURCE_NAME select what imports; R12 uses LEDGER_ID |
GL | GL_DAILY_RATES_INTERFACE | No program: a database trigger processes rows on insert | ERROR_CODE column on rows left in the table | MODE_FLAG (I insert, D delete); rows that remain did not load | Valid rows move to GL_DAILY_RATES immediately, so check for leftover rows after the insert |
AP | AP_INVOICES_INTERFACE, AP_INVOICE_LINES_INTERFACE | Payables Open Interface Import (APXIIMPT) | AP_INTERFACE_REJECTIONS (PARENT_TABLE, PARENT_ID, REJECT_LOOKUP_CODE) | AP_INVOICES_INTERFACE.STATUS (PROCESSED, REJECTED) | SOURCE and GROUP_ID select rows; the Payables Open Interface Rejections report lists reasons |
AP | AP_SUPPLIERS_INT, AP_SUPPLIER_SITES_INT, AP_SUP_SITE_CONTACT_INT | Supplier Open Interface Import, Supplier Sites Open Interface Import, Supplier Site Contacts Open Interface Import | AP_SUPPLIER_INT_REJECTIONS (PARENT_TABLE, PARENT_ID, REJECT_LOOKUP_CODE) | STATUS column (NEW, PROCESSED, REJECTED) | Run suppliers, then sites, then contacts; suppliers are created in TCA and AP_SUPPLIERS |
AR | RA_INTERFACE_LINES_ALL, RA_INTERFACE_DISTRIBUTIONS_ALL, RA_INTERFACE_SALESCREDITS_ALL | AutoInvoice Master Program (RAXMTR), which spawns AutoInvoice Import Program (RAXTRX) | RA_INTERFACE_ERRORS_ALL (INTERFACE_LINE_ID, MESSAGE_TEXT, INVALID_VALUE) | INTERFACE_STATUS and REQUEST_ID on RA_INTERFACE_LINES_ALL | BATCH_SOURCE_NAME selects rows; OM sends lines with INTERFACE_LINE_CONTEXT = 'ORDER ENTRY'; the execution report summarises rejects |
AR | AR_PAYMENTS_INTERFACE_ALL | Process Lockboxes | STATUS on AR_PAYMENTS_INTERFACE_ALL and the transmission; Lockbox Execution Report | Validated rows move to AR_INTERIM_CASH_RECEIPTS_ALL and AR_INTERIM_CASH_RCPT_LINES_ALL | Post QuickCash creates the actual receipts from the interim tables; the process can run import, validate and post in one submission |
AR (customers) | HZ_IMP_ bulk import tables (for example HZ_IMP_PARTIES_INT, HZ_IMP_ADDRESSES_INT) | TCA bulk import (Import Batch to TCA Registry), or TCA V2 APIs | Batch error tables and the import batch status in Customer Data Librarian / Trading Community Manager | Batch status per import batch | In R12 customers live in TCA; Oracle directs new loads to TCA bulk import or the HZ_ V2 APIs. Confirm support for the legacy RA_CUSTOMERS_INTERFACE_ALL Customer Interface on your release before relying on it |
INV | MTL_SYSTEM_ITEMS_INTERFACE (+ MTL_ITEM_REVISIONS_INTERFACE) | Import Items (INCOIN) | MTL_INTERFACE_ERRORS (TRANSACTION_ID, TABLE_NAME, COLUMN_NAME, MESSAGE_NAME, ERROR_MESSAGE) | PROCESS_FLAG: 1 pending, 3 error, 7 imported | Join MTL_INTERFACE_ERRORS.TRANSACTION_ID to the interface TRANSACTION_ID; SET_PROCESS_ID groups a run; TRANSACTION_TYPE CREATE or UPDATE |
INV | MTL_TRANSACTIONS_INTERFACE (+ MTL_TRANSACTION_LOTS_INTERFACE, MTL_SERIAL_NUMBERS_INTERFACE) | Process transaction interface (INCTCM), started by the Inventory Transaction Manager or INV_TXN_MANAGER_PUB | ERROR_CODE and ERROR_EXPLANATION columns on the interface row | PROCESS_FLAG: 1 ready, 2 not ready, 3 error; LOCK_FLAG; TRANSACTION_MODE 3 = background | Lots join on TRANSACTION_INTERFACE_ID; serials on TRANSACTION_INTERFACE_ID or SERIAL_TRANSACTION_TEMP_ID for lot and serial items; resubmit from Transaction Open Interface form |
OM | OE_HEADERS_IFACE_ALL, OE_LINES_IFACE_ALL (+ OE_PRICE_ADJS_IFACE_ALL, OE_ACTIONS_IFACE_ALL) | Order Import (OEOIMP) | OE_PROCESSING_MSGS + OE_PROCESSING_MSGS_TL | ERROR_FLAG on interface rows; REQUEST_ID | ORDER_SOURCE_ID + ORIG_SYS_DOCUMENT_REF ties rows and messages; fix in the Order Import Corrections form |
PO | PO_HEADERS_INTERFACE, PO_LINES_INTERFACE, PO_LINE_LOCATIONS_INTERFACE, PO_DISTRIBUTIONS_INTERFACE | Import Standard Purchase Orders (POXPOPDOI); blankets and catalogs through Import Price Catalogs | PO_INTERFACE_ERRORS with INTERFACE_TYPE = 'PO_DOCS_OPEN_INTERFACE' | PROCESS_CODE (PENDING, ACCEPTED, REJECTED) | BATCH_ID selects rows; Purchasing Interface Errors Report lists messages |
PO | PO_REQUISITIONS_INTERFACE_ALL, PO_REQ_DIST_INTERFACE_ALL | Requisition Import (REQIMPORT) | PO_INTERFACE_ERRORS with INTERFACE_TYPE = 'REQIMPORT', INTERFACE_TRANSACTION_ID = TRANSACTION_ID | PROCESS_FLAG = 'ERROR' on failed rows | INTERFACE_SOURCE_CODE and BATCH_ID are import parameters; MRP and Min-Max planning feed this interface too |
RCV | RCV_HEADERS_INTERFACE, RCV_TRANSACTIONS_INTERFACE | Receiving Transaction Processor (RVCTP) | PO_INTERFACE_ERRORS (INTERFACE_HEADER_ID, INTERFACE_LINE_ID) | PROCESSING_STATUS_CODE and TRANSACTION_STATUS_CODE (PENDING, RUNNING, ERROR, COMPLETED) | GROUP_ID selects rows in BATCH mode; also visible in the Transaction Status Summary form |
BOM | BOM_BILL_OF_MTLS_INTERFACE, BOM_INVENTORY_COMPS_INTERFACE (routings: BOM_OP_ROUTINGS_INTERFACE, BOM_OP_SEQUENCES_INTERFACE) | Bills and Routing Interface (BMCOIN) | MTL_INTERFACE_ERRORS | PROCESS_FLAG: 1 pending, 3 error, 7 imported | Load bills before components; TRANSACTION_TYPE CREATE, UPDATE or DELETE; BATCH_ID in later releases |
WIP | WIP_JOB_SCHEDULE_INTERFACE (+ WIP_JOB_DTLS_INTERFACE) | WIP Mass Load (WICMLP) | WIP_INTERFACE_ERRORS (INTERFACE_ID, ERROR_TYPE, ERROR) | PROCESS_PHASE and PROCESS_STATUS (1 pending, 2 running, 3 error, 4 complete, 5 warning) | LOAD_TYPE selects create or update of discrete jobs; GROUP_ID is the Mass Load parameter |
WIP | WIP_MOVE_TXN_INTERFACE | WIP Move Transaction Manager (WICTMS) | WIP_TXN_INTERFACE_ERRORS | PROCESS_PHASE and PROCESS_STATUS | Pending moves are visible and resubmittable in the Pending Move Transactions form |
CST | CST_ITEM_CST_DTLS_INTERFACE (+ CST_ITEMS_INTERFACE, CST_RESOURCE_COSTS_INTERFACE) | Cost Import Process | ERROR_CODE and ERROR_EXPLANATION columns on the interface rows | PROCESS_FLAG | Imports into a cost type you then copy or update into Frozen with standard cost update; GROUP_ID groups a run |
FA | FA_MASS_ADDITIONS | Post Mass Additions | Rows stay in their queue; Post Mass Additions report | POSTING_STATUS and QUEUE_NAME (NEW, ON HOLD, POST, POSTED and others) | Create Mass Additions from Payables or a direct load feeds this table; only rows in POST are posted to assets |
PA | PA_TRANSACTION_INTERFACE_ALL | PRC: Transaction Import | TRANSACTION_REJECTION_CODE on the interface row; Transaction Import report | TRANSACTION_STATUS_CODE (P pending, R rejected, and others) | TRANSACTION_SOURCE (PA_TRANSACTION_SOURCES) and BATCH_NAME select rows; use Review Transactions form to fix and resubmit |
Scope: EBS 12.1 and 12.2. Short names are shown only where certain; confirm any program on your instance with FND_CONCURRENT_PROGRAMS_TL before scheduling. Status codes vary slightly by release, so read the product's Open Interfaces guide for your version.
Planning a data load into EBS?
Send the objects and volumes you need to load and your EBS release. We will map each to its interface or API and list the validation traps for your setup.
Optional. The tool and every export work without this. No spam.
What an open interface is in Oracle EBS
An open interface is a staging table Oracle supports for loading transactions or master data, plus a concurrent program that validates the rows with the same rules as the forms and creates the base records. You insert rows with SQL*Loader, PL/SQL or an integration tool, then run the import program with parameters that pick a batch (GROUP_ID, BATCH_ID, SOURCE or similar). Valid rows are created and either deleted or marked processed; invalid rows stay with a status flag and an error message. This is the supported route: inserting directly into base tables such as OE_ORDER_HEADERS_ALL or AP_INVOICES_ALL bypasses validation and accounting and is not supported. Where Oracle provides a public API instead, as for TCA customers, use the API.
- Load a small test batch first and read the errors
- Keep your own staging table with source keys so reloads are idempotent
- Always populate WHO columns and the org or ledger column
How to read the status and error columns
Each interface signals failure differently, which is the main source of confusion. Inventory and BOM use a numeric PROCESS_FLAG (3 = error) and write messages to MTL_INTERFACE_ERRORS keyed by TRANSACTION_ID. The Inventory transaction interface keeps the error on the row itself in ERROR_CODE and ERROR_EXPLANATION. Purchasing, Requisition Import and Receiving share PO_INTERFACE_ERRORS, separated by INTERFACE_TYPE. Payables uses AP_INTERFACE_REJECTIONS with PARENT_TABLE telling you whether the header or line failed. AutoInvoice writes RA_INTERFACE_ERRORS_ALL per INTERFACE_LINE_ID. Order Import writes OE_PROCESSING_MSGS. GL Journal Import writes an error code back into GL_INTERFACE.STATUS. Start every investigation from the import program's output report, then query the error table for detail.
Worked example: AutoInvoice rejects
After AutoInvoice runs for batch source 'ORDER ENTRY', some order lines did not invoice. Query: SELECT l.interface_line_attribute1 AS order_no, l.interface_line_attribute6 AS line_id, e.message_text, e.invalid_value FROM ra_interface_lines_all l JOIN ra_interface_errors_all e ON e.interface_line_id = l.interface_line_id WHERE l.batch_source_name = 'ORDER ENTRY' AND l.org_id = 204. Typical messages are a closed GL period for the GL date, a missing or invalid revenue account built by AutoAccounting, or a missing bill-to site. Fix the setup or the row and rerun the AutoInvoice Master Program; rows that pass are deleted from the interface and appear in RA_CUSTOMER_TRX_ALL. Do not delete rejected OM rows without understanding why, because the order line will never invoice.
Version notes and gotchas
R12 changed several interfaces. Suppliers moved to TCA, so the supplier interfaces (AP_SUPPLIERS_INT and related) replace direct PO_VENDORS loads. Customer loads should use TCA bulk import or the HZ_ V2 APIs. PDOI gained PO_LINE_LOCATIONS_INTERFACE for multiple shipments. Journal Import identifies the target by LEDGER_ID instead of SET_OF_BOOKS_ID. Multi-Org matters everywhere: populate ORG_ID on _ALL interface tables and run the import from a responsibility with access to that operating unit, or the program silently skips the rows. Many imports need a manager to be running (Inventory Transaction Manager, Receiving Transaction Processor in batch mode) or a scheduled program; a row that never changes status usually means nothing picked it up rather than a validation error.
Frequently Asked Questions
What are interfaces in Oracle EBS?
Interfaces are Oracle-supported staging tables and import programs for bringing data into EBS. You load rows into a table such as AP_INVOICES_INTERFACE, run the import program, and Oracle validates and creates the base records with the same rules as the user forms. Rows that fail stay in the interface with an error status and message.
What is the AR interface error table in R12?
RA_INTERFACE_ERRORS_ALL holds AutoInvoice errors, one or more rows per failed RA_INTERFACE_LINES_ALL row, joined on INTERFACE_LINE_ID, with MESSAGE_TEXT and INVALID_VALUE. Lockbox errors are different: check the status on AR_PAYMENTS_INTERFACE_ALL and the Lockbox Execution Report. Customer loads in R12 go through TCA, which has its own batch error reporting.
What is the Projects expenditure interface table?
PA_TRANSACTION_INTERFACE_ALL, imported by the concurrent program PRC: Transaction Import for a transaction source and batch. Rejected rows keep a TRANSACTION_STATUS_CODE of R and a TRANSACTION_REJECTION_CODE explaining why. The Review Transactions form in Projects lets users correct and resubmit rejected rows.
What are the GL interface tables in R12?
GL_INTERFACE for journals, imported by Journal Import (GLLEZL) with USER_JE_SOURCE_NAME and optional GROUP_ID, and GL_DAILY_RATES_INTERFACE for exchange rates, which a database trigger processes on insert. Journal Import deletes rows it imports and writes error codes into STATUS for rows that fail; the Journal Import Execution Report explains them.
If you want integration errors from these interfaces summarised and explained in plain English on your own servers, we can add a private AI layer that reads them read-only.
Related Tools
Oracle EBS Order Management Tables Reference (OE, WSH, Order Import)
The OE_ and WSH_ tables behind a sales order in EBS 12.1/12.2, with primary keys, join columns and the order import error tables.
OracleOracle EBS Purchasing and Receiving Tables Reference (PO, REQ, RCV)
PO, requisition, release, receiving, archive and open interface tables for EBS 12.1/12.2, with keys, joins and status columns.
Developer ToolsOracle EBS Public PL/SQL API Reference (OM, INV, PO, AP, AR, TCA, FND)
The public PL/SQL APIs EBS developers call most outside HR, with key parameters, the context each needs and how to read its errors.
OracleOracle EBS AP Invoice Interface Template
Fill in header and line values to get insert statements for the Payables open interface tables, ready to adapt for your conversion or integration.
OracleOracle EBS GL Journal Import Worksheet
Prepare journal lines in the shape of GL_INTERFACE, check debits against credits per row set, and export to Excel or CSV before loading.
More Oracle tools
See all- Oracle EBS Inventory Tables Reference
- Oracle EBS WIP Tables Reference
- Oracle EBS Cycle Count Workload Calculator
- Oracle EBS Discrete Manufacturing Go-Live Checklist
- Oracle EBS Inventory Accuracy Readiness Assessment
- Oracle EBS Concurrent Request Phase and Status Reference
- Oracle EBS Responsibility Design Worksheet
- Oracle EBS GL Period Close Checklist
- Oracle EBS 12.2 Upgrade Readiness Checklist
Keep exploring
Free tools
- Oracle EBS GL_INTERFACE Journal Import Error Codes ReferenceDecode every common Journal Import Execution Report error code, see which GL_INTERFACE columns cause it and how to fix it, for EBS R12.
- Oracle EBS Cost Management Tables ReferenceA lookup of the Oracle EBS tables behind item cost, WIP jobs, BOM, routing and inventory transactions used in manufacturing costing.
- Oracle EBS AP Invoice Interface TemplateFill in header and line values to get insert statements for the Payables open interface tables, ready to adapt for your conversion or integration.
ERP fixes and how-tos
- How to Import AP Invoices in Oracle EBS with Payables Open Interface ImportStep-by-step guide to importing AP invoices into Oracle EBS Payables using the AP_INVOICES_INTERFACE tables and the Payables Open Interface Import program.
- Data Conversion in Oracle EBS: Interface Tables, Open Interfaces and ReconciliationHow data conversion works in Oracle EBS: extract, stage, validate, load through interface tables and APIs, then reconcile. Practical steps and common failures.
- Fix Oracle EBS Requisition Import Errors in PO_INTERFACE_ERRORSRequisition Import rejected your rows? Read PO_INTERFACE_ERRORS and the Exceptions Report, fix item, category, org or approver data, then rerun the import in Oracle EBS.
Runs with your ERP
- Esker Order Management and Oracle E-Business SuiteHow Esker captures customer POs from email, fax and PDF and creates sales orders in Oracle EBS: integration, data flows, setup, pitfalls and a private AI layer.
- Cloud Inventory (DSI) with Oracle E-Business Suite: Mobile Barcode InventoryCloud Inventory, formerly DSI, adds offline mobile barcode inventory to Oracle E-Business Suite and JD Edwards. Data flows, setup steps, pitfalls and AI notes.
- BarTender and Oracle E-Business Suite: Label Printing from OracleHow BarTender prints labels from Oracle EBS using Oracle XML print requests and Integration Builder: methods, data flows, setup steps, pitfalls and AI help.
AI on your ERP
- AI for Oracle E-Business Suite, Without Leaving On-PremHosting Oracle EBS 12.2 on-prem or in a private cloud? Add a private LLM over concurrent programs, interface tables and AP/PO data without moving to Fusion.
- AI for Oracle EBS in Industrial Manufacturing: WIP, MRP, and BOM Questions Answered DirectlyAI for Oracle E-Business Suite in industrial manufacturing: WIP jobs, BOMs, MRP, inventory and purchasing answered in plain English, private and read-only.
Integrations
- How to automate email-to-transaction in Oracle E-Business SuiteTurn inbound POs, RFQs, invoices and supplier confirmations in shared mailboxes into Oracle EBS transactions through open interfaces, with review and audit.
- How to use ChatGPT with Oracle E-Business SuiteUsing ChatGPT with Oracle E-Business Suite: export vs live access, custom GPT actions over ISG REST, enterprise data controls and when to keep data on-prem.