Managing Intercompany Expenses with NetSuite OneWorld

By - September 15, 2014

NetSuite OneWorld is a great tool for multi-subsidiary companies looking to manage all subsidiaries through one instance of NetSuite.  Compared to other popular ERP systems, NetSuite OneWorld has several advantages, including automated intercompany drop-shipments, intercompany time & expense, and the basic ability to toggle between subsidiaries without logging in to a separate database for each subsidiary.  To control access to subsidiaries, NetSuite has implemented some tight controls, including the following:

  1. Entity records (customer, vendor, partner) can only be assigned to one subsidiary
  2. Transaction records are specific to one subsidiary, with that subsidiary being derived from the entity (customer/vendor) selected. There are certain exceptions to this, such as the intercompany journal entry transaction.

These restrictions make sense at face value.  Since a subsidiary typically constitutes a separate legal entity, it makes sense that each legal entity has its own list of customers and vendors, and its own transactions.  For mid-market companies running on NetSuite OneWorld, these restrictions may pose a problem.  When implementing NetSuite OneWorld for mid-market companies, we typically run into an issue where there is one entity acting as the bank, or “Common Paymaster.”  In this situation, there is one subsidiary that receives and pays the vendor bills on behalf of other subsidiaries.  The cash is disbursed from the payor subsidiary, but the expense needs to be allocated to another subsidiary or even several different subsidiaries.  There are two common (manual) ways this can be accomplished.

Solution 1: Create a saved search to calculate a journal entry

Using a custom field and a saved search, you can create a tool to query all transactions that must be allocated to subsidiary other than the transaction subsidiary.  This saved search can then be exported and imported to create an intercompany journal entry.

  1. Create a custom transaction column field for purchase transactions. This field should be a list/record type field, using a list of subsidiaries (or a custom list if you wish).
  2. On expense transactions, select the “To Subsidiary” on the line, if that line represents an expense to be allocated to another subsidiary.
  3. Create a saved search displaying columns for the transaction line amount, and “To Subsidiary.” Narrow the results of the saved search using criteria such as “To Subsidiary” is not empty, and date is within last month (if creating journal entries at month end). Optionally, you can group and total the saved search by Subsidiary, To Subsidiary, etc. to summarize the results.
  4. Use the results of the saved search as a basis for manually creating an intercompany journal entry. If this process is too cumbersome, export the saved search results to a CSV file, and use this file to import the intercompany journal entry.

Solution 2: Manual Intercompany Journal Entry

After entering a vendor bill or credit card transaction, funds can be re-allocated by creating an intercompany journal entry.  To enhance the data validation between the expense transaction and the intercompany journal entry, custom fields can be used to link the transactions.  This makes it easier to find the specific intercompany journal entry used to reclassify the expenses for a particular expense transaction.

Solution 3: Automate the creation of intercompany journal entries when an expense transaction is created

Many companies like the detail outlined in Solution 2, where there is a journal entry for each expense transaction line that must be allocated.  Creating these transactions can be cumbersome, so RSM’s NetSuite Application Development and Integration team has developed a solution to automate this process.  The process is outlined below:

1.  When entering an expense transaction that must be allocated to other subsidiaries, specify the subsidiary to which the line must be allocated. For example, the Bain subsidiary is paying for fuel expenses on behalf of the Acme, Cheney, and Douglas subsidiaries.

NetSuite_Intercompany Expense 1

2.  Save the transaction. Note that an intercompany journal entry has been created for each line. A link to the journal entry has been placed in a custom field on the line from which it was created.NetSuite_Intercompany Expense 2

3.  The intercompany journal entry has credited (reversed) the expense on the Bain subsidiary’s ledger, debited (booked) the expense on the Acme subsidiary’s books, and created the correct intercompany payable/receivable entries.NetSuite_Intercompany Expense 3

4.  Not only are the GL entries recorded correctly, but the intercompany payable/receivable balances are coded to a vendor and customer record. For example, this transaction will show up in the A/P aging reports, reporting the balance as due to the vendor “Bain,” since we have created a vendor record that represents the Bain subsidiary.   This detailed general ledger impact allows Bain to view the receivables from Acme, Cheney, and Douglas on the A/R register, while Acme, Cheney, and Douglas each have a payable to Bain on their A/P registers.

Solving intercompany expense issues is rarely complicated, but often time-consuming.  As shown above, with a little bit of scripting, the entire process can be automated.  This allows companies to free up their accounting staff to concentrate on data analysis and process improvements.  If you are experiencing issues with automation of simple business processes, contact RSM’s team of CPAs, Application Developers, CRM and E-Commerce experts today to set up a no-obligation initial meeting. Contact RSM to learn how to automate your intercompany expense issues at or at (800) 274-3978 .

By: Jay Figgins


Receive Posts by Email

Subscribe and receive notifications of new posts by email.