Overview
This guide walks you through connecting NetSuite to Limble using OAuth 2.0 Client Credentials (Machine-to-Machine) authentication. You’ll create a secure NetSuite integration, generate a certificate, and configure the connection Limble can use to access your NetSuite data.
Table of Contents
Prerequisites
Before beginning, ensure the following:
NetSuite administrator access.
SuiteTalk (REST Web Services) enabled in your NetSuite account.
OpenSSL installed on your computer locally to generate a certificate and private key.
Step 1. Enable SuiteTalk
Navigate to Setup > Company > Enable Features.
Open the SuiteCloud tab.
Ensure the following are enabled:
REST WEB SERVICES
OAUTH 2.0
Step 2. Create an OAuth 2.0 Application with Client Credentials (JWT) Enabled
Navigate to Setup > Integration > Manage Integrations > New.
Enter a name and description for the integration.
Under Token-based Authentication, uncheck:
TOKEN-BASED AUTHENTICATION
TBA: AUTHORIZATION FLOW
Under OAuth 2.0, ensure the following are checked:
REST WEB SERVICES
CLIENT CREDENTIALS (MACHINE TO MACHINE) GRANT
Under Scope, enable:
REST WEB SERVICES
Under Redirect URI:
https://oauth2.prismatic.io/callback
Save the integration and copy the Consumer Key. NetSuite will not display it again.
Step 3. Generate Certificate and Private Key for JWT Authentication
NetSuite requires a JWT signed with a private key for OAuth 2.0 Client Credentials.
On your machine, generate a certificate and private key by opening Terminal (Mac) or Git Bash (Windows) and pasting this:
openssl req -new -x509 -newkey rsa:4096 -keyout private.pem -sigopt rsa_padding_mode:pss -sha256 -sigopt rsa_pss_saltlen:64 -out public.pem -nodes -days 730
Click Enter. This command will output:
private.pem(private key, keep secure)public.pem(public certificate, upload to NetSuite)
Private Key Security
The private.pem file must be kept secure. Do not store it in version control or share it. Only the integration runtime should have access.
Step 4. Configure OAuth 2.0 Client (M2M) in NetSuite
Navigate to Setup > Integration > OAUTH 2.0 CLIENT (M2M) SETUP.
Select Create New.
Choose the appropriate Entity and Role. Important: This User must have sufficient permissions to do things like adjust inventory, create Purchase Orders, create Journals, etc.
Select the Application created in Step 2.
For Certificate, upload the public.pem file.
Save the configuration. NetSuite will display a Certificate ID. Record this value for later.
Step 5. Configure the Connection
When configuring the NetSuite OAuth 2.0 Client Credentials connection, enter:
Certificate ID: From Step 4.
Private Key: Contents of
private.pemincluding header and footer:-----BEGIN PRIVATE KEY-----MIIJQwIBADANBgkqhkiG9w0BAQEFAASCCS0wggkpAgEAAoICAQC......key content here...-----END PRIVATE KEY-----
Consumer Key (Client ID): From Step 2.
Token URL:
Replace [ACCOUNT_ID] with your NetSuite account ID found under Setup > Company > Company Information.
https://[ACCOUNT_ID].suitetalk.api.netsuite.com/services/rest/auth/oauth2/v1/token
Results
Once these steps are complete, your NetSuite OAuth 2.0 Client Credentials connection should be ready to use in Limble.
Related Articles