




NetSuite is Oracle's cloud ERP suite unifying finance, CRM, e-commerce, and inventory management for scalable global operations.
Have any questions? We’re here to help You
Machine-to-Machine (M2M) authentication is a secure method that allows automated data exchange between NetSuite and other applications without requiring manual user login. It uses OAuth 2.0 Client Credentials grant flow with certificate-based authentication to establish secure, automated connections.
You need two essential prerequisites:
Administrator access to your NetSuite account
API Integration enabled in your NetSuite account
The integration role must have the following essential permissions:
• Log in using OAuth 2.0 Access Tokens (Full level)
• REST Web Services (Full level)
Additionally, you should add specific permissions based on your integration needs, such as permissions for Transactions, Lists, Reports, or Custom Records.
The integration record serves as the OAuth 2.0 application registration in NetSuite. It generates the Consumer Key and Consumer Secret (Client ID and Client Secret) that Makini uses to authenticate and connect to your NetSuite account. It also defines which authorization flows are permitted for the integration.
No. For M2M setup, both "Authorization Flow" and "Authorization Code Grant" should be unchecked. Only "Client Credentials (Machine To Machine) Grant" should be checked, along with the required scopes (Restlets and REST Web Services).
You have two options:
• Option A: Upload the Makini public certificate (available in the Resources section of the guide)
• Option B: Generate your own self-signed certificate using OpenSSL and upload the public key to NetSuite
Use the following OpenSSL command to generate both private and public keys:
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
Upload the public.pem to NetSuite and keep the private.pem secure for use in Makini Link.
"Web services only role" is an optional security setting that restricts the role to only accessing NetSuite via web services (APIs), preventing UI login. This is recommended for integration roles as it enhances security by limiting the access method to API-only usage.
If you continue to experience problems with your NetSuite M2M connection after following the troubleshooting steps, contact Makini support at support@makini.io. You can also refer to the NetSuite API Documentation and Makini Documentation for additional technical details.
