Skip to main content

Integrate Scispot with NetSuite Using Zapier: A Step-by-Step Guide

C
Written by Claire Robertin

Integrating NetSuite with Scispot via Zapier allows you to automatically push ERP records — such as Purchase Orders, Vendor Bills, or Inventory Items — directly into your Scispot Labsheets, without any manual data entry.

Getting Started: What You'll Need

Before setting up the integration, make sure you have the following:

  1. A NetSuite account with the appropriate roles and permissions.

  2. The Zapier Automation SuiteApp installed in NetSuite by your administrator (one-time setup — see Section A below).

  3. Your NetSuite Account ID — found at Setup > Company > Company Information in NetSuite.

  4. NetSuite credentials — either via Zapier's App (OAuth) or Custom Credentials (Token ID/Secret). See Section A for how to choose and generate these.

  5. A Zapier account on a paid plan. NetSuite is a premium app on Zapier.

  6. A Scispot API Key — generated from your Scispot account settings.

  7. A Scispot Labsheet already created, with the columns you want to populate.

Section A: NetSuite Administrator Setup (One-Time)

If your administrator has already connected NetSuite to Zapier before, skip to Section B.

Your NetSuite administrator needs to complete this setup once. There are two authentication methods — pick the one that fits your organization and only follow those steps.

Method

Best for

Steps required

Zapier's App

Most teams — simpler setup

A1, A2, A3

Custom Credentials

Teams that want full control over access

A2, A3, A4, A5

Step A1 — Install the Zapier Automation SuiteApp

Zapier's App method only. Skip this step if you are using Custom Credentials.

  1. In NetSuite, go to the SuiteApp Marketplace.

  2. Search for Zapier Automation and install it.

Step A2 — Enable SuiteCloud Features

Required for both methods.

  1. Go to Setup > Company > Enable Features.

  2. Click the SuiteCloud tab.

  3. Enable all four of the following:

    • Client SuiteScript

    • Server SuiteScript

    • REST Web Services

    • Token-Based Authentication

  4. Click Save.

Step A3 — Configure Role Permissions

Required for both methods. Make sure the user connecting to Zapier has a role with these permissions:

Permission

Level

REST Web Services

Full

User Access Tokens

Full

SuiteAnalytics Workbook

Edit

Employees

View

Employee Record

View

Additional permissions may be needed depending on the record types you plan to use (e.g., Purchase Orders, Vendor Bills).

Step A4 — (Custom Credentials only) Create an Integration Record

Skip this step if using Zapier's App method.

This creates a custom integration record in NetSuite that gives you a Client ID and Client Secret to use instead of going through Zapier's OAuth flow.

  1. Go to Setup > Integration > Manage Integrations.

  2. Click New.

  3. Enter a Name — for example, Zapier Custom Integration.

  4. In the Authentication section, check the following:

    • Token-based authentication

    • TBA: Issue token endpoint

    • TBA: Authorization flow

  5. In the OAuth 2.0 section, make sure Authorization Code Grant is unchecked.

  6. Click Save.

  7. Copy the Consumer Key (Client ID) and Consumer Secret (Client Secret) immediately. They cannot be accessed again after you leave this page. Store them in a password manager.

Provide the Client ID and Client Secret to anyone who needs to connect using this method.

Step A5 — (Custom Credentials only) Create Access Tokens for Users

Skip this step if using Zapier's App method.

Instead of sharing OAuth credentials, you can generate a Token ID and Token Secret per user — giving each person their own credentials tied to a specific role.

  1. Go to Setup > Users/Roles > Access Tokens.

  2. Click New Access Token.

  3. For Application Name, select Zapier (or your custom integration record name if you created one in Step A4).

  4. Select the User and Role for this token.

  5. Click Save.

  6. Copy the Token ID and Token Secret immediately. They cannot be retrieved after you leave this page.

Provide the Token ID and Token Secret to the user who will connect NetSuite in Zapier.

Section B: Generate Your Scispot API Key

  1. Log in to Scispot and click the Account button in the bottom-left navigation.

  2. Click Personal Tokens in the pop-up.

  3. Click Generate New Token, give it a name, and click Generate.

  4. Copy the token immediately and save it somewhere safe — it cannot be retrieved again.

This token will be used in the Zapier Webhook as your Authorization header.

Section C: Prepare Your Scispot Labsheet

Before building the Zap, make sure your Labsheet is ready:

  1. Open Scispot and create (or select) the Labsheet you want to write to — for example, "NetSuite PO Log".

  2. Add the columns you want to populate. The order matters — the Scispot API inserts values by column position, not by name.

    A typical Purchase Order Labsheet might look like this:

Position

Column Name

Type

0

PO Number

ID

1

Vendor Name

TEXT

2

Item Description

TEXT

3

Quantity

NUMBER

4

Order Date

DATE

Note the exact Labsheet name — spelling and capitalization must match exactly in the Zap.

Step 1: Connect NetSuite to Zapier

  1. Log in to Zapier and go to Apps.

  2. Click + Add connection and search for NetSuite.

  3. Click Add connection. A Connect an Account page opens.

  4. Enter your NetSuite Account ID.

    Now follow the path that matches your authentication method:

    1. Using Zapier's App (OAuth):

      1. Click Yes, Continue to NetSuite.

      2. Log in to NetSuite and select your role to complete the connection.

    2. Using Custom Credentials (Token ID/Secret):

      1. Expand the advanced fields on the connection page.

      2. Enter your Token ID and Token Secret (provided by your administrator from Step A5).

      3. Click Yes, Continue to NetSuite and log in to select your role.

    3. Using Custom Credentials (Client ID/Secret):

      1. Expand the advanced fields on the connection page.

      2. Enter your Client ID and Client Secret (from the integration record created in Step A4).

      3. Click Yes, Continue to NetSuite and complete the authorization.

Your NetSuite account is now connected to Zapier.

Step 2: Set Up the NetSuite Trigger

This trigger fires every time a new record is created in NetSuite.

  1. In Zapier, click Create Zap.

  2. Select NetSuite as the Trigger App.

  3. Choose a Trigger Event. Common choices:

    • New Record — fires when a new record is created

    • New or Updated Record — fires on creation or any update

  4. Connect your NetSuite account (the one you set up in Step 1).

  5. Select the Record Type — for example, purchaseorder, vendorbill, or inventoryitem.

  6. Test the trigger to pull a sample record. Confirm the fields you need are present (e.g., PO number, vendor name, date).

Step 3: Configure the Webhook to Send Data to Scispot

The Webhook action sends the NetSuite data to Scispot.

  1. Click + to add an Action step.

  2. Search for and select Webhooks by Zapier.

  3. Choose Custom Request as the action event.

  4. Fill in the request details:

  5. In the Data section, map your NetSuite fields to Scispot column positions:

{
"labsheet": "NetSuite PO Log",
"rows": [
[
"{{tranid}}",
"{{entity}}",
"{{memo}}",
"{{quantity}}",
"{{trandate}}"
]
]
}

Replace {{tranid}}, {{entity}}, etc. with the actual NetSuite field names from your trigger output.

  • Date format: Scispot DATE columns expect MM/DD/YYYY. If NetSuite returns dates in a different format, use a Formatter by Zapier step (Date/Time format) between the trigger and the Webhook to convert it.

  • Empty columns: If a column has no value, pass "" (an empty string) to keep the column count correct. The API will reject rows where the number of values doesn't match the number of columns.

Step 4: Test and Publish

  1. Click Test step on the Webhook action. Zapier will send a real POST request to Scispot using your sample NetSuite data.

  2. Open Scispot and navigate to your Labsheet. The new row should appear within a few seconds.

  3. Verify each column value is correct.

  4. Once everything looks good, click Publish to activate the Zap.

Bonus: Updating Existing Scispot Records from NetSuite

The workflow above adds a new row every time a NetSuite record is created. But sometimes you want to update an existing Labsheet row — for example, when a Purchase Order status changes in NetSuite and you want that reflected in Scispot.

Scispot provides a dedicated endpoint for this:

Instead of inserting a new row, it finds an existing row by its ID column value and updates the fields you specify.

Your Labsheet must have a column of type ID to use this endpoint. This is the user-defined identifier (e.g., the PO Number) — not the system-generated UUID.

How the Zap looks for an update workflow

The Zap structure is almost identical to the add workflow:

  1. Trigger — NetSuite: New or Updated Record (choose the record type)

  2. Action — Webhooks by Zapier: Custom Request

Webhook configuration

Key

Value

Content-Type

application/json

Authorization

Bearer YOUR_SCISPOT_API_KEY

  • Data:

    {
    "labsheet": "NetSuite PO Log",
    "rows": [
    {
    "PO Number": "{{tranid}}",
    "Vendor Name": "{{entity}}",
    "Quantity": "{{quantity}}",
    "Order Date": "{{trandate}}"
    }
    ]
    }


​The key difference from add-rows: instead of a positional array, you pass a JSON object where each key is a column name. The ID column (PO Number in this example) tells Scispot which row to update. All other keys are the fields you want to change.

You do not need to include every column — only the ID column (required) and the fields you want to update.

Example response from Scispot

[
{
"PO Number": "PO-1042",
"updatedRows": [
{
"uuid": "85ac1085-ec04-4029-a324-a99a94e49d03",
"success": "true"
}
]
}
]

Quick reference: which endpoint to use

Goal

Endpoint

Notes

Add a new row

POST /labsheets/add-rows

Values passed as a positional array

Update a row by ID

POST /labsheets/update-rows-by-id

Values passed as named key-value pairs; ID column required

For the full API reference including additional endpoints, see docs.scispot.com.

Important Notes

  • Labsheet name changes: If you rename your Labsheet in Scispot, update the labsheet field in your Zap as well.

  • Column changes: Adding, removing, or reordering columns in Scispot requires updating the Zap's data mapping to match.

  • Duplicate records: If your trigger fires on both creation and updates, the same record may be inserted more than once. To avoid this, use the New Record trigger (not New or Updated) or add a Filter by Zapier step to check for duplicates.

  • Unwanted columns: Map any columns you do not want to sync as "" so the column count still matches.

By following these steps, you'll have an automated pipeline that moves NetSuite records into Scispot Labsheets the moment they're created — no manual exports, no copy-pasting, and no data falling through the cracks.

Did this answer your question?