How does NetSuite data integration work, field by field?
A NetSuite integration is a list of decisions about single fields. Here's what that list looks like for the most common flow, a won CRM opportunity becoming a NetSuite sales order.
Sample field map: CRM opportunity to NetSuite salesorder. NetSuite field IDs are from Oracle's records browser; your custom fields get added in design.
| CRM field |
NetSuite field (ID) |
Owner |
Direction |
Rule |
| Account |
Customer (entity) |
NetSuite once billed |
CRM to NetSuite, then back |
Match on stored internal ID; create only if no match |
| Selling entity |
Subsidiary (subsidiary) |
NetSuite |
NetSuite to CRM |
Set from the account's subsidiary, never typed by reps |
| Close date |
Date (trandate) |
CRM |
CRM to NetSuite |
Written once at order creation |
| Currency |
Currency (currency) |
NetSuite |
NetSuite to CRM |
Must match the subsidiary's allowed currencies |
| Customer PO number |
PO # (otherrefnum) |
CRM |
CRM to NetSuite |
Required before the order is created |
| Ship-to address |
Ship To (shipaddress) |
NetSuite |
CRM to NetSuite on create only |
Later changes made in NetSuite win |
| Fulfillment site |
Location (location) |
NetSuite |
NetSuite to CRM |
Chosen from stock by location |
| Product line |
Item (item), Quantity (quantity) |
NetSuite |
CRM to NetSuite |
SKU must exist in NetSuite; unknown SKUs stop the order and alert |
| Sales price |
Unit Price (rate) |
NetSuite |
NetSuite to CRM |
Price levels flow to the CRM before quoting |
| Order number |
Order # (tranid) |
NetSuite |
NetSuite to CRM |
Stored on the opportunity for every later update |
| Order stage |
Status (orderstatus) |
NetSuite |
NetSuite to CRM |
Mapped to a CRM picklist value |
One design call matters more than the rest: who wins when both sides change the same field. Our default is that NetSuite wins any field that appears on an invoice, because the invoice is what the customer pays against. The CRM change isn't lost. It's logged and sent to the account owner to confirm, so a rep's update to a ship-to address never silently overrides finance.
What breaks in a NetSuite integration, and how do you prevent it?
Four problems account for most of the broken NetSuite syncs we're brought in to fix. None of them shows up in a demo, because demo accounts have one subsidiary, clean items, and no other integrations competing for requests.
- A role that can't see every subsidiary. The integration role was set up for one subsidiary, so orders for the others never appear and nobody gets an error. We test with a role that mirrors production on day one.
- Request slots shared with everything else. NetSuite gives the whole account one concurrency limit across web services and RESTlets. A heavy nightly job from another vendor can starve your order flow. We size our share and schedule bulk loads around the others.
- Items that exist only on one side. Kits, matrix items, and storefront bundles rarely line up with NetSuite items. Operations signs off on the item map before any order flows.
- The same buyer created three times. A web shopper, a CRM account, and a NetSuite customer all for one company. We agree a match key, usually email domain or customer number, and merge before go-live.
Which NetSuite flows need real-time sync?
Concurrency is a shared budget, so spend it where minutes matter and batch the rest. A flow that runs every minute but only changes a few records an hour is wasting slots another integration may need.
| Flow |
Timing |
Reason |
| Storefront orders |
Within minutes |
Warehouse picks start from them |
| Won opportunity to order |
Within minutes |
Customers expect a confirmation the same day |
| Available stock |
Every few minutes |
Prevents overselling during busy hours |
| Payouts and deposits |
Daily |
Processors pay out once a day |
| Warehouse loads |
Nightly |
Forecasts and margin reports use closed days |
What changes the cost of a NetSuite integration?
We price after discovery because two requests with the same name can differ tenfold in effort.
| Factor |
Lighter |
Heavier |
| Account structure |
One subsidiary, one currency |
Several subsidiaries and currencies |
| Items |
Simple inventory items |
Matrix items, kits, assemblies |
| Channels |
One CRM or one store |
CRM plus several stores and processors |
| History |
Open orders only |
Years of closed transactions |
| Customization |
Standard records |
Custom records and approval workflows |
What should a NetSuite team prepare before kickoff?
Five answers shorten discovery by a week or more.
- Which system owns customers, items, prices, and orders.
- Your subsidiaries, currencies, and custom records in use.
- Every integration already calling your NetSuite account.
- The flow that costs you the most hours each month.
- One owner in finance or operations and one in IT.