Oracle NetSuite Sync error: Reason: Null - Two-factor authentication/token-based authentication limitation

Why the Sync Error occurs

This error occurs because Oracle NetSuite two-factor authentication doesn't support RESTlets, which are used to integrate Key CashFlow℠ with Oracle NetSuite. This is a limitation due to Oracle NetSuite's restriction of the usage of two-factor authentication.

How to Fix the Sync Error

Create a custom role

A custom role not requiring a two-factor authentication will need to be created and assigned to the user connecting the sync.

  1. In Oracle NetSuite, go to Setup > Users/Roles > Manage Roles > New
  2. Enter the following
    • Name: Admin Sync
    • Two-Factor Authentication required: Not required
  3. Under Permissions > Lists, assign the following permissions with the corresponding level:
    • Classes = Full
    • Departments = Full
    • Documents and Files = Full
    • Email Template = Full
    • Employee Record = Full
    • Employee Social Security Numbers = View
    • Locations = Full
    • Subsidiaries = Full
    • Tax Schedules = Full
  4. Under Permissions > Setup, assign the following permissions with the corresponding level:
    • SuiteScript = Full
    • SuiteScript Scheduling = Full
  5. Select Save
  6. Select the Admin Sync role that you just created
  7. Write down the Internal ID for this role, you'll need to connect the sync
    • The internal id will be at the end of the URL:< internal id >

Assign the custom role to the user

  1. In Oracle NetSuite, go to __Setup > Users/Roles > __Manage Users
  2. Select the user that will connect the sync
  3. Select Edit
  4. Under the Access tab, edit the user's role to the Admin Sync role
  5. Select Save

Uninstall/Reinstall the sync bundle

You'll need to uninstall and reinstall the bundle.

Note: Uninstalling the bundle will disconnect syncs for all subsidiaries if more than one is connected.

To uninstall and Reinstall bundle:

  1. In Oracle NetSuite, Go to Customization > Suitebundler > Search and Install Bundle > Lists
  2. Hover over the gear icon for Sync for Oracle Netsuite, select Uninstall
  3. Refresh your browser until you see the uninstall complete confirmation—this may take a minute.
  4. Go to Customization > Suitebundler > Search and Install Bundle
  5. Type into the Keywords field and search
  6. Select Sync for NetSuite
  7. Select Install
  8. Select Install Bundle

Reconnect Sync

After reinstalling the bundle, reconnect the sync for all subsidiaries.

  1. In Key CashFlow, select Settings
  2. Select Setup under Sync
  3. Select Disconnect
  4. Select Yes to confirm
  5. Select the Oracle NetSuite app
  6. Select Connect
  7. On the Sync Login page, enter the following:
    • Email: Enter the email address for the user that was assigned the Admin Sync role
    • Password: Enter the password for the user that was assigned the Admin Sync role
    • Account ID: Enter the Account ID of the Oracle NetSuite account
    • Subsidiary ID: If you’re using OneWorld, enter the Internal ID of the Subsidiary that this Key CashFlow account will sync with. If it is not a OneWorld account, leave this field blank.
    • Custom Role Internal ID: Enter the internal id of the Admin Sync role in Oracle NetSuite
  8. Select Save
  9. Once the sync completes, edit Sync preferences if applicable
  10. Select Save

The sync preferences within Oracle NetSuite will also need to be selected again. Please refer to the Sync your Classifications and Sync your transactions sections on the Oracle NetSuite Sync Setup Guide.