Services
Custom software developmentUmbraco developmentWeb developmentCRM developmentERP developmentAI & LLM integration.NET development & modernizationE-commerce developmentIntegrations & automationCloud & DevOpsMaintenance, support & project rescueDedicated teams & white-label
Our Work
Case studiesProducts
About Blog Contact
Integrations

NetSuite Integration (2026): APIs, Connectors, iPaaS and What a Custom Build Costs

NetSuite integrates through REST or SOAP web services, RESTlets, SuiteScript, CSV import, marketplace connectors and iPaaS. We compare them by fit, limits and price, list where syncs break and show what a custom integration costs.

Key takeaways

  • Start with a connector or iPaaS template if one covers your records; build custom when your process, volume or data model falls outside it.
  • Build new integrations on SuiteTalk REST web services or RESTlets with OAuth 2.0. Oracle plans to remove SOAP web services and end token-based authentication support in NetSuite 2028.2.
  • All web services and RESTlet calls share one account concurrency limit, set by service tier plus 10 per SuiteCloud Plus license. Design for queues and retries from day one.
  • Decide which system owns each record and field before you map anything. Most sync bugs are ownership bugs.
  • A typical custom integration between NetSuite and one other system takes about 390 to 780 hours, or roughly $14k to $63k at Eastern European rates.

NetSuite integration means connecting NetSuite to your store, CRM, payment, warehouse or EDI systems through one of four routes: Oracle’s own connectors, a SuiteApp from the marketplace, an iPaaS such as Celigo, Boomi or Workato, or custom code on SuiteTalk REST web services and RESTlets. Choose the cheapest route that covers your records, volume and business rules, and build custom only for the flows that fall outside it.

We are integration engineers. We build two-way syncs between business systems and the ERPs behind them, so this guide follows how an engineer scopes a NetSuite integration: which API to use, what the limits are, where syncs break and what a build costs. Prices are list prices as of November 2026, taken from vendors’ own pages. Where a vendor publishes no price, we say “quote-based”.

What syncs, and in which direction

Most NetSuite integrations move the same handful of records. Orders and new customers flow into NetSuite. Items, prices, stock levels, fulfillments and invoice status flow out. Money flows such as refunds, payouts and fees are the hardest part, because they have to land in the ledger exactly.

Before you pick a tool, write this map for your own business: each record, its direction, how often it moves and which system owns it. That one page decides more about cost than the choice between a connector and custom code.

The integration methods NetSuite offers

NetSuite exposes several technical entry points. Connectors and iPaaS products use the same ones under the hood, so it helps to know what they are.

SuiteTalk REST web services. The current standard API. It covers standard and custom records, supports SuiteQL queries over a REST endpoint and authenticates with OAuth 2.0. For most new integrations this is the default choice.

SuiteTalk SOAP web services. The older API, still behind many existing connectors. Oracle’s SOAP removal FAQ says that from 2027.2 only the latest SOAP endpoint is supported and that with NetSuite 2028.2 all endpoints are disabled. Do not start new work on SOAP, and ask any vendor you evaluate whether their connector still depends on it.

RESTlets. SuiteScript endpoints you write and deploy inside NetSuite. Use them when one external call should do several things at once, such as create a sales order, apply custom pricing logic and return the result, or when the REST API does not expose a record the way you need.

SuiteScript, including user event scripts. Server-side JavaScript that runs inside NetSuite. A user event script can fire when a record is created or edited and push a change out, which gives you near real-time outbound events. Scheduled and map/reduce scripts handle batch work.

Saved searches and SuiteQL. The usual way to read data in bulk: “all items changed since the last run” or “all invoices paid today”. SuiteQL is SQL-like and works well for incremental reads.

CSV import. The built-in Import Assistant. Fine for one-off migrations and low-volume periodic loads, but it is not an integration: there are no retries, no ID mapping and no alerts unless a person checks.

Authentication. Oracle’s documentation says that from NetSuite 2027.1 no new integrations can use token-based authentication (TBA) for SOAP, REST web services or RESTlets, and that support for existing TBA integrations ends in 2028.2, a date it marks as tentative. Use OAuth 2.0 for everything new, with the client credentials flow for server-to-server jobs. Oracle also notes that third-party connectors relying on TBA may need a configuration change or update.

Governance. NetSuite limits concurrency per account. Oracle’s governance tables list a base of 5 concurrent requests for the Standard tier, 15 for Premium and 20 for Enterprise and Ultimate, plus 10 for each SuiteCloud Plus license. Web services and RESTlet requests share that pool, so your Shopify connector, your CRM sync and your 3PL feed all compete for the same slots. SuiteScript adds usage-unit limits per execution: 1,000 units for a user event script, 5,000 for a RESTlet and 10,000 for a scheduled script.

Your options

Option Best for What it covers Pricing as published Limits
Oracle NetSuite Connector (formerly FarApp) Storefronts and marketplaces such as Shopify Orders, items, prices, inventory, fulfillments; extras by plan Shopify listing from $199.92/month; other channels quote-based Fixed data model; unusual flows need workarounds
SuiteApp marketplace apps One specific system with a ready-made app Whatever that app’s vendor built Varies, often quote-based Quality and support vary by vendor
Celigo (integration apps and platform) Several standard flows, an admin who owns them Prebuilt NetSuite apps for Shopify, Salesforce and others Quote-based; 30-day trial Annual contract; complex logic still needs scripting
Boomi Teams that want a general integration platform Connectors, mapping, scheduling Pay-As-You-Go $99/month plus usage; editions quote-based Per-message usage cost at high volume
Workato Business-led automation across many apps Recipes and connectors, NetSuite included Quote-based Usage-based billing; deep NetSuite logic gets complex
Custom (REST web services, RESTlets, SuiteScript) Unusual rules, high volume, flows no product covers Exactly what you specify Development hours (see below) You own maintenance and monitoring

Boomi’s help center lists Pay-As-You-Go usage at $0.05 per message on top of the $99 base. Celigo and Workato publish plans without prices and ask buyers to contact sales.

The practical rule: if a connector covers 80% of your flows and your team can live with its data model, buy it and add a small custom piece for the rest. If the core flow itself is unusual, for example orders that must be split across subsidiaries, configured products or custom revenue rules, a connector will cost you more in workarounds than a build. For storefront-specific comparisons see our guides to Shopify NetSuite integration and NetSuite ecommerce integration; for CRM, see HubSpot NetSuite integration.

Where these integrations break

1. Nobody decided who owns the record. If a customer’s address can be edited in both the store and NetSuite, a two-way sync will overwrite one with the other. Fix: name a system of record per field, not per object. Addresses might belong to the store, credit terms to NetSuite.

2. Duplicate customers and items. Matching on email or name creates duplicates the first time someone types a different spelling. Fix: store external IDs on both sides (NetSuite has an external ID field for this) and keep a cross-reference table in the integration.

3. Concurrency errors at peak. A busy sale day plus a nightly batch can exceed the account limit, and NetSuite rejects the extra requests. Fix: put a queue in front of NetSuite, throttle to fewer requests than your limit, and retry with backoff.

4. Silent partial failures. An order fails on a missing tax code or an inactive item, and nobody notices for a week. Fix: an error queue that a person can see, with the reason and a resend button, plus alerts when the queue grows.

5. Totals that do not match. Discounts, shipping, rounding and tax calculated differently in each system leave a few cents or dollars of difference per order. Fix: decide which system calculates tax, push the source totals as-is, and post differences to a defined adjustment line.

6. Money flows left for later. Orders sync, but refunds, chargebacks and payouts are entered by hand. Finance then reconciles deposits manually every week. Fix: scope refunds and payouts from the start. Our Stripe NetSuite integration guide covers payouts and fees in detail.

7. No reconciliation. Even a good sync drifts. Fix: a daily report that compares counts and totals for orders, invoices and payments on both sides, and flags differences before month-end close.

These are the same principles we describe in our guide to two-way QuickBooks sync design. The ERP changes; the failure points do not.

What a custom integration costs

Pick the flows you need between NetSuite and one other system; hours include design, QA and project management, and the typical scope is preselected.

The preselected scope, covering customers, items and inventory, orders, fulfillments and invoice status with retries, alerts and reconciliation, comes to about 390 to 780 hours. 2026 outsourcing rate surveys put Eastern Europe at about $35 to $80 per hour and North America at $80 to $180 or more; at Eastern European rates that scope is about $14,000 to $63,000, and at US onshore rates of $80 to $160 it is about $31,000 to $125,000. Refunds, custom SuiteScript and historical backfill add to it.

Two costs sit outside these hours. First, subscriptions: if you combine custom code with a connector or iPaaS, its license is separate. Second, upkeep: APIs change, and the TBA and SOAP deadlines above are a good example of work that arrives on Oracle’s schedule. For broader budgeting see ERP implementation cost and custom software development cost.

How to run the project

  1. Map records and owners. List every record and field, the direction, frequency and system of record. Export a sample of real orders, including the ugly ones.
  2. Pick the method per flow. A connector for standard order and inventory sync, custom code for the one flow with special rules is a common and sensible split.
  3. Set up access properly. Create an integration record with OAuth 2.0 and a dedicated role with only the permissions the integration needs. Check your concurrency limit on the Integration Governance page.
  4. Build in a sandbox with real data. Test edge cases first: partial refunds, split shipments, multi-currency orders, inactive items.
  5. Run in parallel. Let the integration run beside the current process for a period and compare totals daily.
  6. Cut over and monitor. Turn on alerts, assign an owner for the error queue and keep the reconciliation report running.

If NetSuite also exchanges data with warehouses or trading partners, plan those as separate flows with their own owners. Our guides to NetSuite 3PL integration and NetSuite EDI integration cover them. If you are still choosing an ERP, compare options in best ERP for ecommerce and best ERP for wholesale distribution.

We have not published a NetSuite case. The patterns in this guide come from two-way syncs we built for QuickBooks, Amazon and other systems.

For a manufacturing and shipping business, we build and support One Motion ERP, whose two-way QuickBooks sync handles invoice sync, vendor mapping, tax logic, duplicates and automatic remapping of item IDs, running as background jobs. Those are the record ownership, ID mapping and reconciliation problems from the list above. Our custom ERP system for an inventory and order-driven business syncs purchase orders and vendor data with QuickBooks through its API and keeps each customer’s QuickBooks ID on the customer profile.

On the order side, the Aspect platform pulls orders from 7 Amazon marketplaces through SP-API, with order and stock sync every 15 minutes. For ProdUp, we made bulk WooCommerce imports run as parallel tasks with retries and stored results, plus a dashboard for duplicate SKUs. And the SaaS ETL platform we built schedules recurring transfers, logs each run and counts failed records separately, the same monitoring an ERP integration needs.

Where OSKI fits

OSKI is a .NET and React engineering company with a team mostly in Ukraine. We build integrations and ERP systems, and we are comfortable working next to a connector rather than replacing it. Send your record map or the estimator selection, and an engineer will reply with a written estimate and the assumptions behind it.

OSKI Engineering TeamSenior .NET, Umbraco and AI engineers

Written by the engineers who build and support OSKI client projects, reviewed by our CTO before publishing.

FAQ

Questions readers ask

Anything missing? Send us your question and an engineer will answer, usually within one business day.

Contact us
What is the best way to integrate with NetSuite?+

For new work, use SuiteTalk REST web services with OAuth 2.0 for standard records and queries, and add a RESTlet when you need custom server-side logic in one call. If a prebuilt connector or iPaaS template already covers your records and process, start there. Avoid starting new SOAP integrations, because Oracle plans to remove SOAP web services in NetSuite 2028.2.

Does NetSuite have a REST API?+

Yes. SuiteTalk REST web services expose standard and custom records over REST, support SuiteQL queries, and authenticate with OAuth 2.0 or, for existing integrations, token-based authentication. RESTlets are a second REST option: SuiteScript endpoints you write and deploy inside NetSuite.

Is NetSuite token-based authentication going away?+

Oracle's documentation says that from NetSuite 2027.1 you can no longer create new integrations that use token-based authentication for SOAP, REST web services and RESTlets, and that support for existing TBA integrations ends in 2028.2 (marked tentative). OAuth 2.0 is the recommended replacement, with the client credentials flow for server-to-server integrations.

What are NetSuite API limits?+

NetSuite limits concurrent requests per account rather than daily calls. Oracle's governance tables list a base of 5 concurrent requests for the Standard tier, 15 for Premium and 20 for Enterprise and Ultimate, plus 10 per SuiteCloud Plus license, shared by web services and RESTlets. SuiteScript also has usage-unit limits per execution, for example 1,000 units for user event scripts and 5,000 for RESTlets.

How much does a NetSuite integration cost?+

A connector or iPaaS subscription ranges from published self-service prices, such as Boomi Pay-As-You-Go at $99 per month plus usage, to quote-based annual contracts. A custom integration between NetSuite and one system typically takes 390 to 780 hours including design, QA and project management, which is about $14,000 to $63,000 at Eastern European rates and $31,000 to $125,000 at US onshore rates.

Should I use Celigo, Boomi or a custom integration?+

Use an iPaaS when you have several standard flows, an admin who will own them, and a budget for an annual subscription. Use custom code when one or two flows carry unusual business rules, when volume makes per-message pricing expensive, or when you already run your own services and monitoring. Many teams combine both.

Start a project

Tell us what you need to ship. We come back with a plan and a price.

A spec, a Figma file or three paragraphs is enough to start.

  1. First reply · from an engineer, not a sales rep
  2. 30-min call · with Roman, our CTO, to clarify scope
  3. After the call · a written proposal with plan, team and price
Roman Oleksuk
Roman Oleksuk, CTOPrefer to talk? Pick a slot in Roman's calendar
We reply from a human mailbox. No newsletters. Your brief stays under NDA on request. We use your details only to reply; see our privacy policy.