Oracle NetSuite sync setup guide

This guide will walk through setting up the sync with Oracle NetSuite.


Table of Contents

Sync Overview

The following image shows what objects sync and in which direction.

NetSuite sync image

Record types and known limitations

Record Type Oracle NetSuite to Key CashFlow Key CashFlow to Oracle NetSuite Known Limitations
Vendors Yes Yes - Vendors with Access enabled in Oracle NetSuite need to be updated in Oracle NetSuite
Customers Yes Yes - Key CashFlow supports only one subsidiary per customer
- Customers with Access enabled in Oracle NetSuite need to be updated in Oracle NetSuite
Chart of Accounts Yes Yes - Summary accounts aren't supported
Departments Yes Yes
Locations Yes Yes
Classes Yes Yes
Items Yes Yes - Items created in Key CashFlow and synced to Oracle NetSuite use the subtype: For Resale
Jobs/Projects Yes No - Requires Bundle 3.1 or later
Custom Fields No No - When creating custom fields in Oracle NetSuite, assign a default value to avoid any conflicts
- Custom fields are ignored by the sync. They won't prevent the bills from syncing to Key CashFlow. Custom fields will be preserved in Oracle NetSuite but won't be visible in Key CashFlow
Currency USD only USD only Multi-currency isn't supported.
- Key CashFlow doesn't support the setup for International Oracle Netsuite Accounts
Payment Terms No No
Attachements Yes No
Partners No No
Bills Unpaid bills only Yes - Partially and fully paid bills don't sync from Oracle NetSuite to Key CashFlow
- Syncing bills from Oracle NetSuite to Key CashFlow can be disabled in Bill.com Preferences within Oracle NetSuite
Vendor Credits Unapplied vendor credits only Yes - Partially and fully applied vendor credits only sync from Key CashFlow to Oracle NetSuite
- Vendor Credit applications (applying, un-applying, and reapplying) only sync from Key CashFlow to Oracle NetSuite
- To configure the sync to apply vendor credits in Oracle NetSuite when a period is closed, enable Non-GL Changes
- Syncing vendor credits from Oracle NetSuite to Key CashFlow can be disabled in Bill.com Preferences within Oracle NetSuite
- To configure the sync to apply vendor credits in Oracle NetSuite when a period is closed, enable Non-GL Changes
- Syncing vendor credits from Oracle NetSuite to Key CashFlow can be disabled in Bill.com Preferences within Oracle NetSuite
Approval Status No Limited - The option to only sync bills/vendor credits that have been approved is available in Bill.com Preferences within Oracle NetSuite
Bill Payments No Yes - Payments synced from to Oracle NetSuite will always use the same Department, Class, and/or Location per subsidiary, based on selection in Key CashFlow sync preferences
Purchase Orders Once converted to unpaid Bill N/A - The purchase order can not be viewed in Key CashFlow
- The Purchase Order number will appear on bills and vendor credits that originated from POs in Oracle NetSuite
- Bills created from POs from Oracle NetSuite shouldn't be edited in Key CashFlow or the corresponding Oracle NetSuite bill will be unlinked from the PO
Commissions No No
Receivables No No - AR transactions (Invoices, Credit Memos, Sales Orders, Invoice Payments) aren't supported.

Sync Setup

The setup process will take at least 90-120 minutes, more if syncing multiple subsidiaries. There will be periods of downtime while waiting for the bundle to install, or for records to sync into Key CashFlow, which happens at the end of each section. While we recommend completing the setup in one sitting, it's okay to take a break at the end of a given section. To get started, please note the following requirements:

  • A brand new Key CashFlow account with a verified bank account (bank account not mandatory).
  • Administrator access to the Oracle NetSuite account
  • Administrator or Accountant access to the Key CashFlow account
  • Access to the bundle in Oracle NetSuite. Contact Key CashFlow Customer Support and provide the Oracle NetSuite Account ID to get access.
  • Oracle NetSuite Account ID
    • To find this in Oracle NetSuite, hover over Setup > Integration and select Web Services Preferences. Account ID is displayed on the top left.
      Web Services link
      Account ID
    • Write this value down (it'll be used several times during setup)
  • Make sure the following settings are made within the Oracle NetSuite account:
    1. Hover over Setup > Company > select Enable features
    2. Select SuiteCloud
    3. Make sure all options under SuiteBuilder are enabled
    4. Enable the following options:
      • Under the SuiteScript section
        • Client SuiteScript
        • Server SuiteScript
      • Under the SuiteFlow section
        • Suiteflow
      • Under the Manage Authentication section
        • Token-Based Authentication
    5. Select I agree on the SuiteCloud Terms of Service page
    6. Select Save

SuiteBuilder
Manage Authentication

Create a new integration

An Oracle NetSuite Administrator will need to create an integration in Oracle NetSuite that will allow us to obtain the Consumer Key and Consumer Secret that's required to connect the sync.

  1. In Oracle NetSuite, hover over Setup > Integrations > Manage Integrations > select New
    Manage Integration
  2. Enter Billcom in the Name field
  3. Make State is selected
  4. Select TOKEN-BASED AUTHENTICATION
  5. Select TBA: ISSUETOKEN ENDPOINT
  6. Deselect TBA: AUTHORIZATION FLOW
  7. Deselect AUTHORIZATION CODE GRANT
  8. Select USER CREDENTIALS
  9. Select Save
    New Integration
  10. Copy and Save the Consumer Key and Consumer Secret, both will be required to connect the sync
    • Important: This won't be viewable again after you leave the page
      Consumer key:secret

Create access tokens

An Oracle NetSuite Administrator will need to create access tokens in Oracle NetSuite that will also be required to connect the sync.

  1. Select Manage Access Tokens from the Settings box on the Home page in Oracle NetSuite
    Settings box
  2. Select New My Access Token
    New my access token
  3. Enter Billcom in the Application Name field
    • The Token Name will autofill with the Administrator name
  4. Select Save
    Access Token page
  5. Copy and Save the Token ID and Token Secret, both will be required to connect the sync
    • Important: This won't be viewable again after you leave the page
      Token Id:secret

Install the bundle in Oracle NetSuite

The bundle only needs to be installed once per Oracle NetSuite Account.

  1. In Oracle NetSuite, hover over Customization > SuiteBundler, select Search & Install Bundles. Do not select List.
    Search & Install bundle
  2. Type “Bill.com” into the Keywords field
  3. Select search
  4. Select the most recently created Bill.com Sync for NetSuite bundle
    Bill.com sync for NetSuite
  5. Select Install
    Install
  6. Read through the Bill.com SuiteBundle Terms, select I Agree to continue
  7. Select Install Bundle. Do not change any of the Preference dropdowns.
    Install bundle button
  8. Select Refresh, or refresh the browser, to update the installation’s progress

Once the bundle is fully installed, move onto the next section.

Subsidiaries

If syncing subsidiaries, the following 3 sections need to be performed once per Key CashFlow account / Oracle NetSuite subsidiary pair. The setup will require the Oracle NetSuite Account ID, as well as the Subsidiary ID for each subsidiary that will be syncing. To find the Subsidiary ID:

  1. In Oracle NetSuite, hover over Setup > Company under Classifications > select Subsidiaries
    Subsidiaries
  2. Select View for the subsidiary that will sync with this Key CashFlow account
  3. Locate the Internal ID - this is the Oracle NetSuite Subsidiary ID
    Internal ID

Connect the sync

If syncing subsidiaries, the following will need to be performed once per Key CashFlow account / Oracle NetSuite subsidiary pair.

  1. In Key CashFlow, select Settings
  2. Under Accounting, select Preferences
  3. Select Edit
  4. Set the Accounting Preferences as follows: (Do not make additional changes unless instructed by Key CashFlow Support)
    • Do not enable a classification that won't be used
    • If using Departments, Locations, Classes, Customers, and/or Items on payables, choose Yes for that classification
    • If Vendor IDs and Customer IDs are automatically generated with a particular naming scheme in Oracle NetSuite, select the dropdown for Vendor Sequence ID and select Use auto-numbering
  5. Select Save
  6. In Key CashFlow, select Settings
  7. Under Sync, select Setup
  8. Select Connect
  9. Select Continue
  10. On the Sync Login page, enter the following:
    • Consumer Key: Paste the Consumer Key that was copied and saved
    • Consumer Secret: Paste the Consumer Secret that was copied and saved
    • OAuth Token: Paste the Token ID that was copied and saved
    • Token Secret: Paste the Token Secret that was copied and saved
    • Account ID: Enter the Account ID of the Oracle NetSuite account
    • Subsidiary ID: If using OneWorld, enter the Internal ID of the Subsidiary that this Key CashFlow account will sync with. If it isn't a OneWorld account, leave this field blank.
  11. Select Save to perform the first sync. This will sync the Vendors and Chart of Accounts. The sync can take some time depending on how many records are syncing - if there are more than 1,000 Vendors and/or Accounts, take a break while it’s running.
    Sync login
  12. Once the sync is complete, set Sync Preferences in Key CashFlow by selecting the Oracle NetSuite accounts to use for the following settings:
    • Sync Automatically
      • This makes sure the sync is run at least once daily. The sync will run about 24 hours from the last sync time, but the sync can always be run manually via Sync Now at any time.
    • Sync Only Approved Bills and Vendor Credits
      • Do not select this setting, this is set up in Bill.com Preferences within Oracle NetSuite
    • Unallocated Expense Account
      • This is where bills with no GL accounts specified in Key CashFlow will post to during the sync.
    • Default Bank Account in Accounting Software
      • This is the default bank account used to record any payments made outside of Key CashFlow.
    • Deposit To Account
      • Ex: Undeposited Funds is frequently used to record check payments received, but not yet deposited.
      • This is the default account to record payments received outside of Key CashFlow.
    • GL Account For Bank Account XXXX
      • This is where payments made/received through the specified bank account will post
    • Master In Case of Conflict
      • If a record is updated with different values in Key CashFlow and the accounting software before the next sync, only the values for the record set as master will be kept.
  13. Select Save

Bill.com Preferences in Oracle NetSuite

If syncing subsidiaries, the following will need to be performed once per Key CashFlow account / Oracle NetSuite subsidiary pair.

Lists Subtab

  1. In Oracle NetSuite, hover over Customization > Lists, Records, & Fields, select Record Types
    Record types
  2. Find record called Bill.com Preferences. Select List for that row, which will be on the right side of the page.
    Record types
  3. On the Bill.com Preferences list page, find Bill.com Preferences record for the subsidiary the sync is being set up for and select Edit
  4. On Bill.com Preferences Edit page, go through each of the following steps (Do not make additional changes unless instructed to do so by a Customer Support representative):
    List subtab
    • Record Types to Sync
      • If using customers, items, locations, departments, and/or classes in AP transactions, select the box for that particular classification. This will allow that record type to sync for use on transactions in Key CashFlow.
      • Do not enable the sync for a classification if it won't be used on AP transactions. This can increase the amount of time the sync takes, as well as cause unnecessary sync errors.
    • Item Subtypes
      • If syncing Items for use on payables, but don't want a particular item subtype to appear in Key CashFlow, select the box for that item subtype. This will prevent items with that subtype from syncing into Key CashFlow.
    • Configuration
      • Select Lists Preferences Setup Complete
  5. Select Save

Transactions Subtab

  1. On the Bill.com Preferences list page, find Bill.com Preferences record for the subsidiary the sync is being set up for and select Edit
  2. On Bill.com Preferences Edit page, select Transactions subtab
  3. Go through each of the following steps (Do not make additional changes unless instructed to do so by a Customer Support representative):
    Transactions subtab
    • Records to Sync (Note: this field is NOT editable once set)
      • Payables Sync Start Date: set this to the starting date of the most recent open period
        • Bills, Vendor Credits and Payments, will adhere to the following Start Date logic:
          • Entity = Date used for Start Date
          • Bill = Invoice Date
          • Vendor Credit = Credit Date
          • Sent Pay/Payment = Process Date
      • Bypass Start Date for Unpaid Bills/Unapplied Credits: Enables bills with invoice dates before the sync start date to sync from Oracle NetSuite to Key CashFlow
      • Ignore Customers in Bills/Credits: Prevents Customers selected on bill/credits from syncing to Key CashFlow. Customer selection will be preserved in Oracle NetSuite but won't not be visible on the bill/credit in Key CashFlow.
      • Don't Sync Unpaid Bills / Unapplied Credits from Oracle NetSuite: prevents bills and vendor credits to sync from Oracle NetSuite to Key CashFlow. Bills and credits will only sync from Key CashFlow to Oracle NetSuite.
      • Sync payments made in Oracle NetSuite: this setting isn't active (don't select)
      • Enable document sync from Oracle NetSuite: Enables attachments associated to Bills to sync from Oracle NetSuite to Key CashFlow. (Attachments won't sync from Key CashFlow to Oracle NetSuite)
    • Sync Only Approved
      • Only Sync Approved Bills/Credits from Key CashFlow: If you use approvals in Key CashFlow, prevents syncing of bills/vendor credits from Key CashFlow to Oracle NetSuite until they are fully approved
      • Only Sync Approved Bills from Oracle NetSuite: If you use approvals in Oracle NetSuite, prevents syncing of bills from Oracle NetSuite to Key CashFlow until they are fully approved
    • Default Classifications
      • If Classifications: Classes, Locations, and/or Departments on Payables transactions are set as required/mandatory within Oracle NetSuite settings, choose those defaults for these classifications
      • Note: Default Classifications applies to all Payables transaction types, including bills and vendor credits
    • Configuration
      • Select Transactions Preferences Setup Complete

Miscellaneous Subtab

  1. On the Bill.com Preferences list page, find Bill.com Preferences record for the subsidiary the sync is being set up for and select Edit
  2. On Bill.com Preferences Edit page, select Miscellaneous subtab
  3. In the browser, copy the browser’s current URL and paste it into the Oracle NetSuite Domain field
    • After pasting it into the Oracle NetSuite Domain field, delete everything in the URL that appears after the “.com”
      Misc subtab
  4. Select Save
  5. In Key CashFlow, hover over the sync icon, select Sync Now to sync classifications and transactions

The sync setup is complete!

Set up a sync button in Oracle NetSuite

You can set up a sync button right on the Oracle NetSuite homepage. This button enables manual sync right from within Oracle NetSuite so you don't have to leave NetSuite. This step is optional.

  1. In Oracle NetSuite, select the Home icon
  2. Select Personalize
  3. Select Custom Portlet
    Personalize - Custom Portlet
  4. Hover over the three dots, select Set up
    Set up
  5. Select Bill.com Sync Portlet on the Source field in the Custom Content Box
  6. Select Save
    Bill.com sync portlet

Now, you can select Sync Now to start a manual sync from within Oracle NetSuite.