RCV_TRANSACTIONS
Product: RCVtransactionPer inventory orgThe receiving event ledger — one immutable row per receiving action (receive, inspect, transfer, deliver, correct, return), chained to its prior step by parent transaction id; the event-grain truth behind every receipt quantity
One receipt writes multiple rows (RECEIVE then DELIVER at minimum, plus corrections as new rows) — filter TRANSACTION_TYPE or received quantities double-count
Insert-only: corrections never update the original row; net quantity means walking the PARENT_TRANSACTION_ID chain (or reading the maintained net in the supply table, not yet cataloged). No item column — the item lives on the shipment line. The dictionary itself names the decode lookups: RCV_TRANSACTION_TYPE and RCV_SOURCE_DOCUMENT_TYPE.
What the badges mean
- Product: EGP
- Product: the Oracle product family that owns the object — the short code Oracle's Tables and Views documentation lists as the object owner. Fusion is SaaS, so this isn't a database schema; there's no SQL path to the tables at all (see the quirks guide).
- master
- Data class: what the table holds — master data, transaction documents, control/configuration, interface/staging, or a documented view.
- BU-striped (ORG_ID)
- Rows are scoped to a business unit. The column is still named
ORG_ID, but in Fusion it means business unit, not the EBS operating unit — treat any migrated “operating unit” filter as suspect (see the quirks guide). - Per inventory org
- Rows are scoped to an inventory organization via
ORGANIZATION_ID— always pair it withINVENTORY_ITEM_IDon item-level joins (see the quirks guide). - Set / ledger / named-BU striped
- Some tables stripe by a named column instead of
ORG_ID: reference data set (SET_ID— see the quirks guide), ledger (LEDGER_IDon the GL journal tables), or a named business-unit column (PRC_BU_ID/REQ_BU_IDin procurement). The table page’s partition line names the column, and the generated SQL anchors on it — never treat these tables as unpartitioned. - Language-striped
- The table carries a
LANGUAGEcolumn (a _TL translation table or FND_LOOKUP_VALUES) — one row per language. Filter to oneLANGUAGEor a join multiplies rows. - Date-effective
- This is an
_Ftable — one row per entity per effectivity window, withEFFECTIVE_START_DATEandEFFECTIVE_END_DATEpart of the key. Join without a window filter and every fact multiplies by history (see the quirks guide). - View
- This is a documented convenience view, not a physical table. Extract through the BICC data store that fronts its base objects instead of assuming the view lands as-is.
Structural facts — how the table is partitioned, not a trap by itself
Join & extract hazards — verify before you rely on this
Extract access
The delivered surfaces that reach this table — the BICC extract data store (PVO) for bulk extraction and the OTBI subject areas for real-time queries. There is no SQL path to the SaaS database.
- FscmTopModelAM.ScmExtractAM.RcvBiccExtractAM.ReceivingReceiptTransactionExtractPVOOTBI: Receiving - Transactions Real Time
Receipt Transactions data store — keyed on a PEO-prefixed mirror of TRANSACTION_ID. Do not confuse with the Receipt Accounting copy (CmrRcvTransactionsExtractPVO), a different table.
Oracle data-store documentation (opens in new tab)
Fields
18 fields · 1 key
18 fields.
| # | Field | Description | Type | Flags |
|---|---|---|---|---|
| 1 | TRANSACTION_ID | Surrogate key of the receiving event | NUMBER | Key |
| 2 | PARENT_TRANSACTION_ID | The parent event in the chain — walk it to net a receipt line | NUMBER | |
| 3 | SHIPMENT_HEADER_ID | Shipment header the event belongs to | NUMBER | |
| 4 | SHIPMENT_LINE_ID | Shipment line the event acts on — the item lives there, not here | NUMBER | |
| 5 | TRANSACTION_TYPE | Event type — receive, inspect, transfer, deliver, correct, return | VARCHAR2 | RCV_TRANSACTION_TYPE |
| 6 | TRANSACTION_DATE | When the receiving event occurred | DATE | Filter date |
| 7 | QUANTITY | Event quantity in the transaction UOM | NUMBER | |
| 8 | UOM_CODE | Transaction UOM code | VARCHAR2 | |
| 9 | PRIMARY_QUANTITY | Event quantity in the item's primary UOM | NUMBER | |
| 10 | ORGANIZATION_ID | Receiving inventory org where the event was created | NUMBER | |
| 11 | SOURCE_DOCUMENT_CODE | Source document type behind the event | VARCHAR2 | RCV_SOURCE_DOCUMENT_TYPE |
| 12 | PO_HEADER_ID | PO header pointer | NUMBER | |
| 13 | PO_LINE_ID | PO line pointer | NUMBER | |
| 14 | PO_LINE_LOCATION_ID | PO schedule pointer — the schedule's cumulative buckets roll up from these events | NUMBER | |
| 15 | DESTINATION_TYPE_CODE | Destination type at event time | VARCHAR2 | |
| 16 | SUBINVENTORY | Destination subinventory of the event | VARCHAR2 | |
| 17 | INSPECTION_STATUS_CODE | Not inspected, accepted, or rejected | VARCHAR2 | |
| 18 | VENDOR_ID | Supplier on the event | NUMBER |
Field provenance: hand-curated. 1 key field.
Boilerplate SQL
Starting point for reading the BICC-landed copy of RCV_TRANSACTIONS on Databricks — real DATE columns need no conversion, and the org anchor and the LAST_UPDATE_DATE watermark (the column incremental BICC extracts key on) are already in place. Set your Unity Catalog location, schema, and org values below; they’re substituted into the SQL and the copy button.
7 parameters not filled: <catalog>, <schema>, <inventory_org_id>, <TRANSACTION_ID>, <DATE_FROM>, <DATE_TO>, <watermark>
-- ============================================================
-- Table : RCV_TRANSACTIONS — The receiving event ledger — one immutable row per receiving action (receive, inspect, transfer, deliver, correct, return), chained to its prior step by parent transaction id; the event-grain truth behind every receipt quantity
-- Purpose: Column-selected read of RCV_TRANSACTIONS — auto-generated from field metadata
-- Grain : One row per inventory org (ORGANIZATION_ID) + TRANSACTION_ID
-- Caution: One receipt writes multiple rows (RECEIVE then DELIVER at minimum, plus corrections as new rows) — filter TRANSACTION_TYPE or received quantities double-count
-- Notes : Auto-generated skeleton for Oracle Fusion Cloud data landed in your lakehouse by a BICC extract — there is no SQL path to the SaaS database. Column names follow Oracle's table documentation — if your landed data still carries PVO attribute headers, map names first; see quirks #pvo-drift. Dates are real DATE/TIMESTAMP columns — no conversion needed. WHO audit columns omitted (see the quirks guide); the optional LAST_UPDATE_DATE watermark filter supports incremental extracts.
-- ============================================================
SELECT
t.TRANSACTION_ID AS "Surrogate key of the receiving event",
t.PARENT_TRANSACTION_ID AS "The parent event in the chain — walk it to net a receipt line",
t.SHIPMENT_HEADER_ID AS "Shipment header the event belongs to",
t.SHIPMENT_LINE_ID AS "Shipment line the event acts on — the item lives there, not here",
t.TRANSACTION_TYPE AS "Event type — receive, inspect, transfer, deliver, correct, return", -- decode t.TRANSACTION_TYPE via FND_LOOKUP_VALUES (LOOKUP_TYPE = 'RCV_TRANSACTION_TYPE', LANGUAGE-filtered)
t.TRANSACTION_DATE AS "When the receiving event occurred",
t.QUANTITY AS "Event quantity in the transaction UOM",
t.UOM_CODE AS "Transaction UOM code",
t.PRIMARY_QUANTITY AS "Event quantity in the item's primary UOM",
t.ORGANIZATION_ID AS "Receiving inventory org where the event was created",
t.SOURCE_DOCUMENT_CODE AS "Source document type behind the event", -- decode t.SOURCE_DOCUMENT_CODE via FND_LOOKUP_VALUES (LOOKUP_TYPE = 'RCV_SOURCE_DOCUMENT_TYPE', LANGUAGE-filtered)
t.PO_HEADER_ID AS "PO header pointer",
t.PO_LINE_ID AS "PO line pointer",
t.PO_LINE_LOCATION_ID AS "PO schedule pointer — the schedule's cumulative buckets roll up from these events",
t.DESTINATION_TYPE_CODE AS "Destination type at event time",
t.SUBINVENTORY AS "Destination subinventory of the event",
t.INSPECTION_STATUS_CODE AS "Not inspected, accepted, or rejected",
t.VENDOR_ID AS "Supplier on the event"
FROM <catalog>.<schema>.RCV_TRANSACTIONS t
WHERE
t.ORGANIZATION_ID = <inventory_org_id> -- inventory org, NOT the business unit — see quirks guide #item-org-striping
-- AND t.TRANSACTION_ID = <TRANSACTION_ID>
-- AND t.TRANSACTION_DATE >= DATE '<DATE_FROM>'
-- AND t.TRANSACTION_DATE <= DATE '<DATE_TO>'
-- AND t.LAST_UPDATE_DATE >= TIMESTAMP '<watermark>' -- the column incremental BICC extracts key on
ORDER BY t.TRANSACTION_ID;Verified September 2026 · docs release 26C
Column names differ in BICC extracts — see PVO header drift.
Relationships
Diagram of 1-hop neighbors — join details below. FND lookup decode and translation edges are highlighted; they’re the joins newcomers most often get wrong.
Join details
ON RCV_TRANSACTIONS.SHIPMENT_HEADER_ID = RCV_SHIPMENT_HEADERS.SHIPMENT_HEADER_IDON RCV_TRANSACTIONS.SHIPMENT_LINE_ID = RCV_SHIPMENT_LINES.SHIPMENT_LINE_ID- RCV_TRANSACTIONSRCV_TRANSACTIONSforeign key · N:1
ON RCV_TRANSACTIONS1.PARENT_TRANSACTION_ID = RCV_TRANSACTIONS2.TRANSACTION_ID AND RCV_TRANSACTIONS1.ORGANIZATION_ID = RCV_TRANSACTIONS2.ORGANIZATION_ID ON RCV_TRANSACTIONS.PO_LINE_LOCATION_ID = PO_LINE_LOCATIONS_ALL.LINE_LOCATION_IDON RCV_TRANSACTIONS.ORGANIZATION_ID = INV_ORG_PARAMETERS.ORGANIZATION_IDON RCV_TRANSACTIONS.TRANSACTION_TYPE = FND_LOOKUP_VALUES.LOOKUP_CODE AND FND_LOOKUP_VALUES.LOOKUP_TYPE = 'RCV_TRANSACTION_TYPE' AND FND_LOOKUP_VALUES.LANGUAGE = '<language>'ON RCV_TRANSACTIONS.SOURCE_DOCUMENT_CODE = FND_LOOKUP_VALUES.LOOKUP_CODE AND FND_LOOKUP_VALUES.LOOKUP_TYPE = 'RCV_SOURCE_DOCUMENT_TYPE' AND FND_LOOKUP_VALUES.LANGUAGE = '<language>'ON AP_INVOICE_LINES_ALL.RCV_TRANSACTION_ID = RCV_TRANSACTIONS.TRANSACTION_IDON AP_INVOICE_DISTRIBUTIONS_ALL.RCV_TRANSACTION_ID = RCV_TRANSACTIONS.TRANSACTION_ID
More Receiving tables
- RCV_SHIPMENT_HEADERSReceipt and expected-receipt headers — one row per supplier ASN, receipt, in-transit shipment, or RMA return, grouped by receipt source; carries the receipt number, supplier, and expected/shipped dates
- RCV_SHIPMENT_LINESReceipt/shipment lines — one row per item per shipment header with cumulative shipped and received quantities, line status, the source-document pointers, and the default putaway destination