Account Configuration & Initial Setup

What you'll need

  • An activated Stripe account. In order for us to connect securely to your Stripe account, it must be activated.
  • A NetSuite sandbox account, for testing the integration. If you don't have a sandbox, that's not a problem, your production NetSuite account can be used for testing.
  • A NetSuite production account when you are ready to move to production.

Setting up a NetSuite User

After connecting your Stripe account, you'll need to enter your NetSuite sandbox credentials. You'll need to have the following information handy:

  • NetSuite Account ID. Navigate to the SuiteTalk preferences via “Setup > Integration > Web Services Preferences” to find this ID.
  • NetSuite username.
  • NetSuite password.

The NetSuite user:

  1. Should be for your sandbox environment. Production credentials can be provided later.
  2. Must be enabled for Web Services use. Here's more information on setting this up.
  3. Has access to the administrator role, or has all required permissions (more details below).
  4. Should be a dedicated account for this integration. This ensures that there is a clear audit trail for everything translated by the integration.

If you do not provide a user with the administrator role, or do not provide a user with GUI access,
troubleshooting issues specific to your NetSuite account will be time consuming. It's best to start
with administrator and GUI access, and then scope down permissions before moving to production.

Enabling NetSuite Web Services

NetSuite WebServices is the feature used to facilitate the integration between Stripe and NetSuite. If integrations have not been used in your NetSuite account before, you may need to enable this feature.

  1. Navigate to 'Setup > Company > Enable Features > SuiteCloud > SuiteTalk' and enable "Web Services"
  2. If the user does not have the "Administrator" role, you'll need to add the "Web Services: Full" permission to either the user directly or the role that the user has access to. Here's how to do
    1. To add the permission directly to the user, navigate to "Employee > Access > Global Permissions" and add the "Web Services: Full" permission
    2. To add the permission to the role, edit the role associated with the user, navigate to "Permissions > Setup" and add the "Web Services: Full" permission

Here's exactly where you enable the web services feature:

Enable Web Services

Enable Employee Web Services

Should I use a dedicated user for the integration?

It's recommended to use a dedicated user. Here's why:

  1. Changing the password or configuration on a shared user can effect the Stripe-NetSuite integration.
  2. NetSuite logs each change on a record using a "System Log". If a dedicated user is not used, it will not be clear through the system log if a user, or if the integration, made a change on a record.

However, the integration works just fine with a shared user if these issues aren't important to you. If you chose to use an existing user's login, be sure that no other integrations are using that login.

Do I need a NetSuite sandbox to use this integration?

No, we can configure and test integration directly in your NetSuite production environment. However, any test data that is created in your production environment will need to be manually deleted from your NetSuite production account.

Limited User Access

By default, the integration uses the NetSuite administrator role. If you would like to limit the permissions the integration's user has, you can create a role with the following limited permissions.

Here are the minimum set of permissions required for the integration:

Role: Transaction Permissions
Role: Lists Permissions
Role: Setup Permissions

If you have NetSuite OneWorld enabled on your account, you'll need to add the 'Lists > Subsidiaries: View' permissions to the role.

After creating the role, you'll need to grab the internal ID associated with the role. Here's instructions on how to determine the internal ID.

If you can't find some of the permissions shown above in your NetSuite account, it's possible that the records were renamed. The easiest way to see if a NetSuite record was renamed, is to search for the original record name in the global search and inspect the name on the resulting index page.

For instance, if you cannot find the "Classes" permission, most likely the "Class" record's name has been renamed. To discover the new name, run a global search for "page:classes" and click on the first result. The title at the top of the page is the new name for "Class". This is the title of the record that should be in the 'Lists' permission area.

Renamed Class Record