# NetSuite SuiteTalk SOAP to REST Migration Checklist

> Source: https://netray.co/tools/netsuite-suitetalk-to-rest-migration-checklist
> Publisher: Netray (netray.co), AI and integration engineering for ERP and manufacturing systems.
> Section: Free Tools

## Short answer

A step-by-step checklist for replacing SOAP calls with REST record and SuiteQL calls, from inventory to cutover and rollback.

## Category

netsuite

## Erp

NetSuite

## Audience

- Integration developer
- NetSuite developer
- Technical architect

## Tool

**Kind:** checklist

**Groups:**

#### 1. Inventory

**Items:**

**Text:** List every integration that calls SuiteTalk SOAP, including scripts, middleware and vendor connectors

**Critical:** true

**Text:** Record the SOAP operations each one uses (get, search, add, update, upsert, delete)

**Critical:** true

Record the record types and custom fields touched per operation

Note call volume, schedule and peak times for each integration

Identify which integrations are vendor-owned and need the vendor to migrate

**Text:** Check Oracle release notes for the current SOAP support timeline

**Critical:** true

#### 2. Capability mapping

**Items:**

**Text:** Confirm each record type is available in the REST API Browser

**Critical:** true

Map SOAP search calls to REST filters or SuiteQL queries

Map saved search usage to SuiteQL or a RESTlet where REST cannot reproduce it

Map upsert calls to external ID addressing (eid:) or PUT

Check that custom record and custom field names resolve in the REST metadata catalog

List sublist handling needs and decide on expandSubResources or sublist calls

**Text:** Identify operations with no REST equivalent and plan a RESTlet

**Critical:** true

#### 3. Authentication and roles

**Items:**

**Text:** Choose OAuth 2.0 or token-based authentication for REST

**Critical:** true

**Text:** Enable the REST Web Services feature and confirm role permission

**Critical:** true

Create or adjust an integration role with the least privilege needed

Create separate integration records for sandbox and production

Store secrets in a vault, not in code or config files

#### 4. Build and behavior

**Items:**

Use the account-specific host with the correct sandbox suffix

Implement limit and offset paging with a stable sort

Use the fields parameter to cut payload size

**Text:** Handle HTTP errors, 429 concurrency responses and retry with backoff

**Critical:** true

**Text:** Add idempotency using external IDs so retries do not duplicate records

**Critical:** true

Parse the REST error body and log the full response for failed calls

Check date, currency and list value formats against SOAP behavior

Respect the account concurrency limit shared with other integrations

#### 5. Testing and cutover

**Items:**

**Text:** Run old and new integrations in parallel in sandbox and compare results

**Critical:** true

Test with production-sized data and peak load

Test failure cases: invalid data, missing permission, locked record

Agree a cutover window and freeze changes during it

**Text:** Keep the SOAP path available for rollback until the new path is verified

**Critical:** true

Monitor errors and throughput for the first weeks after cutover

Retire SOAP integration users and tokens after rollback is no longer needed

Update runbooks and documentation

**Scoring Note:** Treat every critical item as a gate. Do not cut over while a critical item is open. Verify details against current Oracle documentation, since REST coverage and support timelines change between releases.

## Content

**Intro:** Many NetSuite integrations still use SuiteTalk SOAP. Moving to REST is mostly a mapping and testing exercise, but gaps in record coverage and search behavior can surprise teams. This checklist gives you the order of work.

**Sections:**

#### How to use the checklist

**Body:** Work through the five groups in order and mark items as you finish them. Critical items are the ones that cause outages or data problems if skipped, such as missing a vendor-owned integration or cutting over without a rollback path. Export the completed list as evidence for change management, and attach it to the release ticket.

#### What changes between SOAP and REST

**Body:** SOAP uses typed XML requests against one endpoint, while REST uses JSON, resource URLs and HTTP verbs. Searches become filters or SuiteQL queries, paging is done with limit and offset, and upserts rely on external ID addressing. Not every record type or operation is exposed in REST, so coverage must be checked per integration against the REST API Browser and metadata catalog before any rewrite begins.

**Bullets:**

- XML to JSON payloads
- Search calls to REST filters or SuiteQL
- Typed operations to HTTP verbs
- Gaps filled with RESTlets where needed

#### Risk areas

**Body:** The biggest risks are searches that depend on saved search features, sublist-heavy transactions whose payloads change shape, concurrency throttling when many calls run in parallel and implicit behavior, such as default values or sourcing, that differs between APIs. Compare outputs record by record in sandbox and sample production data before cutover rather than trusting a few happy-path calls.

#### Common mistakes

**Body:** Teams underestimate vendor connectors, skip the inventory and discover forgotten scripts later, migrate without idempotency and create duplicates on retry, and cut over without a way back. Allow time for parallel running, and assign an owner for each integration so nothing is orphaned.

**Cta:** Netray builds custom NetSuite integrations and can review your migration plan, with read-only checks and human approval on any write-back.

**Faq:**

#### Is SuiteTalk SOAP being retired?

**Answer:** Oracle has published a deprecation and support timeline for SOAP web services in its release notes. Check the current notes for your account, since dates and details can change, and plan the migration before the final support date.

#### Does REST cover everything SOAP does?

**Answer:** Not entirely. Some record types and operations are not available in REST, and saved search behavior differs. Check each integration against the REST API Browser and use SuiteQL or a RESTlet to fill gaps.

#### How should I handle retries safely?

**Answer:** Address records by external ID so a repeated call updates rather than creates, and back off on 429 or transient errors. Log request and response bodies for failed calls so you can reconcile.

#### Should I migrate everything at once?

**Answer:** Usually no. Migrate integration by integration, starting with low-risk ones, run old and new in parallel and keep the SOAP path for rollback until each is verified.

## Search terms

netsuite soap to rest migration, suitetalk soap deprecation, netsuite rest web services migration, suitetalk to rest checklist, netsuite soap web services replacement, netsuite integration modernization

---
Talk to an engineer: https://netray.co/contact?intent=erp_ai | Machine catalog: https://netray.co/agent/catalog.json
