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:
A NetSuite account with the appropriate roles and permissions.
The Zapier Automation SuiteApp installed in NetSuite by your administrator (one-time setup — see Section A below).
Your NetSuite Account ID — found at Setup > Company > Company Information in NetSuite.
NetSuite credentials — either via Zapier's App (OAuth) or Custom Credentials (Token ID/Secret). See Section A for how to choose and generate these.
A Zapier account on a paid plan. NetSuite is a premium app on Zapier.
A Scispot API Key — generated from your Scispot account settings.
A Scispot Labsheet already created, with the columns you want to populate.
Read More:
How to get started with NetSuite on Zapier
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.
In NetSuite, go to the SuiteApp Marketplace.
Search for Zapier Automation and install it.
Step A2 — Enable SuiteCloud Features
Required for both methods.
Go to Setup > Company > Enable Features.
Click the SuiteCloud tab.
Enable all four of the following:
Client SuiteScript
Server SuiteScript
REST Web Services
Token-Based Authentication
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.
Go to Setup > Integration > Manage Integrations.
Click New.
Enter a Name — for example, Zapier Custom Integration.
In the Authentication section, check the following:
Token-based authentication
TBA: Issue token endpoint
TBA: Authorization flow
Set the Callback URL to: https://zapier.com/dashboard/auth/oauth/return/App207308CLIAPI/
In the OAuth 2.0 section, make sure Authorization Code Grant is unchecked.
Click Save.
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.
Go to Setup > Users/Roles > Access Tokens.
Click New Access Token.
For Application Name, select Zapier (or your custom integration record name if you created one in Step A4).
Select the User and Role for this token.
Click Save.
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.
For the full admin reference, see NetSuite administrator prerequisites for Zapier connection.
Section B: Generate Your Scispot API Key
Log in to Scispot and click the Account button in the bottom-left navigation.
Click Personal Tokens in the pop-up.
Click Generate New Token, give it a name, and click Generate.
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:
Open Scispot and create (or select) the Labsheet you want to write to — for example, "NetSuite PO Log".
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
Log in to Zapier and go to Apps.
Click + Add connection and search for NetSuite.
Click Add connection. A Connect an Account page opens.
Enter your NetSuite Account ID.
Now follow the path that matches your authentication method:
Using Zapier's App (OAuth):
Click Yes, Continue to NetSuite.
Log in to NetSuite and select your role to complete the connection.
Using Custom Credentials (Token ID/Secret):
Expand the advanced fields on the connection page.
Enter your Token ID and Token Secret (provided by your administrator from Step A5).
Click Yes, Continue to NetSuite and log in to select your role.
Using Custom Credentials (Client ID/Secret):
Expand the advanced fields on the connection page.
Enter your Client ID and Client Secret (from the integration record created in Step A4).
Click Yes, Continue to NetSuite and complete the authorization.
Your NetSuite account is now connected to Zapier.
For more details, see How to get started with NetSuite on Zapier.
Step 2: Set Up the NetSuite Trigger
This trigger fires every time a new record is created in NetSuite.
In Zapier, click Create Zap.
Select NetSuite as the Trigger App.
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
Connect your NetSuite account (the one you set up in Step 1).
Select the Record Type — for example, purchaseorder, vendorbill, or inventoryitem.
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.
Click + to add an Action step.
Search for and select Webhooks by Zapier.
Choose Custom Request as the action event.
Fill in the request details:
Method: POST
Headers:
Content-Type:
application/json
Authorization: Be sure to replace with your actual Scispot API key
Bearer YOUR_SCISPOT_API_KEY
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
Click Test step on the Webhook action. Zapier will send a real POST request to Scispot using your sample NetSuite data.
Open Scispot and navigate to your Labsheet. The new row should appear within a few seconds.
Verify each column value is correct.
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:
Trigger — NetSuite: New or Updated Record (choose the record type)
Action — Webhooks by Zapier: Custom Request
Webhook configuration
Method: POST
Headers:
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.