NetClose - Reconciliations Tips and Troubleshooting

Overview

This article collects practical tips for working with NetClose Reconciliations, fixes for the issues we see most often, and a reference for the background scripts that run the module. If reconciliations didn't generate, a status flipped to Balance Changed, files won't sync, or the balance doesn't match a NetSuite report, start here.

Tips

Keep your SuiteApp current.

Many reconciliation issues are resolved by a SuiteApp update. Defects fixed in releases include duplicate reconciliation items from document sync, a journal-tagged item showing the wrong sign, the reviewer due-date upload error, field values rendering as raw HTML, carry-forward reconciling items that didn't roll to the next period, and the Transaction Details drill-down that spun without loading. Production is updated by Netgain - if you suspect you're behind, contact support.

Build account groupings carefully - they drive generation and assignment.

Reconciliations are generated from account groupings (reconciliation rules), not created one at a time. The grouping sets which accounts reconcile, the default preparer and reviewer, the frequency, and the subsidiary scope. Two configuration mistakes cause most generation problems: an inactive or invalid user in the Preparer/Reviewer field, and the same subsidiary selected on more than one child grouping. See NetClose - Account Grouping Basic Configuration and NetClose - Account Grouping Subsidiary Configuration.

Stop reconciling accounts you don't want with "Do Not Generate Ever."

P&L or other accounts you don't substantiate will keep generating until you check "Do Not Generate Ever" on the grouping's System tab. Every GL account belongs to a grouping; use this flag rather than leaving accounts ungrouped.

Skip quiet months with "Do Not Generate When No Balance and No Activity."

When this flag is set on the grouping's System tab, NetClose won't generate a reconciliation for a period where the account had no activity and its GL balance didn't change. This is why an account that reconciled last month can be absent in a quiet month - it's intentional, not a missed generation. Clear the flag if you want a reconciliation every period regardless of activity.

Regenerate before you remove a user's access.

If you remove a preparer or reviewer's NetClose access before regenerating, their in-flight reconciliations become orphaned and you can't reassign them cleanly. Update the grouping's default assignees, regenerate, then remove the old user.

Expect a Balance Changed status when posted activity moves.

When someone edits an already-reconciled transaction or new activity posts to the account, a scheduled script flips the reconciliation to Balance Changed - even on completed periods - so it gets a second look. This is expected, not an error. See the FAQ below for the full mechanism and how to clear it.

Document management needs the right permissions and a clean folder.

File sync runs only when the role has full access to the reconciliation records (see Troubleshooting). Keep only the file you're importing in the parsed folder - a large unrelated file there causes the sync to time out. Re-authenticate when the SharePoint or Google Drive token expires. See NetClose - Sharepoint Reconciliations Setup & FAQs and NetClose - Google Drive Reconciliations Setup.

The auto-reconciliation saved search is yours to edit.

If you are experiencing issues with saved search auto-reconciliations, you may need to edit the search, or the saved search fields on the account grouping (reconciliation rule) record. See NetClose - Auto-Reconciliation Saved Search Setup and NetClose - Saved Search Troubleshooting Tips.

To restrict who can see a reconciliation, use authorized viewers.

By default every NetClose user can view every reconciliation. Set authorized viewers to limit a sensitive reconciliation to specific people. See NetClose - Authorized Viewers for Tasks and Reconciliations.

Troubleshooting

IssueWhat to check
Reconciliations didn't generate, or some are missingCheck:
  • The Preparer and Reviewer on the account grouping are active, valid users - an inactive or invalid user stops that grouping from generating.
  • No subsidiary is selected on more than one child grouping; an overlap lets one grouping consume the accounts another expected.
  • The account grouping covers the subsidiary and period you generated.
  • Accounts you don't want skipped aren't flagged "Do Not Generate Ever" on the System subtab of the Reconciliation Grouping.
  • The generation job finished without error - review NetClose | Recon Generate | MR (see Viewing Script Errors). On high-volume accounts the balance query can time out; if so, note the script id and contact support.
An account that reconciled last period is missing this periodThis is usually by design, not a failed generation. Check:
  • Do Not Generate When No Balance and No Activity on the grouping's System tab - when it's on, an account with no activity and no balance change for the period is skipped, so a normally-active account can be absent in a quiet month.
  • The related rule flags (for example "GL Balance Has Not Changed and No Activity") on the grouping's Reconciliation Rules.
  • If you want a reconciliation every period regardless of activity, clear the flag and regenerate.
A reconciliation changed to "Balance Changed" or reopened after it was completedThis is expected when the account's balance moves after the reconciliation was created. Check:
  • System Notes on the reconciliation - "-System-" means the scheduled balance-update script set it, not a user.
  • Whether an already-reconciled transaction in that period (or a prior period) was edited - that is the usual trigger.
  • Run Refresh Balances (3-dot menu), then re-submit and re-review the reconciliation.
Duplicate reconciliations, or duplicate reconciliation items (Explained Balance doubled)Check:
  • You're on the latest SuiteApp - a document-sync defect that re-imported the same file (doubling the explained balance) is fixed in current versions.
  • You didn't trigger Generate twice, or submit the page twice - generation only checks for duplicates at the start of a run, so a second run started mid-process creates duplicates.
  • Files were added by sync, not by dragging the spreadsheet onto the record - mixing the two methods creates a second item. Use SYNC FILES.
  • To remove duplicates you need full access to the reconciliation records; re-sync is blocked on a Completed reconciliation, so reopen it, re-sync, then complete.
SYNC FILES / Bulk Sync is greyed out, or files won't syncCheck:
  • The role has NetClose Reconciliation = Full and NetClose Reconciliation Item = Full under Custom Record permissions - this is what enables the Sync button. See NetClose - Permissions Overview.
  • The SharePoint or Google Drive token is still valid; re-authenticate through the Microsoft authentication link, then regenerate so the reconciliations get a sync tab.
  • If Sync Files throws "Cannot read property 'forEach' of undefined" (the message may add "Try updating NetClose and Netgain Tools"), the document-management access token has expired. Re-authenticate SharePoint or Google Drive - a valid token shows as asterisks under NetGain > Setup > System Setup > Document Management - then retry. Updating the SuiteApp alone does not clear this.
  • Only the file you're importing is in the parsed folder - a large unrelated file causes a response-time-out error.
  • The reconciliation isn't Completed (re-sync is blocked on completed records).
  • If a freshly generated reconciliation has no Document Management tab yet, the folder-creation step hasn't finished - generation and folder creation are separate jobs, and the tab appears only after the folders are created. Watch for the folder-creation status to complete, then reopen the reconciliation.
Balances or activity don't match a NetSuite reportCheck:
  • You're on the latest SuiteApp - a balance-display defect and a spinning Transaction Details drill-down were both fixed in updates.
  • The New Reconciliation Link Transaction View setting is enabled (System Setup), and the correct Account Group is selected on the drill-down.
  • Browser cache - clear cache and cookies, then click Refresh Balance; older NetSuite internal IDs sometimes need a refresh to re-tie.
  • Sign presentation: a credit-normal account shows a positive balance unless debit activity exceeds the beginning balance plus credit activity. That is display behavior, not a posted debit.
"Failed to parse the excel file," or a field-length error on uploadCheck:
  • Blank rows and columns past the used range on every tab, including hidden ones - delete them (don't just clear the cells), then re-upload.
  • Keep the Excel file under 20 MB - a large file (or leftover unused rows and columns) can throw a parse or response-time-out error even after you re-authenticate.
  • If the file is large or has many tabs, set ParseXTab to 1 under NetGain > Setup > System Setup > Document Management so NetClose parses only the first tab/sheet instead of every tab - this keeps sync times short and avoids parse time-outs. See NetClose - Using Document Management & Folder Dimensions for details on the setting.
  • You're on the latest SuiteApp if you see an error about custrecord_nact_recon_rev_due_date exceeding the maximum characters - that upload bug after NetSuite 2026.1 is fixed in current versions.
  • For an amount-field-length error (custrecord_nact_reconitem_amt), use SYNC FILE to bring the value in.
Can't change, or wrong, preparer / reviewerCheck:
  • For one reconciliation: open it and set the Preparer/Reviewers field. You must have Edit level permission for NetClose Reconciliation.
  • For many at once: select the reconciliations and use Mass Update from the 3-dot menu to reassign the preparer or reviewer in bulk.
  • Going forward: set the Default Preparer and Reviewer on the account grouping, then regenerate.
  • A "random" new assignee usually means the grouping's default was changed - confirm the grouping.
  • To clear an orphaned assignment left by a removed user, clear the field with the X icon, then pick the new user.
  • See NetClose - Prepare and Review Reconciliations.
An account that shouldn't reconcile keeps generatingCheck:
  • "Do Not Generate Ever" on the account grouping's System tab - this is how you stop generation for P&L or other non-reconciled accounts.
  • You can't leave a GL account without a grouping; assign it to a grouping flagged not to generate.
Some GL accounts never got a reconciliation (not assigned to any grouping)This can happen if accounts were added after install, or weren't eligible when groupings were first built. Check:
  • The account is Active, a posting account (not Non-Posting or Statistical), and not a summary account - those are the accounts NetClose assigns to groupings.
  • Once the account qualifies, re-run NetClose | Recon Assign Rules | MR to re-scan the chart of accounts and assign any unassigned accounts to the Accounts Payable, Accounts Receivable, or Other Accounts groupings.
  • Then regenerate to pick up the newly grouped accounts.
Auto-reconciliation isn't matching, or shows the wrong balanceCheck:
  • The auto-reconciliation saved search behind the rule - copy its name from the rule's Auto-Reconciliation field and open it in Global Search to edit.
  • The date basis - using a schedule's Period Start Date instead of Period End Date pulls a pre-amortization balance.
  • Added fields (for example Class or In-Service Date) are on the search's Results tab; they don't propagate automatically.

Viewing Script Errors

Everything the Reconciliations module automates - generating, refreshing balances, auto-reconciling, syncing documents, and deleting - runs as NetSuite scripts. When something doesn't happen, the script log usually says why.

To view logs across all scripts:

  1. Go to Customization > Scripting > Script Execution Logs.
  2. Filter Type to Error (and Date to today) to see only failures.
  3. Read the Details column for the message.

To check a specific job:

  • For the Map/Reduce jobs (anything ending in | MR), open Customization > Scripting > Map/Reduce Script Status to see whether the run is Pending, Processing, Complete, or Failed.
  • Or open the script directly at Customization > Scripting > Scripts, click the script, open its Deployments, and review the Execution Log subtab.

NetClose writes errors in the form script id | stage | error name: message (for example, customscript_nact_generate_recons_mr | GET_INPUT | ...), so the log tells you which script and which phase failed. A generation job that errors on a single bad grouping (often an inactive assignee) will note that grouping in the log.

Reconciliations Module Scripts

These are the scripts behind the Reconciliations module. You don't run them by hand - NetClose triggers them from the Reconciliations pages or on a schedule - but knowing what each one does helps when you're reading a log or asking support a question. Find any of them at Customization > Scripting > Scripts, searching by the name below.

Script (NetSuite name)TypeWhat it doesWhen it runs
NetClose | Recon Generate | MRMap/ReduceCreates reconciliations from your account groupings for the selected period and subsidiaryWhen you click Generate on the Generate Reconciliations page
NetClose | Recon Auto Generate | MRMap/ReduceAuto-creates recurring reconciliations for new periods from groupings that have an auto-generation day and frequency setOn its scheduled deployment
NetClose | Recon Update Balance | MRMap/ReduceRefreshes each reconciliation's GL balance and flags it Balance Changed when the balance no longer matches what was capturedOn its scheduled deployment (and when you Refresh Balances)
NetClose | Recon Auto Reconcile | MRMap/ReduceRuns auto-reconciliation rules, matching each balance against its saved search to auto-complete eligible reconciliationsWhen you run auto-reconciliation, or on its schedule
NetClose | Recon Sync Documents | MRMap/ReduceSyncs files from SharePoint or Google Drive document management into reconciliation itemsWhen you use SYNC FILES / Bulk Sync, or on its schedule
NetClose | Recon Copy Documents | MRMap/ReduceCopies documents into the reconciliation folder structure during document management syncAs part of document sync
NetClose | Recon Create Open Items | MRMap/ReduceCreates open-item reconciliation items from the selected transactionsWhen you create open items on a reconciliation
NetClose | Recon Delete | MRMap/ReduceBulk-deletes the reconciliations and items you selectedWhen you delete reconciliations in bulk
NetClose | Recon Assign Rules | MRMap/ReduceBuilds the default Accounts Payable, Accounts Receivable, and Other Accounts groupings and assigns accounts to themOn install / initial setup
NetClose | Reconciliation App | SLSuiteletServes the Reconciliations List, Approve, Generate, Auto-Reconcile, Account Grouping, and Open Items pagesWhenever you open a Reconciliations page

Several user-event and client scripts also run automatically as you work in the module (maintaining reconciliation records, items, rules, and transaction tagging on save); you won't call them directly, but they may appear in the execution log.

Frequently Asked Questions

QuestionAnswer
Why did my reconciliation flip to "Balance Changed" after it was completed? A scheduled script refreshes each reconciliation's GL balance. If the refreshed balance differs from the balance captured when the reconciliation was created - most often because an already-reconciled transaction was edited, or new activity posted to the account - the status changes to Balance Changed so the reconciliation is reviewed again. This can happen on completed and even prior periods. When the status changes, NetClose emails the preparer and the reviewer(s) a single notice listing the reconciliations to review - an administrator can disable this notification globally, if desired. See NetClose System Settings.
Can two people reconcile the same GL account, split by subsidiary?Yes, using child account groupings. Create a parent grouping for the account, then a child grouping for each set of subsidiaries that needs its own owner, and assign the appropriate preparer and reviewer to each child. Each child grouping can carry its own preparer, reviewer, rules, and criteria - keep the rule that a given subsidiary appears on only one child grouping. See NetClose - Account Grouping Subsidiary Configuration.
What file management providers does NetClose support?NetClose supports only Microsoft Sharepoint and Google Drive.
Can NetClose email me about reconciliations - upcoming, overdue, submitted, or sent back?Partly. Out of the box, the only automatic reconciliation email is the balance-change notice. For upcoming, overdue, and submitted-for-review reminders, NetClose ships pre-built email-notification saved searches for Reconciliations and Flux Analysis that you enable and schedule rather than build from scratch - covering a due-date email (the day before it is due), an overdue email (each day it is overdue), a submitted-for-review email (to the reviewer the day after submission), and a daily summary of outstanding items. To turn one on, see NetClose - Create Email Notifications for Reconciliations and Flux Analysis. There is still no send-back (rejection) notification; for that, add a comment on the reconciliation and @-tag the owner - it remains a logged feature request.
Can I reconcile a secondary accounting book on its own?Not currently. Both books generate reconciliations, so isolating a single book takes manual work today. See NetClose - Non-Primary Book Reconciliations for current handling, and contact support to add your interest to the feature request.
Can I generate reconciliations for only newly added GL accounts?Not currently as a separate action - regenerate the account grouping to pick up new accounts. Existing reconciliations in the grouping are preserved.

Still Need Help?

If these steps don't resolve the issue, or you're seeing an error that isn't covered here, contact Netgain support at support@netgain.tech. Include the script name, the error message and timestamp from the execution log, and the period and subsidiary involved. Keeping your SuiteApp up to date also resolves some issues, since fixes ship in updates.


Was this article helpful?