Skip to main content

Reconcile Intercompany Receipts in NetSuite

How Kolleno reconciles a payment for invoices in another NetSuite subsidiary, and how to set it up.

Overview

Sometimes a customer pays invoices that belong to a different NetSuite subsidiary than the bank account that receives the money. For example:

  • A customer pays into the bank account of the wrong subsidiary.

  • A customer pays invoices from two or more subsidiaries in one payment.

Kolleno reconciles these payments for you. It closes each invoice in its own subsidiary. Then it posts one Advanced Intercompany Journal Entry that moves the money to the bank account. You do not have to post entries manually in NetSuite.

This feature is for NetSuite only.


Why NetSuite needs extra steps

In NetSuite, a bank account belongs to one subsidiary. A Customer Payment for an invoice in a different subsidiary cannot use that bank account.

Without this setup, the push fails with the error "Invalid Field Value ... for the following field: account". The error stops the full match, including the invoices that are in the correct subsidiary. For more information, see Synchronization error: "Invalid Field Value ... for the following field: account".


Before you start

Make sure that:

  • Your NetSuite account uses OneWorld, and the Advanced Intercompany Journal Entries feature is enabled.

  • The Kolleno SuiteApp is version 2.5.9 or later.

  • In NetSuite, the bank account is available to one subsidiary only.

  • You have three NetSuite accounts for this process:

Row in Kolleno

What the account does

Make it available to

Intercompany clearing

Holds the payments for invoices in other subsidiaries until the journal moves the money to the bank account.

Each subsidiary whose invoices are paid into this bank account

Intercompany receivable

Records, in the invoice's subsidiary, the amount that the bank account's subsidiary owes it.

Each subsidiary whose invoices are paid into this bank account

Intercompany payable

Records, in the bank account's subsidiary, the amount that it owes the invoice's subsidiary.

The bank account's subsidiary

None of the three accounts can be an Accounts Receivable or Accounts Payable account. The journal lines have no customer or vendor, so these account types would show a balance that belongs to no one.

To make an account available to a subsidiary, edit the account in NetSuite and add the subsidiary in the Subsidiaries field.


Set up the intercompany accounts

Do these steps for each bank account that receives payments for invoices in other subsidiaries.

  1. Go to Reconciliation and select the bank account.

  2. Click the Settings icon, then click Map bank account.

  3. If Kolleno asks for the accounting platform, select NetSuite and click Next.

  4. In the Intercompany clearing, Intercompany receivable and Intercompany payable rows, select your NetSuite accounts.

  5. Click Save.

The Intercompany clearing row turns the feature on. If this row is empty, Kolleno reconciles the bank account as before. If you map this row, you must also map the receivable and payable rows.

The intercompany rows are only in the mapping of each bank account. They are not in the reconciliation mapping in Settings.


What Kolleno does when it pushes the match

When Kolleno pushes a match, it reads the subsidiary of each matched invoice. It compares each subsidiary with the subsidiary of the bank account.

If all the invoices are in the bank account's subsidiary, Kolleno pushes the match as usual. Nothing changes.

If some or all of the invoices are in other subsidiaries, Kolleno does these steps:

Step 1: Customer Payment in the bank account's subsidiary

  • Kolleno creates the usual Customer Payment for the invoices in the bank account's subsidiary.

  • The payment goes into the bank account.

  • If no invoice is in the bank account's subsidiary, Kolleno skips this step.

Step 2: Customer Payment in each other subsidiary

  • For each other subsidiary, Kolleno creates a Customer Payment in that subsidiary.

  • The payment closes the invoices in that subsidiary.

  • The payment goes into the intercompany clearing account, not into Undeposited Funds.

Step 3: One Advanced Intercompany Journal Entry

  • Kolleno posts one journal for the full receipt, for any number of subsidiaries.

  • The journal moves the money from the clearing account to the bank account.

  • The journal does not post to Accounts Receivable. The payments from Step 2 close the invoices.

Example

A customer pays 10,000.00 USD into a bank account of Subsidiary A. The payment covers 7,000.00 USD of invoices in Subsidiary A and 3,000.00 USD of invoices in Subsidiary B.

  • Step 1: a Customer Payment of 7,000.00 in Subsidiary A, into the bank account.

  • Step 2: a Customer Payment of 3,000.00 in Subsidiary B, into the clearing account.

  • Step 3: the journal below.

Subsidiary

Account

Debit

Credit

Subsidiary A

Bank account

3,000.00

Subsidiary A

Intercompany payable

3,000.00

Subsidiary B

Intercompany receivable

3,000.00

Subsidiary B

Intercompany clearing

3,000.00

The result:

  • The bank account receives the full 10,000.00 one time.

  • The clearing account goes back to zero.

  • Subsidiary A owes 3,000.00 to Subsidiary B.

Journal details

Field

Value

Subsidiary

The bank account's subsidiary

Date

The date of the bank transaction

Currency

The currency of the bank transaction

Memo

"Intercompany receipt for transaction", followed by the Kolleno transaction ID

External ID

KOL-ICJE-, followed by the Kolleno match ID

Your company can add fields, such as a department or class, to the journal lines that Kolleno posts. Kolleno adds these fields to every line of this journal too. Each value must be available in every subsidiary on the journal.

How Kolleno finds the invoice's subsidiary

Kolleno uses the subsidiary of the invoice, as synced from NetSuite. If the invoice has no synced subsidiary, Kolleno uses the primary subsidiary of the customer.

If Kolleno cannot find the subsidiary of an invoice, it pushes the match as usual.


When Kolleno cannot post the receipt

Kolleno checks the receipt before it creates anything in NetSuite. If a check fails, Kolleno creates nothing and shows the reason on the match. Fix the cause, then retry the match. For the steps, see Manually Retry a Reconciliation Sync.

The message starts with

What to do

"Missing intercompany account mapping for: ..."

Map the intercompany receivable and payable accounts for this bank account.

"The intercompany ... account (...) is not available to subsidiary ... in NetSuite."

In NetSuite, make the account available to that subsidiary. Kolleno checks NetSuite again when you retry.

"The intercompany ... account (...) is an Accounts Receivable account in NetSuite ..." (or an Accounts Payable account)

Map an account of a different type, for example Other Current Asset or Other Current Liability.

"This payment covers invoices in more than one subsidiary, so the match cannot also hold corrections, payments or deposits."

Remove the corrections, payments and deposits from the match.

"This payment covers invoices in more than one subsidiary, and invoice currencies differ from the payment's."

Kolleno cannot convert currencies for this type of receipt. All the invoices must be in the currency of the payment.

"One payment for customer ... covers invoices in subsidiaries ..."

The customer record is shared by more than one subsidiary. Contact support to turn on payment splitting by subsidiary. See Splitting Payments by Subsidiary When Syncing to NetSuite.

"One payment for customer ... applies a credit note in subsidiary ..."

NetSuite cannot apply a credit note to invoices in a different subsidiary. Remove the credit note from the match.

If the journal fails after the payments

Kolleno posts the journal after the payments. If NetSuite refuses the journal, the payments stay in NetSuite and the match shows this message:

"The payments are in NetSuite but the intercompany journal was not created (...). Retry this match to post it."

The message includes the reason from NetSuite. Fix the cause, then retry the match. Kolleno posts only the journal. It does not create the payments again.

If you correct the receivable or payable mapping, the retry uses the new accounts. The retry always uses the original clearing account, because the payments are already in it.


Delete a receipt and push it again

To push a "Sync incomplete" match again, you delete its payments in NetSuite. For an intercompany receipt, also delete the intercompany journal. Kolleno does not reset the match while the journal is still in NetSuite. For the steps, see Resolve a "Sync incomplete" reconciliation match in NetSuite.


Frequently asked questions

Do I need one set of accounts for each pair of subsidiaries?

No. Kolleno uses one clearing, one receivable and one payable account for each bank account. Each account must be available to all the subsidiaries in the receipt.

Can a retry post the journal two times?

No. Kolleno keeps the ID of the journal that it posted, and each journal has a unique External ID.

What happens if the customer pays more than the invoices?

Kolleno accepts the overpayment. The extra amount stays as an unapplied credit on the customer in NetSuite.

Does this work with Xero, QuickBooks or Business Central?

No. These platforms do not have intercompany journals, so Kolleno reconciles their payments as usual.

Did this answer your question?