The cash flow statement Oracle Fusion does not make
Oracle Fusion ships a cash flow statement only as a China localization. Everyone else hand-builds the account map inside a report, unaudited and undrillable. One account map in an owned warehouse fixes all of it.
1 GL journal lines, extracted whole. The accrual side: income, working-capital movement, non-cash items.
2 Cash facts: AP payments, AR receipts, bank statement lines. The data a direct-method statement needs and the ledger does not carry.
3 The account map is one table: every account assigned to a cash-flow line, versioned in Git. One hard gate at load: unmapped accounts must be zero.
4 Everything lands in bronze, the raw tier of your cloud, and loads into the star.
5 The warehouse star is just a database in your own cloud, amounts joined to lookups, security joined on ledger. The conformed Oracle model is public, drill it here.
6 Read it in Power BI, Tableau, ThoughtSpot, or a custom app on the same star; ours is the console, where every line drills to its transactions. Net change equals the GL cash movement, always.
deploys Everything ships from Git: a mapping change is a reviewed commit, not an edit in a grid.
The record, in Oracle’s own pages: the documented cash flow statement is a China Ministry of Finance requirement, built on a dedicated Local Use chart segment and the Standard Accrual for China accounting method; the Customer Connect threads asking what setup produces one at all and how to get a detailed cash flow view; and the practitioner guidance from the Quest Oracle Community pointing everyone else at Financial Reporting Studio, which means building the account map by hand inside the report.
answer operating 3,214,800 · investing −1,406,500 · financing −612,000 = net +1,196,300 · equals the change in cash per GL
◆ The statement, rendered— the output, on the statement every board reads.
| Years ended December 31, | 2025 | 2024 |
|---|---|---|
| Cash and cash equivalents, beginning balances | $ 6,412 | $ 3,293 |
| Operating activities: | ||
| Net income | 14,382 | 11,957 |
| Adjustments to reconcile net income to cash generated by operating activities: | ||
| Depreciation and amortization | 6,218 | 5,904 |
| Share-based compensation expense | 1,140 | 985 |
| Other | (312) | 148 |
| Changes in operating assets and liabilities: | ||
| Accounts receivable, net | (2,847) | (1,512) |
| Inventories | (1,905) | 894 |
| Prepaid expenses and other assets | (618) | (233) |
| Accounts payable | 1,733 | (642) |
| Accrued and other liabilities | 946 | (2,610) |
| Cash generated by operating activities | 18,737 | 14,891 |
| Investing activities: | ||
| Purchases of property and equipment | (7,441) | (5,326) |
| Proceeds from sale of equipment | 214 | 89 |
| Acquisition of business, net of cash acquired | (3,650) | — |
| Capitalized software | (982) | (764) |
| Cash used in investing activities | (11,859) | (6,001) |
| Financing activities: | ||
| Borrowings on revolving credit facility | 9,000 | 6,500 |
| Repayments on revolving credit facility | (11,500) | (8,200) |
| Repayments of term debt | (1,875) | (1,875) |
| Dividends paid | (2,400) | (2,000) |
| Payments for taxes related to net share settlement of equity awards | (287) | (196) |
| Cash used in financing activities | (7,062) | (5,771) |
| Increase/(Decrease) in cash and cash equivalents | (184) | 3,119 |
| Cash and cash equivalents, ending balances | $ 6,228 | $ 6,412 |
Illustrative company and figures; the shape is the deliverable. Every line is a query over the classified star and drills to the journals or payments behind it, the path no report tool gives the statement.
◆ The record, in full— what Oracle ships, and what everyone actually does.
| The evidence | What it says |
|---|---|
| The China-only feature | Oracle’s documentation describes the cash flow statement as a report required by the China Ministry of Finance. Producing it requires assigning a dedicated Local Use segment in the chart of accounts and using the Standard Accrual for China subledger accounting method. If your chart was not designed for it, the feature is not for you. |
| The forum asks | Customer Connect threads ask what the mandatory setups are to get a cash flow statement at all, and how to see cash inflows and outflows in detail. The questions recur because there is no seeded general-purpose statement to point to. |
| The tool answer | Practitioner guidance points at Financial Reporting Studio as the place to build cash flow reporting. That is an honest answer, and it is the problem: the account-to-item map gets hand-keyed into a report grid, invisible to everything else in the system. |
| What breaks | A report-resident map has no version history and no reviewer. A reorg or acquisition adds accounts the grid does not know, and they simply vanish from the statement. No line drills to its transactions. And a direct-method statement is out of reach entirely, because the report writer reads balances, not payments and receipts. |
◆ The owned statement, mechanics— the map as a dimension, both methods, one tie.
| Piece | How it works |
|---|---|
| The map dimension | One table: account to cash-flow line, item to section, operating, investing, financing. It lives in the warehouse and in Git, so a classification change is a reviewed commit with a date and an author, the audit trail a report grid can never give. |
| Indirect method | Classified GL journal lines: start from income, add back non-cash items, move working capital by its mapped items. All arithmetic over the star, nothing hand-keyed. |
| Direct method | AP payment, AR receipt, and bank statement facts classified by the same map. The version the board actually reads, cash in from customers, cash out to suppliers and payroll, and the version Fusion’s report tools cannot produce because the data is below their grain. |
| The tie, built in | Net change in cash on the statement equals the period movement on the GL cash accounts in the same star. If they differ, the load fails loudly before anyone presents anything. |
| Gates before anyone looks | Unmapped accounts must be zero. Row counts against the manifest, duplicate keys, section totals cross-footed against the net change. A failed gate stops the load, not the board meeting. |
◆ Where the data comes from, in Oracle’s own reference— every input named, linked, and stated at its documented grain.
| Statement need | Documented source and grain |
|---|---|
| Indirect: movements | General Ledger – Journals Real Time, at the grain of GL_IMPORT_REFERENCES and GL_JE_LINES, and General Ledger – Transactional Balances Real Time, at the grain of GL_BALANCES. The accrual side and the period movements. |
| Classification · drill | Subledger Accounting – Journals Real Time, at the grain of XLA_AE_LINES, carrying the account combination and the accounting class (Liability, Receivable, Revenue) that lets each cash entry be classified by its offset and drilled to its source transaction. |
| Direct: cash out | Payables Payments – Disbursements Real Time, at the grain of payment distributions, AP_PAYMENT_HIST_DISTS, with payee, disbursement bank account, paid amount, and payment accounting details. |
| Direct: cash in | Receivables – Receipts Details Real Time, at the grain of receipt distributions, with the receipt-to-cash join documented key by key in Oracle’s page. |
| Non-subledger cash | Cash Management – Bank Statements Real Time, at the grains of CE_STATEMENT_HEADERS, CE_STATEMENT_LINES, and CE_STMT_LINE_AVALBTY. Fees, interest, transfers, anything the subledgers never saw. |
| Bulk path | The same tables ship in volume through BICC; Oracle publishes the finance extract stores in its Data Store reference. Subject areas above are the OTBI and BIP path when a client restricts to those; the extraction rule is unchanged: BICC for bulk, BIP for what it cannot see. |
| Multiple entities | Ledger and the account combination ride on every GL and SLA line, so entity is the primary balancing segment and a per-entity statement is a grouping, not a rebuild. Two build items stated honestly: a consolidated group statement across currencies needs translation, and intercompany transfers get their own cash-flow line so the group view can eliminate them instead of double-counting. |
◆ The Q2 board-pack walk-through— an acquisition, 214 new accounts, zero silent holes.
Quarter close, board pack due. The company acquired in May and the chart grew by 214 accounts. The old way: someone remembers, or does not, to hand-edit the FR grid, and the statement quietly misclassifies or drops whatever they missed, discovered, if ever, by an auditor cross-footing months later. The owned way: the first nightly load after the accounts appear fails its unmapped-accounts gate, listing exactly the new accounts. The map dimension gets one reviewed commit classifying them, the load reruns green, and the statement regenerates: operating 3,214,800, investing −1,406,500, financing −612,000, net change +1,196,300, equal to the movement on the cash accounts in the same ledger. The CFO clicks the supplier-payments line and sees the payments behind it. Both methods, one map, one tie, nothing hand-keyed.
Published clean-room: the pattern is shown, no client’s SQL, structures, or naming appears here, and never will.
- indirect method
- Cash flow derived from income and balance movements. Built from GL lines.
- direct method
- Cash flow shown as actual receipts and payments. Needs subledger and bank facts.
- cash-flow line
- The line an amount belongs to. Here, a dimension every account joins.
- GL · AP · AR · CE
- Ledger, payables, receivables, cash management. All four feed the statement.
- FR
- Financial Reporting, Oracle’s report writer. Where hand-built maps live.
- Local Use segment
- The dedicated chart segment the China localization requires.
- BICC
- BI Cloud Connector, Oracle’s bulk export service for Fusion data.
- DAG
- A scheduled chain of jobs. Airflow runs the nightly load as one.
- DQ
- Data-quality checks. Here the hard one: unmapped accounts must be zero.
- star schema
- One table of amounts joined to small lookup tables. The fast shape.
- ⋈
- A join. The map joins account to cash-flow line; security joins on ledger.