> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.solvimon.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.solvimon.com/_mcp/server.

# NetSuite

Connect Solvimon to NetSuite to import your customers, subsidiaries, and items, and to push finalised invoices to NetSuite with tax and revenue recognition data.

---

## Prerequisites

* An active NetSuite account.
* To sync VAT and revenue recognition information per invoice line, the **SuiteTax** and **Revenue Recognition** NetSuite modules must be enabled.
* For Commitments, Discounts, or One Off invoice lines to be synced, specific items need to be created for Solvimon to post the amounts for those lines. The items must be of the type **Service For Sale**.

> **Warning**
>
> Solvimon will still send the VAT information and revenue recognition dates when syncing invoices, but NetSuite will not consume that information if the above modules are not enabled.

## Connect Solvimon to NetSuite

To enable the integration, you create an integration record and a certificate in NetSuite, then configure the connection in Solvimon.

#### Create the integration in NetSuite

Create an integration record:

1. Log in to **NetSuite**.
2. Navigate to `Setup → Integration → Manage Integrations → New`.
3. Fill in:
   * **Name**: e.g. `Solvimon Integration`
   * (Optional) Description
4. Under **Authentication**:
   * Enable **OAuth 2.0**, with **Client Credentials (Machine to Machine) Grant**
   * Disable all other authentication options
   * Add **Restlets** and **Rest Web Services** to the Scope
5. Click **Save**.

> **Note**
>
> After saving, NetSuite generates a **Client ID**. You'll need this later in Solvimon.

#### Generate and upload the security certificate

This certificate allows Solvimon to authenticate securely with NetSuite.

> **Warning**
>
> The private certificate file acts like a password. Anyone with access to it can authenticate to NetSuite.

**Generate the certificate (on your computer)**

On macOS / Linux, open **Terminal** and run:

**`Generate certificate`**

```bash Generate certificate
openssl req -new -x509 -newkey rsa:4096 \
  -keyout private.pem \
  -out public.pem \
  -nodes \
  -days 730 \
  -sha256 \
  -sigopt rsa_padding_mode:pss \
  -sigopt rsa_pss_saltlen:64
```

When prompted:

* You may leave most fields blank
* For **Common Name (CN)**, enter:

  ```
  solvimon-netsuite-m2m
  ```

After completion, you will have two files:

* `public.pem`: uploaded to NetSuite
* `private.pem`: uploaded to Solvimon (keep secret)

> **Note**
>
> Reach out to Solvimon's support team if you would like Solvimon to generate the certificates on your behalf.

**Upload the certificate to NetSuite**

1. In NetSuite, go to `Setup → Integration → OAuth 2.0 Client Credentials (M2M) Setup`.
2. Click **Create New**.
3. Fill in:
   * **Entity**: select the user/entity that owns the integration
   * **Role**
   * **OAuth 2.0 Application**: select the integration created in Step 1
   * **Certificate**: upload `public.pem`
4. Click **Save**.

> **Check**
>
> Your NetSuite integration is now authorised to use certificate authentication.

#### Enable the integration in Solvimon

1. Log in to **Solvimon**.
2. Navigate to **Settings → Integrations → Add Integration → ERP → NetSuite** and click **Connect**.
3. Enter the following details from NetSuite:
   * **NetSuite Account ID**: retrieve this from the URL of your NetSuite instance (e.g. `https://1234567.app.netsuite.com/...`, where `1234567` is the ID), or in NetSuite under **Setup → Company → Company Information**, field `Account ID`.
   * **Consumer Key**: from the integration record created in Step 1.
   * **Certificate ID**: from the certificate record created in Step 2.
   * **Certificate Private Key**: upload `private.pem`.
4. Save the configuration.

![](/_fern-img/5ab10b5b076be93f3a5889ac6c2071cd16736df6326e1738fb1436d239a2d8ca.webp)

#### Configure and enable workflows

Once authenticated, open the configurations tab to enable the workflows you want to run against your NetSuite environment.

One of the input fields that requires configuration is the `Company-Language` (e.g. "en", "es", "fr").

The supported out-of-the-box workflows are listed under configuration; if you don't see the one you're looking for, reach out to your Customer Success Manager or Support Team.

You can disconnect the integration at any point from Desk.

## Data flow

```mermaid
flowchart LR
    NS[NetSuite] -->|customers, subsidiaries, items| SV[Solvimon]
    SV -->|invoices| NS
```

| Workflow                | Direction           | Trigger                                      |
| :---------------------- | :------------------ | :------------------------------------------- |
| Import customers        | NetSuite → Solvimon | Manual                                       |
| Import billing entities | NetSuite → Solvimon | Manual                                       |
| Import products         | NetSuite → Solvimon | Manual                                       |
| Export invoices         | Solvimon → NetSuite | Automatic or manual, on invoice finalisation |

#### Import customers

You can import your Customers from NetSuite to Solvimon to speed up your onboarding process.

Every `Customer` entity in NetSuite is treated as a `Customer` in Solvimon, with the following mapping:

| NetSuite Customer Field                   | Solvimon Customer Field |
| :---------------------------------------- | :---------------------- |
| Company Name                              | Legal Entity Name       |
| Address Country                           | Country                 |
| Email                                     | Billing Email Address   |
| Address 1                                 | Address Line 1          |
| City                                      | City                    |
| State                                     | State                   |
| Zip                                       | Postal Code             |
| Tax Registrations.Tax Registration Number | VAT number              |

All `Contacts` from a NetSuite Customer are synced as `Contacts` in Solvimon.

#### Import billing entities

You can import details of your NetSuite Subsidiaries as Solvimon [billing entities](/platform-guides/platform-configuration/billing-entities).

You can add more than one Billing Entity to your platform. To be valid for invoicing in Solvimon, every Billing Entity needs the following:

* Name
* Tax ID
* Address
  * First line
  * Postal code
  * City
  * Country (read more about [supported locales](/platform-guides/for-developers/locale) and country code usage)

The integration syncs the following information from NetSuite Subsidiaries:

| NetSuite Subsidiary Field | Solvimon Billing Entity Field |
| :------------------------ | :---------------------------- |
| Subsidiary Name           | Billing Entity Name           |
| Address Line 1            | Address Line 1                |
| Zip                       | Postal Code                   |
| City                      | City                          |
| Country                   | Country                       |

#### Import products

Items configured on your NetSuite account can be synced to Solvimon. The items are created in the Products section of the settings menu under the category `NetSuite Item Imports`.

This includes the product line items defined in the ERP along with their metadata, i.e. the NetSuite Item ID.

> **Note**
>
> Currently, Solvimon only pulls the NetSuite Items of the type **Service Sale**. If your items are configured under a different type, reach out to the Customer Success or Support team to discuss new import types.

#### Export invoices to NetSuite

Whenever an invoice is finalised in Solvimon, it is pushed to NetSuite, either manually or automatically.

If the Customer being invoiced does not exist in NetSuite, Solvimon creates the Customer before syncing the invoice.

Each Product is treated as a line item in the NetSuite invoice, along with its net amount, tax amount, and gross amount.

Solvimon also pushes the Tax Type and Tax Code for each invoice line, depending on the tax scenario. The Tax Type and Code IDs can be given as an input on the Connect Portal, on the Export Invoices to ERP workflow:

![](/_fern-img/c19a659896bff757893585456c52c5a08913bb6f4a244702269606773d7c7340.webp)

Next to the Tax Types/Codes, the items created to represent the Commitments, Discounts, or One Off lines should also have their IDs added as input in the configuration:

![](/_fern-img/951efea8a07059653a4b7b4997bf9a4e682c5fbd448bff6d0ef86dbc989578dc.webp)

The invoices are synced with the following mapping:

| Solvimon Invoice Field         | NetSuite Invoice Field           |
| :----------------------------- | :------------------------------- |
| Customer                       | Customer                         |
| Billing Entity                 | Subsidiary                       |
| Invoice Date                   | Date                             |
| Due Date                       | Due Date                         |
| Currency                       | Currency                         |
| Internal ID                    | Memo                             |
| PO Number                      | Ref No                           |
| item.Service Period Start Date | Revenue Recognition Start Date\* |
| item.Service Period End Date   | Revenue Recognition End Date\*   |
| item.Name                      | Description                      |
| item.Amount Excluding Tax      | Amount                           |
| item.Tax Amount                | Tax Amount                       |
| item.Tax Rate\*\*              | Tax Rate                         |
| item.Tax Type\*\*              | Tax Type                         |
| item.Tax Code\*\*              | Tax Code                         |

\* Only consumed by NetSuite if the Revenue Recognition module is enabled.

\*\* Based on the input values in the configuration portal. Only consumed by NetSuite if the SuiteTax module is enabled.

## Recommended workflow

To get the most value from the integration, follow these steps:

1. Import your customers from NetSuite to Solvimon.
2. Use Solvimon to create draft invoices.
3. Review and edit invoices in Solvimon Desk as needed.
4. Finalise and send invoices to customers using Solvimon.
5. Invoices are synced to NetSuite for revenue recognition and general accounting.

> **Note**
>
> Synchronisation is trigger-based by default. If you need custom triggers, reach out to your sales executive.