INV_MATERIAL_TXNS
Product: INVtransactionPer inventory orgThe material transaction ledger — one row per inventory movement or cost update, classified by transaction type, action, and source type, with quantity, date, and the document reference that caused it; the reconciliation backbone for every stock question
Inter-org transfers write two rows (issue and receipt) linked through TRANSFER_TRANSACTION_ID; TRANSFER_ORGANIZATION_ID carries the counterpart org. Unlike EBS's MMT, there are NO lot or serial columns here — that detail lives entirely in child tables. TRANSACTION_ACTION_ID is a VARCHAR2 code in the Fusion dictionary, not a number.
What the badges mean
- master
- Data class: what the table holds — master data, transaction documents, control/configuration, interface/staging, or a documented view.
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.InvBiccExtractAM.InventoryTransactionDetailExtractPVOOTBI: Inventory - Inventory Transactions Real Time
Keyed on TransactionId. Lot and serial detail for transactions ride the companion InvTransactionLotDetailExtractPVO / InvTransactionSerialDetailExtractPVO stores.
Oracle data-store documentation →
Fields
18 fields · 1 key
| # | Field | Description | Type | Flags |
|---|---|---|---|---|
| 1 | TRANSACTION_ID | Surrogate key of the movement | NUMBER | Key |
| 2 | INVENTORY_ITEM_ID | Item transacted | NUMBER | |
| 3 | ORGANIZATION_ID | Inventory org where the transaction happened | NUMBER | |
| 4 | SUBINVENTORY_CODE | Subinventory transacted against | VARCHAR2 | |
| 5 | LOCATOR_ID | Stock locator | NUMBER | |
| 6 | TRANSACTION_TYPE_ID | Transaction type (miscellaneous issue, PO receipt…) | NUMBER | |
| 7 | TRANSACTION_ACTION_ID | Underlying action (issue, receipt, transfer) — a VARCHAR2 code in the Fusion dictionary, unlike EBS | VARCHAR2 | |
| 8 | TRANSACTION_SOURCE_TYPE_ID | Class of source document driving the transaction | NUMBER | |
| 9 | TRANSACTION_SOURCE_ID | Id of the specific source record | NUMBER | |
| 10 | TRX_SOURCE_LINE_ID | Source document line id | NUMBER | |
| 11 | TRANSACTION_QUANTITY | Signed quantity in the entered UOM | NUMBER | |
| 12 | TRANSACTION_UOM | Entered unit of measure | VARCHAR2 | |
| 13 | PRIMARY_QUANTITY | Signed quantity converted to the item's primary UOM — the column to SUM | NUMBER | |
| 14 | TRANSACTION_DATE | When the transaction was processed | DATE | Filter date |
| 15 | TRANSFER_ORGANIZATION_ID | Counterpart org on transfers | NUMBER | |
| 16 | TRANSFER_TRANSACTION_ID | Links the paired row of a two-row transfer | NUMBER | |
| 17 | ACTUAL_COST | Costed actual cost of the transaction | NUMBER | |
| 18 | REASON_ID | Transaction reason code id | NUMBER |
Field provenance: hand-curated. 1 key field.
Boilerplate SQL
Starting point for reading the BICC-landed copy of INV_MATERIAL_TXNSon 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.
-- ============================================================
-- Table : INV_MATERIAL_TXNS — The material transaction ledger — one row per inventory movement or cost update, classified by transaction type, action, and source type, with quantity, date, and the document reference that caused it; the reconciliation backbone for every stock question
-- Purpose: Column-selected read of INV_MATERIAL_TXNS — auto-generated from field metadata
-- Grain : One row per inventory org (ORGANIZATION_ID) + TRANSACTION_ID
-- 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 movement",
t.INVENTORY_ITEM_ID AS "Item transacted",
t.ORGANIZATION_ID AS "Inventory org where the transaction happened",
t.SUBINVENTORY_CODE AS "Subinventory transacted against",
t.LOCATOR_ID AS "Stock locator",
t.TRANSACTION_TYPE_ID AS "Transaction type (miscellaneous issue, PO receipt…)",
t.TRANSACTION_ACTION_ID AS "Underlying action (issue, receipt, transfer) — a VARCHAR2 code in the Fusion dictionary, unlike EBS",
t.TRANSACTION_SOURCE_TYPE_ID AS "Class of source document driving the transaction",
t.TRANSACTION_SOURCE_ID AS "Id of the specific source record",
t.TRX_SOURCE_LINE_ID AS "Source document line id",
t.TRANSACTION_QUANTITY AS "Signed quantity in the entered UOM",
t.TRANSACTION_UOM AS "Entered unit of measure",
t.PRIMARY_QUANTITY AS "Signed quantity converted to the item's primary UOM — the column to SUM",
t.TRANSACTION_DATE AS "When the transaction was processed",
t.TRANSFER_ORGANIZATION_ID AS "Counterpart org on transfers",
t.TRANSFER_TRANSACTION_ID AS "Links the paired row of a two-row transfer",
t.ACTUAL_COST AS "Costed actual cost of the transaction",
t.REASON_ID AS "Transaction reason code id"
FROM <catalog>.<schema>.INV_MATERIAL_TXNS 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;7 parameters not filled: <catalog>, <schema>, <inventory_org_id>, <TRANSACTION_ID>, <DATE_FROM>, <DATE_TO>, <watermark>
Relationships
1-hop neighbors — click a table to navigate there. FND lookup decode and translation edges are highlighted; they’re the joins newcomers most often get wrong.
Join details
ON INV_MATERIAL_TXNS.INVENTORY_ITEM_ID = EGP_SYSTEM_ITEMS_B.INVENTORY_ITEM_ID AND INV_MATERIAL_TXNS.ORGANIZATION_ID = EGP_SYSTEM_ITEMS_B.ORGANIZATION_IDON INV_MATERIAL_TXNS.TRANSACTION_TYPE_ID = INV_TRANSACTION_TYPES_B.TRANSACTION_TYPE_IDON INV_MATERIAL_TXNS.SUBINVENTORY_CODE = INV_SECONDARY_INVENTORIES.SECONDARY_INVENTORY_NAME AND INV_MATERIAL_TXNS.ORGANIZATION_ID = INV_SECONDARY_INVENTORIES.ORGANIZATION_IDON INV_MATERIAL_TXNS.LOCATOR_ID = INV_ITEM_LOCATIONS.INVENTORY_LOCATION_ID AND INV_MATERIAL_TXNS.ORGANIZATION_ID = INV_ITEM_LOCATIONS.ORGANIZATION_IDON INV_MATERIAL_TXNS.ORGANIZATION_ID = INV_ORG_PARAMETERS.ORGANIZATION_IDON INV_MATERIAL_TXNS.TRANSFER_ORGANIZATION_ID = INV_ORG_PARAMETERS.ORGANIZATION_ID