Intercompany Elimination Integrations for Multi-Entity ERP Consolidation
How do you implement intercompany elimination integrations for multi-entity ERP consolidation?
TL;DR
- Bottom line: Intercompany eliminations remove intra-group transactions from consolidated financials. Automate with a three-phase pipeline: (1) continuous transaction matching during the period, (2) reconciliation and dispute resolution at entity close, (3) automated elimination journal posting at consolidation. Manual approaches fail beyond 10 entities.
- Key limit: 100% of intercompany transactions must be eliminated regardless of ownership percentage (ASC 810, IFRS 10) — elimination at the first common parent in the entity hierarchy, never skipping levels.
- Watch out for: Currency translation timing — eliminate intercompany balances AFTER translating subsidiary financials to the reporting currency, but unrealized profit on intercompany inventory must eliminate at the historical exchange rate, not the closing rate.
- Best for: Multi-entity groups with 10+ legal entities, cross-border operations, multiple ERPs feeding a single consolidation engine.
- Authentication: Each consolidation engine has its own auth — Oracle FCCS uses EPM Automate CLI with OAuth, SAP S/4HANA uses SAP Communication Arrangements with OAuth 2.0 client credentials, OneStream uses REST API with bearer tokens.
System Profile
This integration playbook covers the end-to-end intercompany elimination process across three leading consolidation platforms: Oracle FCCS, SAP S/4HANA Group Reporting with ICMR, and OneStream. It addresses integration patterns between source ERP systems and consolidation engines for both homogeneous and heterogeneous ERP landscapes.
| System | Role | API Surface | Direction |
|---|---|---|---|
| Source ERP(s) | Transaction origination — GL balances, subledger detail | REST / OData / File-based | Outbound to consolidation |
| Oracle FCCS | Consolidation engine — matching, elimination, reporting | REST (EPM Automate), Data Integration | Inbound + processing |
| SAP S/4HANA Group Reporting | Consolidation engine — ICMR matching, elimination, reporting | OData v4, ICMR APIs, RFC | Inbound + processing |
| OneStream | Consolidation engine — matching, elimination, reporting | REST API, Connector Framework | Inbound + processing |
| iPaaS / Middleware | Orchestration — data extraction, transformation, scheduling | MuleSoft / Boomi / Workato / Celigo | Orchestrator |
API Surfaces & Capabilities
| Consolidation Engine | Data Load API | Elimination Trigger | Matching API | Real-time? | Multi-GAAP? |
|---|---|---|---|---|---|
| Oracle FCCS | EPM Automate REST + Data Management | Consolidation process (automatic) | Manual matching workspace + rules | No (batch) | Yes |
| SAP S/4HANA Group Reporting | OData v4 + Flexible Upload + RFC | Group close task (ICMR-linked) | ICMR (real-time matching) | Yes (ICMR) | Yes |
| OneStream | REST API + Connector Framework | Consolidation workflow (rules engine) | IC Matching cube + rules | No (batch) | Yes |
| BlackLine (overlay) | API connectors to ERPs | Workflow-triggered | Automated matching engine | Near-real-time | N/A |
| Workiva (overlay) | API + spreadsheet upload | Manual / workflow | Transaction-level matching | No | N/A |
Rate Limits & Quotas
Per-Request Limits
| Engine | Limit Type | Value | Notes |
|---|---|---|---|
| Oracle FCCS | Max data load file size | 2 GB per file | Split larger extracts |
| Oracle FCCS | Max concurrent data loads | 5 per application | Queue additional loads |
| SAP S/4HANA ICMR | Max entities per matching run | No hard limit (performance-dependent) | Degrade above 500 entities |
| SAP S/4HANA | OData batch request size | 1,000 changesets per batch | Chunk larger payloads |
| OneStream | REST API payload | 100 MB per request | Connector framework handles chunking |
Rolling / Daily Limits
| Engine | Limit Type | Value | Window | Notes |
|---|---|---|---|---|
| Oracle FCCS | EPM Automate sessions | 1 concurrent per user | Per session | Use service accounts |
| Oracle FCCS | API calls (EPM Cloud) | Fair use (no hard cap) | 24h | Monitor via Activity Reports |
| SAP S/4HANA | Communication Arrangement API calls | Configurable per arrangement | Tenant-specific | Default: no hard limit on Cloud |
| OneStream | REST API calls | Governed by platform license | Per tenant | Contact OneStream for specifics |
Authentication
| Engine | Flow | Use When | Token Lifetime | Notes |
|---|---|---|---|---|
| Oracle FCCS | EPM Automate CLI + OAuth | Scheduled consolidation runs | Session-based (8h) | Service account recommended |
| Oracle FCCS | REST API with OAuth 2.0 | Custom integrations | 1h access token | Refresh via token endpoint |
| SAP S/4HANA | OAuth 2.0 Client Credentials | Server-to-server ICMR/OData | Configurable (default 12h) | Communication Arrangement required |
| SAP S/4HANA | SAML / SSO | Interactive group reporting | Session-based | For Fiori-based matching workspace |
| OneStream | REST API Bearer Token | All programmatic access | Configurable (default 4h) | API key + secret for token generation |
Authentication Gotchas
- Oracle FCCS EPM Automate requires a dedicated service account — shared user accounts cause session conflicts that abort running consolidations [src1]
- SAP Communication Arrangements must be created per API scenario — a single arrangement does not grant access to all OData services, including ICMR endpoints [src2]
- OneStream REST tokens are tenant-scoped — multi-tenant environments require separate authentication per tenant [src3]
Constraints
- Intercompany eliminations MUST occur at the first common parent in the entity hierarchy — you cannot eliminate at an arbitrary level or skip hierarchy levels [src1, src6]
- 100% of intercompany transactions must be eliminated regardless of minority interest ownership percentage — ASC 810-10-45-1 and IFRS 10 B86 are explicit on this [src6]
- Currency translation MUST complete before elimination when entities use different functional currencies [src7]
- Unrealized intercompany profit on inventory must be eliminated at the historical exchange rate, not the closing rate [src7]
- Matching tolerances must be defined PER ACCOUNT TYPE — zero tolerance on balance sheet IC accounts, configurable threshold on P&L [src5]
- Plug accounts must be configured for EVERY elimination category — missing plug accounts cause consolidation processes to abort [src1]
- Transfer pricing adjustments must be fully reconciled before elimination entries are posted [src7]
- Multi-GAAP environments require separate elimination runs per reporting standard [src1, src2]
Integration Pattern Decision Tree
START — Implement intercompany elimination integration
|
+-- What consolidation engine are you using?
| +-- Oracle FCCS
| | +-- Single Oracle ERP Cloud --> Data Integration direct connector
| | +-- Multiple / non-Oracle ERPs --> iPaaS + Data Management flat file
| | +-- Standard IC balances --> Built-in FCCS_Intercompany Eliminations
| | +-- Custom rules (margin, markup) --> Configurable Consolidation Rules
| |
| +-- SAP S/4HANA Group Reporting
| | +-- All SAP S/4HANA --> ICMR native (no ETL needed)
| | +-- Mixed SAP + non-SAP --> Flexible Upload / API import to ICMR
| | +-- Real-time continuous --> ICMR with daily data release
| | +-- Period-end batch --> Group close task with ICMR trigger
| |
| +-- OneStream
| | +-- Direct ERP connectors available --> OneStream connector
| | +-- Custom sources --> REST API / flat file load
| | +-- Simple 1:1 matching --> IC Matching dimension rules
| | +-- Complex many:many --> Custom business rules + workflow
| |
| +-- No consolidation engine / spreadsheet-based
| +-- < 10 entities --> Automate with scripts + reconciliation tool
| +-- 10+ entities --> STRONGLY recommend a consolidation engine
|
+-- Data flow: Extract --> Transform --> Load --> Match --> Reconcile --> Eliminate --> Report
|
+-- Multi-currency?
+-- YES --> Translate FIRST, then eliminate (current rate method default)
+-- NO --> Eliminate directly after matching
Quick Reference — Elimination Pipeline
| Step | Source System | Action | Target System | Data Objects | Failure Handling |
|---|---|---|---|---|---|
| 1. Extract | Source ERP(s) | Export GL trial balance with IC dimension | iPaaS / staging | Trial balance, IC partner codes | Retry 3x, alert on missing entities |
| 2. Transform | iPaaS | Map COA, IC partners, currencies | Staging | Mapped trial balance | Reject unmapped accounts |
| 3. Load | iPaaS | Push data to consolidation engine | FCCS / SAP GR / OneStream | Consolidation data cubes | Idempotent reload — clear and replace |
| 4. Match | Consolidation engine | Auto-match IC transactions | Internal | Matched/unmatched pairs | Route unmatched to exception workflow |
| 5. Reconcile | Consolidation engine | Resolve discrepancies | Internal | Adjustment entries | Escalation after 48h |
| 6. Translate | Consolidation engine | Convert to reporting currency | Internal | Translated balances | Flag missing exchange rates |
| 7. Eliminate | Consolidation engine | Post elimination journals | Internal | Elimination JEs + plug entries | Abort if out-of-balance |
| 8. Consolidate | Consolidation engine | Roll up entity hierarchy | Internal | Consolidated trial balance | IC balances must net to zero |
| 9. Report | Consolidation engine | Generate consolidated statements | Reporting / BI | Financial statements | Reconciliation report for auditors |
Step-by-Step Integration Guide
1. Configure intercompany dimensions
Set up the IC dimension in your consolidation engine with members for each legal entity participating in IC transactions. [src1, src2]
# Oracle FCCS — import IC dimension members
epmautomate login [email protected] password https://epm-instance.oraclecloud.com
epmautomate uploadfile ic_members.csv inbox
epmautomate importdimension "FCCS" "Intercompany" "ic_members.csv"
Verify: Consolidation > Manage > Dimensions > Intercompany — all legal entities appear as IC members.
2. Extract GL trial balances with intercompany detail
Extract account, entity, IC partner, currency, period, and amount. BOTH sides of every IC transaction must be extracted. [src4, src5]
-- Oracle ERP Cloud GL extract for FCCS
SELECT
gl.ledger_id,
gcc.segment1 AS entity,
gcc.segment5 AS intercompany_partner,
gcc.segment3 AS natural_account,
gl.currency_code,
gl.period_name,
SUM(gl.accounted_dr - gl.accounted_cr) AS balance
FROM gl_balances gl
JOIN gl_code_combinations gcc ON gl.code_combination_id = gcc.code_combination_id
WHERE gl.period_name = :period
AND gl.actual_flag = 'A'
AND gcc.segment5 IS NOT NULL
GROUP BY gl.ledger_id, gcc.segment1, gcc.segment5,
gcc.segment3, gl.currency_code, gl.period_name
Verify: Row count per entity > 0. IC partner column has no NULLs.
3. Transform and map to consolidation chart of accounts
Map source ERP accounts to consolidation COA and IC partner codes. Transformation must be idempotent. [src4]
# Input: Source GL extract CSV
# Output: Mapped CSV ready for consolidation engine load
import pandas as pd
coa_map = pd.read_csv('coa_mapping.csv')
entity_map = pd.read_csv('entity_mapping.csv')
source = pd.read_csv('gl_extract.csv')
mapped = source.merge(coa_map, left_on='natural_account', right_on='source_account')
mapped = mapped.merge(entity_map, left_on='entity', right_on='source_entity')
unmapped = source[~source['natural_account'].isin(coa_map['source_account'])]
if len(unmapped) > 0:
raise ValueError(f"{len(unmapped)} unmapped accounts — fix mapping first")
mapped[['consol_entity', 'consol_account', 'consol_entity_ic',
'currency_code', 'period_name', 'balance']].to_csv('consol_load.csv', index=False)
Verify: Zero unmapped accounts. Output row count matches input.
4. Load data into the consolidation engine
Use clear-and-replace per entity per period for idempotency. [src1, src2]
# Oracle FCCS
epmautomate rundatarule "IC_Data_Load_Rule" "Jan-2026" "Jan-2026" \
REPLACE "consol_load.csv"
# SAP S/4HANA Group Reporting
curl -X POST "https://sap-instance.com/sap/opu/odata4/sap/api_grp_rptg_data_upload/..." \
-H "Authorization: Bearer $SAP_TOKEN" \
-H "Content-Type: application/json" -d @consol_load.json
# OneStream
curl -X POST "https://onestream-instance.com/api/data/load" \
-H "Authorization: Bearer $OS_TOKEN" \
-H "Content-Type: text/csv" --data-binary @consol_load.csv
Verify: Data load status returns SUCCESS. Trial balance totals match source.
5. Run intercompany matching and resolve discrepancies
Matching pairs reciprocal transactions. Discrepancies route to exception workflows categorized by type: timing, currency, or amount differences. [src2, src5]
Resolution matrix:
- Timing < 1 period: Post accrual in lagging entity
- Timing > 1 period: Escalate to IC coordinator
- FX within tolerance (< 0.1%): Post to FX elimination account
- FX outside tolerance: Restate at agreed rate
- Amount difference: Route to transfer pricing team
- Missing counterpart: Block elimination until both sides posted
Verify: Matching report shows > 95% auto-matched. Unmatched items within tolerance.
6. Trigger elimination and validate
Post elimination journals at the first common parent. Validate IC balances net to zero. [src1, src3]
-- Validate: IC balances must net to zero after elimination
SELECT parent_entity, SUM(elimination_amount) AS net_ic_balance
FROM elimination_journals
WHERE period = '2026-01' AND elimination_type = 'Intercompany'
GROUP BY parent_entity
HAVING ABS(SUM(elimination_amount)) > 0.01
-- Expected: no rows returned
Verify: Query returns zero rows. All IC accounts net to zero at every parent node.
Data Mapping
Field Mapping Reference
| Source ERP Field | Consolidation Engine Field | Type | Transform | Gotcha |
|---|---|---|---|---|
| GL Account Code | Consolidation Account | String | COA mapping table | Many-to-one possible — validate totals |
| Entity / Company Code | Consolidation Unit / Entity | String | Entity mapping table | Must exist in hierarchy before load |
| IC Partner Code | Intercompany Member | String | Partner mapping table | Must be valid entity in IC dimension |
| Functional Currency Amount | Amount (LC) | Decimal | Direct (if same currency) | Some ERPs store in cents |
| Reporting Currency Amount | Amount (RC) | Decimal | Translate via rate table | Rate source and timing must match |
| Period (YYYY-MM) | Period / Scenario | String | Period mapping | Fiscal year differences across entities |
| Debit/Credit indicator | Signed Amount | Decimal | Convert DR(+) / CR(-) | Some ERPs use separate columns |
| IC Transaction Type | IC Elimination Category | String | Category mapping | Drives which plug account is used |
| Trading Partner VAT ID | IC Partner Identifier | String | Lookup in master data | Critical for EU VAT reporting |
Data Type Gotchas
- SAP stores amounts in smallest currency unit (cents for USD) — Oracle and OneStream expect decimal. Divide by 100 for 2-decimal currencies. [src2]
- Period naming: SAP uses "001/2026", Oracle FCCS uses "Jan-26", OneStream uses "2026M1". Always transform to target format. [src1]
- IC partner codes may be numeric in SAP ("1000") and alphanumeric in Oracle ("US_CORP"). Mapping must handle bidirectional lookups. [src4]
- Sign convention varies: some ERPs store credits as negative, others use separate columns. Standardize to signed amounts before loading. [src7]
Error Handling & Failure Points
Common Error Codes
| Engine | Code | Meaning | Cause | Resolution |
|---|---|---|---|---|
| Oracle FCCS | EPMCSS-20501 | Data load validation failed | Unmapped dimension member | Add member or fix mapping |
| Oracle FCCS | EPMCSS-20123 | Consolidation process failed | Missing plug account | Configure plug account |
| SAP S/4HANA | ICMR_MATCH_001 | No matching partner entry | One side not posted | Post missing entry or adjust |
| SAP S/4HANA | GR_ELIM_002 | Wrong hierarchy level | Entity hierarchy misconfigured | Verify parent assignments |
| OneStream | OS-CONSOL-4001 | IC mismatch exceeds tolerance | Amount/currency difference | Adjust tolerance or resolve |
| OneStream | OS-LOAD-3002 | Duplicate data for period | Data loaded without clear flag | Use clear-and-replace |
Failure Points in Production
- Missing one side of IC transaction: Matching fails, elimination incomplete, consolidated P&L overstated. Fix:
Implement mandatory IC confirmation workflow — both entities must confirm before period close.[src5] - Currency translation timing error: Eliminating before translation produces artificial FX gains/losses. Fix:
Enforce consolidation process sequencing — translate first, then eliminate.[src7] - Plug account balance grows silently: Small differences accumulate, become material. Fix:
Monitor monthly. Set threshold alerts (> $10K triggers investigation).[src1] - Entity hierarchy change mid-year: Acquisitions change elimination hierarchy, prior-period eliminations reverse incorrectly. Fix:
Apply hierarchy changes prospectively. Maintain period-specific snapshots.[src1] - Multi-GAAP elimination mismatch: Different recognition under local GAAP vs IFRS. Fix:
Maintain separate elimination journals per GAAP basis. Run separate consolidation per standard.[src6] - Timeout on large matching runs: 200+ entities with millions of IC transactions. Fix:
Chunk matching by IC category. Schedule during off-peak. Enable background processing.[src2]
Anti-Patterns
Wrong: Eliminating at the top parent only
// BAD — eliminates at group level, misses intermediate subgroup consolidation
Elimination Level: Top Parent (Group)
Entity A (subsidiary of SubGroup X) sells to Entity B (subsidiary of SubGroup Y)
--> Elimination posted only at Group level
--> SubGroup X and SubGroup Y statements still contain IC transactions
Correct: Eliminate at the first common parent
// GOOD — eliminates at the correct level per accounting standards
Entity A (SubGroup X) sells to Entity B (SubGroup Y)
--> Both roll up to Regional HQ
--> Elimination posted at Regional HQ (first common parent)
--> Both subgroup and group consolidated statements are correct
Wrong: Eliminating before currency translation
// BAD — eliminates in local currencies, then translates
Step 1: Entity A (EUR) has IC receivable 100 EUR from Entity B (USD)
Step 2: Eliminate 100 EUR vs 110 USD (WRONG — different currencies)
Step 3: IC accounts don't net to zero in reporting currency
Correct: Translate first, then eliminate
// GOOD — translate to reporting currency, then eliminate matched amounts
Step 1: Translate Entity A: 100 EUR --> 108 USD at closing rate
Step 2: Entity B already in USD: 110 USD payable
Step 3: Eliminate 108 USD vs 110 USD
Step 4: 2 USD difference --> FX elimination plug account
--> IC accounts net to zero (within tolerance)
Wrong: Single catch-all elimination journal
// BAD — one entry for all IC transaction types
Dr. IC Revenue $500,000
Cr. IC COGS $500,000
// Misses: IC loans, dividends, management fees, unrealized profit
Correct: Categorized eliminations with separate plug accounts
// GOOD — separate entries per IC category
// Sales/Purchases
Dr. IC Revenue $500,000
Cr. IC COGS $500,000
// Loans
Dr. IC Loan Payable $200,000
Cr. IC Loan Receivable $200,000
// Dividends
Dr. IC Dividend Inc $50,000
Cr. IC Dividend Paid $50,000
// Unrealized IC Profit (at HISTORICAL rate)
Dr. IC Profit Elim $30,000
Cr. Inventory $30,000
Common Pitfalls
- No IC trading partner agreements: Without standardized pricing and terms, each subsidiary pair uses different rates. Fix:
Create IC SLAs with standard pricing, payment terms, and currency conventions.[src5] - Ignoring NCI impact on elimination presentation: 100% eliminated but NCI allocation must be correct. Fix:
Configure ownership tables. Verify NCI formulas match ASC 810-10-45 or IFRS 10 B94.[src6] - Quarterly elimination instead of monthly: Three months of discrepancies compound. Fix:
Monthly elimination cycles minimum. Best: continuous matching with ICMR.[src4] - Not testing with production data volumes: Matching that works with 100 transactions may time out with 100,000. Fix:
Load-test with 3x expected peak volume. Set monitoring alerts.[src2] - Unversioned COA mapping table: COA changes break mapping silently. Fix:
Version mapping with effective dates. Validate coverage before every load.[src4] - Forgetting IC cash flow eliminations: P&L and BS eliminated but cash flow overstated. Fix:
Include IC cash flow categories in elimination rules. Verify independently.[src7]
Diagnostic Commands
# Oracle FCCS — Check consolidation status
epmautomate getconsolstatus "FCCS" "Actual" "Jan-26" "Total_Entity"
# Oracle FCCS — Export IC matching report
epmautomate exportdata "IC_Matching_Report" "Jan-26"
# SAP S/4HANA — Check ICMR matching status
curl -X GET "https://sap-instance.com/sap/opu/odata4/sap/api_icmr_status/..." \
-H "Authorization: Bearer $SAP_TOKEN"
# SAP S/4HANA — List unmatched IC items
curl -X GET "https://sap-instance.com/sap/opu/odata4/sap/api_icmr_items/.../UnmatchedItemSet" \
-H "Authorization: Bearer $SAP_TOKEN"
# OneStream — Check consolidation status
curl -X GET "https://onestream-instance.com/api/consolidation/status?scenario=Actual&period=2026M1" \
-H "Authorization: Bearer $OS_TOKEN"
# Validate IC balances net to zero (any engine)
SELECT parent_entity, SUM(elimination_amount) AS net_ic_balance
FROM elimination_journals
WHERE period = '2026-01' AND elimination_type = 'Intercompany'
GROUP BY parent_entity
HAVING ABS(SUM(elimination_amount)) > 0.01
-- Expected: no rows returned
Version History & Compatibility
| Engine / Feature | Version | Release Date | Status | Key Changes |
|---|---|---|---|---|
| Oracle FCCS | 24.12 | 2024-12 | Current | Enhanced IC matching rules, improved plug account reporting |
| Oracle FCCS | 24.06 | 2024-06 | Supported | Multi-GAAP elimination rule sets |
| SAP S/4HANA ICMR | 2023 FPS02 | 2024-03 | Current | Real-time matching, API data import |
| SAP S/4HANA ICMR | 2021 | 2021-10 | Supported | Initial ICMR release |
| SAP BPC | 11.1 | 2020-05 | Maintenance | Being replaced by S/4HANA GR |
| OneStream | 8.2 | 2025-01 | Current | Enhanced connectors, REST API v2 |
| OneStream | 7.5 | 2023-06 | Supported | IC Matching cube improvements |
Deprecation Policy
SAP BPC is in maintenance mode — SAP steers customers to S/4HANA Group Reporting with ICMR. Oracle Hyperion Financial Management (HFM) is being sunset in favor of FCCS. Organizations on legacy platforms should plan migration within 2-3 years.
When to Use / When Not to Use
| Use When | Don't Use When | Use Instead |
|---|---|---|
| Multi-entity group with IC transactions requiring consolidation | Single legal entity with no subsidiaries | Standard GL close process |
| 10+ legal entities across multiple jurisdictions | 2-3 entities with minimal IC transactions | Spreadsheet-based consolidation |
| Multiple source ERPs feeding one consolidation | Single ERP with built-in consolidation module | Native ERP consolidation |
| Multi-GAAP reporting (local GAAP + IFRS) | Single GAAP with simple structure | Simplified consolidation tools |
| High IC volume (> 1,000 transactions/month) | < 50 IC transactions per month | Manual matching + journal entries |
| Audited consolidated statements required | Internal management reporting only | BI tool with entity roll-up |
Cross-System Comparison
| Capability | Oracle FCCS | SAP S/4HANA GR + ICMR | OneStream | Notes |
|---|---|---|---|---|
| IC Matching | Manual workspace + rules | Real-time auto-matching | Rules-based matching cube | SAP most automated |
| Elimination Trigger | Consolidation process (batch) | Group close task (ICMR-linked) | Consolidation workflow | SAP offers real-time |
| Multi-GAAP | Parallel scenario dimensions | Multiple consolidation versions | Separate workflows | All three support it |
| API Data Load | EPM Automate REST + DM | OData v4 + Flexible Upload | REST API + connectors | SAP most modern API |
| Hierarchy Management | Dimension editor | Organizational structure | Entity dimension mgmt | SAP most integrated |
| Plug Account Handling | Automatic with config | Automatic with config | Automatic with config | All comparable |
| Audit Trail | Process logs + lineage | ICMR status + change docs | Workflow audit log | All adequate |
| Scalability | 1,000+ entities proven | 500+ entities proven | 500+ entities proven | FCCS best for large groups |
| Deployment | Cloud only | Cloud or on-premise | Cloud only | SAP only hybrid option |
| Pricing | Oracle EPM Cloud license | Included in S/4HANA | Platform license | SAP most cost-effective for SAP shops |
Important Caveats
- SAP ICMR is included at no extra cost for S/4HANA customers but requires S/4HANA 1909+ (on-premise) or Cloud 1908+ — older SAP systems must use BPC or upgrade
- Oracle FCCS is cloud-only — on-premise Hyperion customers must migrate. Migration projects typically take 6-12 months
- OneStream pricing is platform-based — IC matching is one module within the platform license. Evaluate total cost vs point solutions
- Elimination rules are accounting-standard-specific (ASC 810, IFRS 10, local GAAP) — validate logic with your auditor before go-live
- This card covers integration patterns and technical implementation. Transfer pricing compliance and tax implications are out of scope
- Consolidation engine APIs change with each release — verify endpoints and features against current vendor release notes