How Riva Syncs NetSuite Contacts

  • Updated

Applies to Riva Cloud and Riva On-Premise.

NetSuite, unlike most CRMs, is designed as an ERP that supports Business-to-Consumer (B2C) and Business-to-Business (B2B) models. Because of that design, some critical differences have been built into Riva to accommodate the unique methods of handling contacts in NetSuite.


Riva On-Premise Version Requirement

The minimum requirement is Riva On-Premise 2.4.29, because that is when most of the options for handling contact syncing were added.

As a general best practice, we recommend upgrading to the latest public release.

NetSuite Relationships

NetSuite stores "relationship" data in tables displayed as lists. Each of the following "organization" objects can support the recording of contacts:

  • Customers: A customer is any organization or individual in business that is selling a product or service. NetSuite has two primary types:

    • Company Customer: Used for B2B relationships. NetSuite further identifies each customer as a lead, prospect, or full customer. Contacts are saved to a central data store and can be linked to any company customer, which results in a one-to-many relationship.

      company-customer-2 (1).png

      Riva considers all customer contacts as "contacts". There is no differentiation between leads, prospects, or customers. Riva syncs customer contacts as contacts to Exchange (Outlook) address books. The "ownership" is based on the Customer Rep that owns the customer. In effect, filter by security already uses a "NetSuite native organic filtering" model.

    • Individual Customer: Used for B2C relationships. NetSuite records an individual customer as a single item in the list, and contacts cannot be associated or linked to an "individual customer". For Riva, a NetSuite individual customer is like a personal email domain user (for example, As such, the individual customer is also the contact. Riva syncs individual customers as contacts to Exchange (Outlook) address books. The "ownership" is based on the Customer Rep that owns the customer.
      individual-customer-2 (2).png

  • Vendors: Any organization that sells to the business is a vendor. Contacts are saved to a central vendor contact data store and can be linked to any vendor. NetSuite does not assign "ownership" to vendors or vendor contacts. Riva considers all vendor contacts as "contacts" and syncs all visible vendor contacts to Exchange (Outlook) address books.

  • Partners: Any organization that partners with the business to resell the business products or services is a partner. Contacts are saved to a central partner contact data store and can be linked to any partner. NetSuite does not assign "ownership" to vendors or partner contacts. Riva considers all partner contacts as "contacts" and syncs partner contacts to Exchange (Outlook) address books.

Contact Type Filtering Options

By default, Riva is configured to sync contacts to customers (both individual and company), vendors, and partners. Both Riva Cloud and Riva On-Premise have contact type filtering options available in the NetSuite connection where syncing to a specific type of organization can be disabled.

  • In Riva On-Premise 2.4.29 or higher, check box options are included on the Options page of the NetSuite connection.

    ContactTypes (2).png

  • In Riva Cloud, similar Contact Type filters exist in the NetSuite connection: 

ns-conn-contact-filtering (2).png

NetSuite Team Selling Feature

NetSuite includes a "Team Selling" feature that automatically filters contacts on the basis of sales teams. If this feature is enabled in NetSuite, the corresponding option must be selected in Riva Cloud's or Riva On-Premise's NetSuite connection. You can select the option when

  • creating a NetSuite connection or
  • modifying a NetSuite connection.

In Riva On-Premise, this is where you select the option:

Teamselling (6).png

In Riva Cloud, this is where you select a corresponding option:

ns-conn-team-selling (4).png

In the Riva sync policy, Address Books contact filtering should be configured as follows:

  • Filter by "Must be Owner": To sync contacts on the basis of sales team membership;
  • Filter by "All visible": To sync all visible contacts.
WARNING: If "Team Selling" is enabled in NetSuite and not configured in the Riva connection, new contacts created in Outlook/Exchange are removed during the next Riva sync cycle.

How Riva Syncs NetSuite Contacts to Exchange (Outlook)

During an initial sync for a user, Riva syncs NetSuite individual customers and customer/vendor/partner contacts to the personal address book of the target user's Exchange mailbox based on the options and filters set in the NetSuite connection and sync policy. Typically, Riva creates a new Contact folder using the category name defined in the Riva sync policy; the default name is "NetSuite". Riva normally syncs individual customers and contacts of company customers, vendors, and partners to the "NetSuite" contact folder as "NetSuite" categorized contacts.

outlook-addbook-netsuite-1 (2).png

Suppose a user makes a change to the details of a Riva synced contact, Riva syncs that change to the corresponding contacts in the Exchange address book. If a user removes a NetSuite contact, Riva removes the corresponding contact from the target user Exchange address books.

How Riva Syncs Exchange (Outlook) Contacts to NetSuite

During the initial sync of a target user, Riva does not sync any Exchange contacts to NetSuite. If the user changes a Riva synced contact in Exchange, Riva syncs that change back to NetSuite. Suppose the user removes a Riva synced contact from the Exchange address book, Riva does not remove the contact from NetSuite. If anyone modifies that contact in NetSuite, Riva syncs a fresh copy of the contact back to the user's address book in Exchange. 

Three user actions cause Riva to create a NetSuite contact:

User creates a contact in the Exchange address book

To sync a new contact from the Exchange address book, the user needs to create the contact in the NetSuite contact folder.

customer-gyro9 (2).png

By default, Riva proceeds as follows:

  1. Riva attempts to find a matching "organization" object in NetSuite. This can be a company customer, vendor, or partner. Riva uses the value of the Exchange contact "Company" field (for example, "Gyro 9" in the screenshot) to match the corresponding name of the customer, vendor, or partner.

    contact-atingle-1 (2).png

  2. If there is a match, Riva creates the contact and links it to the matching organization object. The new contact is assigned to the "owning employee" of the "organization" the contact is linked.

    If there is no match, Riva tries to locate a matching organization by comparing the email address domain (for example, in the screenshot) to the website address value (for example, or the email address of a NetSuite organization object.

    contact-atingle-2 (2).png

  3. If there is a match, Riva creates the contact and links it to the matching organization object. The new contact is assigned to the "owning employee" of the "organization" the contact is linked.

    If there is no match, Riva creates the new contact as an individual customer in NetSuite. The NetSuite user can convert the individual customer to a company customer in NetSuite. The default behaviour of creating an individual customer can be changed. See the next section.

Changing the Default Contact or Company Created

Implementation for Riva Cloud

Implementation for Riva On-Premise

To change the default contact or company created:

  • Apply one or more of the following advanced custom options to the sync policy or to the NetSuite connection:

    In the following information, the advanced options appear in maroon characters.

    If NetSuite.SyncCustomer = true AND NetSuite.SyncIndividualCustomer = true, Riva creates an individual customer whenever there is no account match to the NetSuite customer, vendor, or partner. If you want to limit Riva to creating individual customers based on personal email domains ONLY, then apply the following advanced option:

    Sync.Crm.CreatePersonAccountForBusinessEmail = false (If the option is set to "false", if the Outlook contact/email address/attendee cannot be matched to a NetSuite customer, vendor, or partner, Riva creates a company customer and linked contact. If the option is set to "true", Riva always creates an individual customer (personal contact).)

You can change the default item that is created in NetSuite when the "account" match is not successful: Change the search order. The default search order is customer, vendor, and partner.

To change the search order:

  • Apply the following advanced option:

    NetSuite.SearchOrders = customer, vendor, partner (Default order.)
    NetSuite.SearchOrders = vendor, partner, customer (Example that resets the search order.)
    NetSuite.SearchOrders = customer, vendor (Example that sets the search order if partner sync is not selected.)

Was this article helpful?




Article is closed for comments.