Celigo NetSuite Integration: Capabilities, Pre-Built Apps, and Endpoint Pricing

Type: ERP Integration System: Celigo integrator.io (2026.1.1) + Oracle NetSuite (2024.2+) Confidence: 0.88 Sources: 7 Verified: 2026-03-02 Freshness: evolving

TL;DR

System Profile

Celigo integrator.io is a cloud-native iPaaS that has been Oracle NetSuite's largest integration partner for over a decade. The platform connects NetSuite to 100+ external applications through pre-built SmartConnector apps and a visual flow designer. Celigo communicates with NetSuite primarily via custom RESTlets deployed through the integrator.io SuiteApp bundle (ID 20038), with optional SuiteTalk SOAP/REST API fallback for high-volume scenarios.

PropertyValue
VendorCeligo
Systemintegrator.io (release 2026.1.1) + Oracle NetSuite (2024.2+)
API SurfaceRESTlet (primary), SuiteTalk SOAP, SuiteTalk REST, SuiteQL
Current Platform Version2026.1.1
Editions CoveredStandard, Professional, Premium, Enterprise
DeploymentCloud (SaaS)
API DocsCeligo API Docs
StatusGA

API Surfaces & Capabilities

API SurfaceProtocolBest ForMax Records/RequestRate LimitReal-time?Bulk?
Celigo RESTlet (Bundle 20038)HTTPS/JSONStandard CRUD, saved searchesConfigurable batch sizeNS concurrency governanceYesYes (batched)
SuiteTalk SOAPHTTPS/XMLHigh-volume exports, SuiteCloud Plus1,000 records/pageNS concurrency governanceYesYes
SuiteTalk RESTHTTPS/JSONSuiteQL queries, modern REST1,000 records/pageNS concurrency governanceYesNo
SuiteQL via HTTP ConnectorHTTPS/JSONComplex SQL-like queries1,000 records/pageNS concurrency governanceYesNo
Celigo Platform APIHTTPS/JSONManaging integrations programmaticallyN/A1,000 bucket / 300 tokens/secYesN/A
Custom RESTlet ProxyHTTPS/JSONCustom business logicCustomNS concurrency governanceYesCustom

Rate Limits & Quotas

Per-Request Limits

Limit TypeValueApplies ToNotes
Celigo API bucket size1,000 tokensCeligo Platform APILeaky-bucket algorithm
Celigo API fill rate300 tokens/secondCeligo Platform API~1,080,000 requests/hour max
NetSuite saved search page1,000 recordsRESTlet exportsCeligo auto-paginates
Import batch sizeConfigurableAll importsReduce to avoid ss_out_of_points
Max burst concurrency50HTTP connectionsWith auto-recover + burst mode

Rolling / Daily Limits

Limit TypeValueWindowEdition Differences
NetSuite concurrency (default)5 concurrent requestsPer account+10 per SuiteCloud Plus license
Celigo endpoint limit3 / 5 / 10 / unlimitedPer subscriptionStandard / Professional / Premium / Enterprise
Celigo flow limit16 / 100 / unlimited / unlimitedPer subscriptionStandard / Professional / Premium / Enterprise
NetSuite API request limitFair use (no hard daily cap)Per accountGoverned by concurrency, not daily count

Transaction / Governor Limits

Limit TypePer-Transaction ValueNotes
SuiteScript governance units5,000 (scheduled), 1,000 (client)Exceeding triggers ss_out_of_points
Concurrent web services + RESTletAccount limit (default 5)Combined across ALL integrations
Saved search row limit100,000 rowsNetSuite export cap per saved search
Max record size per request~5 MBNetSuite payload limit

Authentication

FlowUse WhenToken LifetimeRefresh?Notes
Token-Based Auth (Automatic)Standard setup with SuiteAppUntil revokedAutomatic via SuiteAppRecommended -- requires bundle 20038
Token-Based Auth (Manual)Manual token managementUntil revokedManual rotationRequires creating access token in NS
OAuth 1.0 (HTTP Connector)Direct SuiteTalk/SuiteQLUntil revokedN/A (signature-based)For universal HTTP connector
Basic Auth (Legacy)Legacy accounts onlySession-basedNoDeprecated -- migrate to TBA

Authentication Gotchas

Constraints

Integration Pattern Decision Tree

START -- User needs to integrate external system with NetSuite via Celigo
|-- Do they have a pre-built SmartConnector app?
|   |-- YES (Shopify, Amazon, Salesforce, HubSpot, etc.)
|   |   |-- Install SmartConnector from Celigo Marketplace
|   |   |-- Configure connection credentials + field mappings
|   |   +-- Pre-built flows handle standard business processes
|   +-- NO (custom application)
|       |-- Use Celigo Flow Builder with universal HTTP connector
|       +-- Build custom export/import/mapping flows
|-- What's the data volume?
|   |-- < 1,000 records/day --> Standard RESTlet (default concurrency)
|   |-- 1,000-100,000 records/day --> Increase batch + concurrency; consider SuiteCloud Plus
|   +-- > 100,000 records/day --> SuiteCloud Plus required; 40+ concurrent connections
|-- Which Celigo edition?
|   |-- 1-3 apps --> Standard (~$600/mo)
|   |-- 4-5 apps --> Professional (~$1,500/mo)
|   |-- 6-10 apps --> Premium (~$3,000/mo)
|   +-- 10+ apps --> Enterprise (custom pricing)

Quick Reference

Pre-Built NetSuite Integration Apps (80+ Available)

CategoryApplicationsKey FlowsTypical Use Case
eCommerceShopify, Shopify Markets, BigCommerce, WooCommerce, Magento 2Orders, inventory, fulfillment, returnsOmnichannel retail order-to-cash
MarketplaceAmazon, Amazon MCF, eBay, WalmartListings, orders, FBA fulfillmentMulti-marketplace sellers
CRMSalesforce, HubSpot, Zoho CRMContacts, opportunities, invoicesLead-to-cash automation
MarketingAct-On, Marketo, MailchimpLeads, campaigns, engagementMarketing attribution
FinanceStripe, PayPal, Bill.com, AvalaraPayments, reconciliation, taxFinancial close automation
HRADP, Workday HCM, BambooHREmployee records, payrollHR-to-finance sync
3PL/LogisticsShipStation, ShipBob, FBAShipments, tracking, inventoryFulfillment automation
EDISPS Commerce, TrueCommercePOs, ASNs, invoicesB2B trading partner automation
BankingVarious bank feedsTransactions, reconciliationAuto-reconciliation
ProcurementCoupa, SAP AribaPOs, invoices, approvalsProcure-to-pay automation

Celigo Edition Comparison

FeatureStandardProfessionalPremiumEnterprise
Endpoints3510Unlimited
Flows16100UnlimitedUnlimited
Integration apps24919
Trading partners--51015
SandboxNoYesYesYes
SSONoNoYesYes
API managementLimitedYesYesYes
Support tierStandardPreferredPremierPremier
Approx. cost/mo$600+$1,500+$3,000+Custom

Step-by-Step Integration Guide

1. Install Celigo SuiteApp bundle in NetSuite

The integrator.io SuiteApp (bundle ID 20038) deploys custom RESTlets that Celigo uses to communicate with NetSuite. [src4]

1. In NetSuite: Customization > SuiteBundled > Search & Install Bundles
2. Search for "Celigo" or bundle ID "20038"
3. Select "Celigo integrator.io" (SuiteScript 2.0 version)
4. Click Install, accept permissions
5. Verify: Setup > Integration > Manage Integrations shows "Celigo integrator.io"

Verify: Setup > Integration > Manage Integrations --> "Celigo integrator.io" listed with Status = Enabled.

2. Create NetSuite connection in Celigo

Set up token-based authentication between Celigo and your NetSuite account. [src4]

1. In Celigo: Settings > Connections > New Connection > NetSuite
2. Select "Token Based Auth (Automatic)"
3. Enter NetSuite Account ID
4. Click "Connect to NetSuite" -- authorize access
5. Test connection

Verify: Click "Test Connection" --> green checkmark with "Connection successful".

3. Install or build integration flows

Either install a pre-built SmartConnector or create custom flows. [src1]

Pre-built: Marketplace > search app > Install > configure connections > map fields
Custom: New Integration > New Flow > Export (source) > Import (target) > mappings > schedule

Verify: Run test flow with small batch --> records appear in target with no errors.

4. Configure concurrency and error handling

Tune connection concurrency to respect NetSuite governance. [src3]

1. Connections > NetSuite connection > Advanced
2. Set RESTlet Concurrency Level (max: account limit)
3. Enable "Auto-recover rate limit errors"
4. Verify: sum of ALL concurrency <= NetSuite account limit

Verify: Setup > Integration > Web Services Preferences --> ACCOUNT CONCURRENCY LIMIT >= sum of all concurrency settings.

Code Examples

JavaScript/Node.js: Query Celigo Platform API for flow status

// Input:  Celigo API bearer token, integration ID
// Output: List of flows with status and last run info

const fetch = require('node-fetch'); // v3.3.2
const CELIGO_API_TOKEN = process.env.CELIGO_API_TOKEN;

async function getFlowStatus(integrationId) {
  const resp = await fetch(
    `https://api.integrator.io/v1/integrations/${integrationId}/flows`,
    { headers: { 'Authorization': `Bearer ${CELIGO_API_TOKEN}` } }
  );
  if (resp.status === 429) {
    const retryAfter = parseInt(resp.headers.get('retry-after') || '5');
    await new Promise(r => setTimeout(r, retryAfter * 1000));
    return getFlowStatus(integrationId);
  }
  return resp.json();
}

cURL: Test Celigo API and list integrations

# List all integrations
curl -s -H "Authorization: Bearer $CELIGO_API_TOKEN" \
  https://api.integrator.io/v1/integrations | jq '.[].name'

# Check connection status
curl -s -H "Authorization: Bearer $CELIGO_API_TOKEN" \
  https://api.integrator.io/v1/connections | jq '.[] | {name, offline}'

Data Mapping

Field Mapping Reference (Shopify-NetSuite Example)

Source Field (Shopify)Target Field (NetSuite)TypeTransformGotcha
order.idsalesOrder.externalIdStringPrefix "SHOP-"Must be unique across all external IDs
order.emailcustomer.emailStringLowercaseMust match existing customer or create new
order.total_pricesalesOrder.totalCurrencyNone (USD)Multi-currency requires exchange rate
order.line_items[].skusalesOrder.item[].itemLookupSKU to internal IDItem must exist in NetSuite
order.shipping_addresssalesOrder.shippingAddressObjectMap fields individuallyNS has line1/line2/city/state/zip format
order.financial_statussalesOrder.statusEnumMap to NS codes"paid" = Pending Fulfillment
order.created_atsalesOrder.tranDateDateTimeUTC to account TZNS dates use account timezone

Data Type Gotchas

Error Handling & Failure Points

Common Error Codes

CodeMeaningCauseResolution
SSS_REQUEST_LIMIT_EXCEEDEDConcurrency limit exceededToo many concurrent requestsReduce concurrency; add SuiteCloud Plus licenses
ss_out_of_pointsGovernance unit limit exceededBatch size too largeReduce batch size in import Advanced settings
SSS_INVALID_API_USAGEInvalid SuiteScript API callWrong API method in hooksFix hook code per SuiteScript 2.0 reference
INVALID_KEY_OR_REFRecord reference not foundLookup value doesn't matchFix source data or add create-if-missing logic
RCRD_HAS_BEEN_CHANGEDOptimistic locking conflictConcurrent record modificationEnable auto-retry; implement locking strategy
USER_ERRORCustom validation failedWorkflow/script rejected recordCheck NS script logs; adjust data

Failure Points in Production

Anti-Patterns

Wrong: Setting maximum concurrency on all connections

// BAD -- all connections set to max concurrency
// Connection 1: concurrency = 5, Connection 2: concurrency = 5, Connection 3: concurrency = 5
// Total: 15 -- exceeds account limit of 5!
// Result: SSS_REQUEST_LIMIT_EXCEEDED across ALL integrations

Correct: Budget concurrency across all connections

// GOOD -- concurrency budget allocation within account limit
// Connection 1 (Shopify): 2, Connection 2 (Salesforce): 2, Connection 3 (Amazon): 1
// Total: 5 = account limit. Enable auto-recover on all.

Wrong: Using a single large batch size for all imports

// BAD -- 5,000 records/batch, each ~50 governance units
// 5,000 x 50 = 250,000 units >> 5,000 limit = ss_out_of_points

Correct: Tune batch size based on record complexity

// GOOD -- calibrate to governance budget
// Simple records (customer updates): batch = 100 (~50 units x 100 = 5,000)
// Complex records (sales orders): batch = 25 (~200 units x 25 = 5,000)

Wrong: Sharing saved searches with business users

// BAD -- using "Monthly Revenue Report" for Celigo export
// Finance team modifies columns = Celigo export breaks or returns wrong data

Correct: Dedicated integration saved searches

// GOOD -- "[Celigo] Order Export" with restricted edit permissions
// Description: "DO NOT MODIFY -- used by Celigo Shopify integration"

Common Pitfalls

Diagnostic Commands

# List all Celigo integrations
curl -s -H "Authorization: Bearer $CELIGO_API_TOKEN" \
  https://api.integrator.io/v1/integrations | jq '.[] | {name, _id, mode}'

# Check for offline connections
curl -s -H "Authorization: Bearer $CELIGO_API_TOKEN" \
  https://api.integrator.io/v1/connections | jq '.[] | select(.offline==true) | {name, type}'

# Check error counts for integration
curl -s -H "Authorization: Bearer $CELIGO_API_TOKEN" \
  "https://api.integrator.io/v1/integrations/{id}/errors?pageSize=100" | jq '. | length'

# In NetSuite: check concurrency limit
# Setup > Integration > Web Services Preferences > ACCOUNT CONCURRENCY LIMIT

Version History & Compatibility

Platform VersionRelease DateStatusBreaking ChangesMigration Notes
2026.1.12026-02CurrentAI error mgmt enhancementsRecommended upgrade
2025.4.x2025-10SupportedAPI Builder improvements--
2025.2.x2025-04SupportedSuiteApp bundle updateUpdate bundle after NS upgrade
2024.4.x2024-10EOL--Upgrade to 2025.x+

When to Use / When Not to Use

Use WhenDon't Use WhenUse Instead
Mid-market NetSuite with Shopify/Amazon/Salesforce needsEnterprise with 50+ complex integrations needing API-led connectivityMuleSoft Anypoint Platform
Pre-built SmartConnector app exists for your use caseNeed real-time sub-second event streaming from NetSuiteDirect SuiteTalk REST API
Operations team (non-devs) must manage integrationsOnly 1-2 endpoints with simple CSV needsNetSuite native CSV import
Need EDI + ERP flows in one platformNeed on-premise or hybrid cloud/on-prem connectivityBoomi or MuleSoft
Want AI-powered error management + auto-retryRequire custom SuiteScript logic inside NetSuiteCustom SuiteScript development

Cross-System Comparison

CapabilityCeligoBoomiWorkatoMuleSoft
NetSuite depth#1 partner, 80+ appsStandard connectorGood connector, recipesStandard connector
Pricing modelEndpoint + flow (flat)Connection + runtimeRecipe/task-basedvCore-based
Entry price~$600/mo~$2,000/mo~$1,500/mo~$3,000/mo
Pre-built NS apps80+ SmartConnectors~10 templates~50 recipes~20 templates
Target userOperations / analystsIT / architectsIT + businessDevelopers / API arch.
Learning curveLowMedium-highMediumHigh
On-prem supportNo (cloud only)Yes (Atom)Yes (agent)Yes (Mule runtime)
EDI capabilityBuilt-inVia partnerLimitedB2B/EDI module
Error managementAI auto-resolveManual + alertsRecipe-levelCustom exception
API managementBuilt-in (Pro+)Separate productBuilt-inCore strength
Best forNS-centric mid-marketEnterprise hybridCross-functionalAPI-first enterprise

Important Caveats

Related Units