Advanced Intercompany Journal Entry API
Create, read, update, and delete advanced intercompany journal entries with multiple subsidiaries using the NetSuite REST API (OneWorld only).
Endpoints
| Method | Endpoint | Description |
|---|---|---|
GET | /record/v1/advIntercompanyJournalEntry | List all advanced IC journal entries |
GET | /record/v1/advIntercompanyJournalEntry/{id} | Get specific advanced IC journal entry |
POST | /record/v1/advIntercompanyJournalEntry | Create new advanced IC journal entry |
PATCH | /record/v1/advIntercompanyJournalEntry/{id} | Update advanced IC journal entry |
DELETE | /record/v1/advIntercompanyJournalEntry/{id} | Delete advanced IC journal entry |
Key Fields
Header Fields
| Field | Type | Description | Required |
|---|---|---|---|
id | string | Internal ID (read-only) | - |
tranId | string | Transaction number | Auto-generated |
tranDate | string | Transaction date (ISO 8601) | Yes |
postingPeriod | object | Accounting period | Auto-calculated |
subsidiary | object | Primary subsidiary | Yes |
currency | object | Transaction currency | Yes |
exchangeRate | number | Exchange rate | Auto-calculated |
approved | boolean | Approval status | Read-only |
reversalDate | string | Reversal date | No |
reversalDefer | boolean | Defer reversal | No |
memo | string | Memo/description | No |
tranStatus | object | Transaction status | Read-only |
Classification Fields
| Field | Type | Description | Required |
|---|---|---|---|
department | object | Default department | No |
class | object | Default classification | No |
location | object | Default location | No |
Sublists
| Field | Type | Description | Required |
|---|---|---|---|
line | collection | Journal entry lines | Yes (min 2) |
Example: Create Advanced Intercompany Journal Entry
POST /record/v1/advIntercompanyJournalEntry
Content-Type: application/json
{
"tranDate": "2025-12-25",
"subsidiary": {
"id": "1"
},
"currency": {
"id": "1"
},
"memo": "Multi-subsidiary allocation - Corporate overhead Q4 2025",
"line": {
"items": [
{
"subsidiary": {
"id": "1"
},
"account": {
"id": "150"
},
"debit": 3000.00,
"memo": "Corporate overhead - Parent Company",
"department": {
"id": "1"
}
},
{
"subsidiary": {
"id": "2"
},
"account": {
"id": "250"
},
"credit": 2000.00,
"memo": "Allocated to UK Subsidiary"
},
{
"subsidiary": {
"id": "3"
},
"account": {
"id": "250"
},
"credit": 1000.00,
"memo": "Allocated to Asia Subsidiary"
}
]
}
}
Response
{
"links": [
{
"rel": "self",
"href": "https://1234567.suitetalk.api.netsuite.com/services/rest/record/v1/advIntercompanyJournalEntry/9801"
}
],
"id": "9801",
"refName": "Advanced Intercompany Journal Entry #AICJ-9801",
"tranId": "AICJ-9801",
"tranDate": "2025-12-25",
"postingPeriod": {
"id": "12",
"refName": "Dec 2025"
},
"subsidiary": {
"id": "1",
"refName": "Parent Company"
},
"currency": {
"id": "1",
"refName": "USA"
},
"memo": "Multi-subsidiary allocation - Corporate overhead Q4 2025",
"approved": false,
"tranStatus": {
"id": "APPROVED",
"refName": "Approved"
}
}
Example: Update Advanced Intercompany Journal Entry
PATCH /record/v1/advIntercompanyJournalEntry/9801
Content-Type: application/json
{
"memo": "Updated: Multi-sub allocation - Q4 2025 corporate overhead (revised)",
"reversalDate": "2026-01-01"
}
Line Item Fields
Each item in the line.items array supports:
| Field | Type | Description | Required |
|---|---|---|---|
subsidiary | object | Line-level subsidiary | Yes |
account | object | GL account reference | Yes |
debit | number | Debit amount | Conditional |
credit | number | Credit amount | Conditional |
memo | string | Line memo | No |
entity | object | Customer/Vendor/Employee | No |
department | object | Department | No |
class | object | Classification | No |
location | object | Location | No |
Unlike standard journal entries, each line in an advanced IC journal entry must specify a subsidiary. This allows transactions to span multiple subsidiaries in a single entry.
Each line must have either a debit OR a credit amount, not both. The line cannot have both fields populated.
Balancing Requirements
Must Balance
The advanced intercompany journal entry must balance:
Total Debits = Total Credits
If the journal entry does not balance, NetSuite will reject the transaction with an error.
Example: Balanced Multi-Subsidiary Entry
{
"subsidiary": {"id": "1"},
"line": {
"items": [
{"subsidiary": {"id": "1"}, "account": {"id": "150"}, "debit": 3000.00},
{"subsidiary": {"id": "2"}, "account": {"id": "250"}, "credit": 2000.00},
{"subsidiary": {"id": "3"}, "account": {"id": "250"}, "credit": 1000.00}
]
}
}
Total Debits: 3,000.00 Total Credits: 3,000.00 Status: Balanced Subsidiaries Involved: 3 (Parent, UK, Asia)
Query Filters
Find by Date Range
GET /record/v1/advIntercompanyJournalEntry?q=tranDate BETWEEN '2025-01-01' AND '2025-12-31'
Find by Primary Subsidiary
GET /record/v1/advIntercompanyJournalEntry?q=subsidiary='1'
Find by Line Subsidiary
GET /record/v1/advIntercompanyJournalEntry?q=line.subsidiary='2'
Find Unapproved Entries
GET /record/v1/advIntercompanyJournalEntry?q=approved=false
Find by Account
GET /record/v1/advIntercompanyJournalEntry?q=line.account='150'
Find Multi-Subsidiary Entries
GET /record/v1/advIntercompanyJournalEntry?q=tranDate >= '2025-12-01'
Important Notes
OneWorld Requirement
Advanced intercompany journal entries are only available in NetSuite OneWorld accounts. This feature is not available in standard NetSuite accounts.
Key Difference from Standard IC Journal Entries
| Feature | Intercompany JE | Advanced IC JE |
|---|---|---|
| Subsidiaries | 2 (from/to) | Multiple (3+) |
| Line-level subsidiary | No | Yes (required) |
| Use case | Simple 2-party transactions | Complex multi-party allocations |
| Complexity | Simpler | More flexible |
Accounting Impact
Advanced intercompany journal entries:
- Post to multiple subsidiaries in a single transaction
- NetSuite automatically creates elimination entries for consolidation
- All subsidiaries must be in compatible accounting periods
- Handles complex multi-entity transactions efficiently
Subsidiary Restrictions
- User must have access to all subsidiaries used in the entry
- All subsidiaries must use compatible currencies or have exchange rates defined
- Cannot mix subsidiaries with incompatible fiscal calendars
- Each line must specify a subsidiary
Intercompany Accounts
Best practice:
- Use dedicated intercompany accounts (e.g., "Intercompany Receivable", "Intercompany Payable")
- These accounts typically have account type "Intercompany"
- Essential for multi-subsidiary reconciliation and elimination reporting
- Consider using different IC accounts for different subsidiary pairs
Approval Workflow
- If approval workflow is enabled, entries require approval before posting
- Unapproved entries do not impact financial statements
- Use the
approvedfield to check approval status (read-only)
Elimination Entries
NetSuite automatically handles elimination entries:
- Creates offsetting entries for all subsidiary pairs
- Elimination entries remove intercompany balances from consolidated financials
- View elimination entries in consolidation reports
- More complex than 2-party IC entries due to multiple subsidiaries
Multi-Currency Considerations
When subsidiaries use different currencies:
- Exchange rates are applied automatically to each line
- Unrealized gains/losses may be generated for each subsidiary pair
- Exchange rate variances appear in elimination entries
- Consider using a common currency for simplified reporting
Common Use Cases
1. Corporate Overhead Allocation
Allocate corporate costs to multiple subsidiaries:
{
"tranDate": "2025-12-31",
"subsidiary": {"id": "1"},
"memo": "Q4 corporate overhead allocation",
"line": {
"items": [
{
"subsidiary": {"id": "1"},
"account": {"id": "600"},
"debit": 50000.00,
"memo": "Total corporate overhead"
},
{
"subsidiary": {"id": "2"},
"account": {"id": "250"},
"credit": 20000.00,
"memo": "40% to UK Sub"
},
{
"subsidiary": {"id": "3"},
"account": {"id": "250"},
"credit": 15000.00,
"memo": "30% to Asia Sub"
},
{
"subsidiary": {"id": "4"},
"account": {"id": "250"},
"credit": 15000.00,
"memo": "30% to EMEA Sub"
}
]
}
}
2. Shared Services Center Billing
Bill multiple subsidiaries from a shared services center:
{
"tranDate": "2025-12-25",
"subsidiary": {"id": "5"},
"memo": "Shared services billing - IT and HR December 2025",
"line": {
"items": [
{
"subsidiary": {"id": "5"},
"account": {"id": "120"},
"debit": 100000.00,
"memo": "IC receivable - Shared Services Center"
},
{
"subsidiary": {"id": "1"},
"account": {"id": "250"},
"credit": 40000.00,
"memo": "Parent - IT/HR allocation"
},
{
"subsidiary": {"id": "2"},
"account": {"id": "250"},
"credit": 30000.00,
"memo": "UK Sub - IT/HR allocation"
},
{
"subsidiary": {"id": "3"},
"account": {"id": "250"},
"credit": 30000.00,
"memo": "Asia Sub - IT/HR allocation"
}
]
}
}
3. Complex Multi-Party Settlement
Settle balances between multiple subsidiaries:
{
"tranDate": "2025-12-20",
"subsidiary": {"id": "1"},
"memo": "Intercompany settlement - multiple subsidiaries",
"line": {
"items": [
{
"subsidiary": {"id": "1"},
"account": {"id": "250"},
"debit": 25000.00,
"memo": "Clear IC payable - Parent"
},
{
"subsidiary": {"id": "2"},
"account": {"id": "120"},
"debit": 15000.00,
"memo": "IC receivable - UK Sub"
},
{
"subsidiary": {"id": "3"},
"account": {"id": "250"},
"credit": 20000.00,
"memo": "IC payable - Asia Sub"
},
{
"subsidiary": {"id": "4"},
"account": {"id": "250"},
"credit": 20000.00,
"memo": "IC payable - EMEA Sub"
}
]
}
}
4. Transfer Pricing Adjustment
Record transfer pricing adjustments across multiple subsidiaries:
{
"tranDate": "2025-12-31",
"subsidiary": {"id": "1"},
"memo": "Transfer pricing adjustment - year-end true-up",
"line": {
"items": [
{
"subsidiary": {"id": "1"},
"account": {"id": "700"},
"debit": 12000.00,
"memo": "TP adjustment income"
},
{
"subsidiary": {"id": "2"},
"account": {"id": "700"},
"credit": 7000.00,
"memo": "TP adjustment expense - UK"
},
{
"subsidiary": {"id": "3"},
"account": {"id": "700"},
"credit": 5000.00,
"memo": "TP adjustment expense - Asia"
}
]
}
}
See Also
- Journal Entry - Standard journal entries
- Intercompany Journal Entry - Simple 2-party IC entries
- Subsidiary - Manage subsidiaries
- Currency - Currency setup
- Currency Rate - Exchange rates