NetSuite Integration

Horizon connects to Oracle NetSuite through SuiteAnalytics Connect, SuiteTalk REST and saved searches, respecting subsidiaries and locations.
NetSuite's architecture is unusual among ERPs — a single database with multi-subsidiary, multi-location consolidation built in. Integration that respects this model is faster and more reliable than integration that treats NetSuite like a traditional ERP. Horizon's NetSuite connector reflects that.

What makes NetSuite integration different

Most ERPs are built around discrete entities — plants, warehouses, divisions — each with its own data. NetSuite is built differently: a single multi-tenant database with subsidiary, location, and class dimensions on every transaction. This makes NetSuite integration simpler in some ways (one connection point, one data model) and more nuanced in others (the subsidiary structure has to be respected from the start).

Horizon's NetSuite connector reads NetSuite's data model in its native form rather than forcing it into a traditional ERP schema.

NetSuite versions and editions supported

  • NetSuite OneWorld — primary deployment pattern for multi-subsidiary manufacturers. Horizon respects subsidiary boundaries by default and supports cross-subsidiary planning where the customer's business model allows it.
  • NetSuite ERP standard edition — single-subsidiary deployments. Integration is simpler since the subsidiary dimension is fixed.
  • NetSuite Manufacturing module — for customers running NetSuite's Advanced Manufacturing or WIP/Routings module. Horizon pulls BOMs, work orders, and routings from these.
  • NetSuite Demand Planning module — Horizon can coexist with NetSuite's own demand planning module or replace it, depending on the customer's preference. Many teams replace it, because NetSuite Demand Planning is light on statistical methods.

Three NetSuite integration methods Horizon uses

1. SuiteAnalytics Connect (primary for bulk data)

NetSuite's JDBC interface — typically called SuiteAnalytics Connect or NetSuite2.com — provides direct database access for analytics tools. Horizon uses this for bulk historical data and master data:

  • Item master with subsidiary, location, and class assignments
  • Inventory balances by item-location with consolidated and detailed views
  • Sales transactions (18-24 months) with full dimensionality (subsidiary, customer, location, class)
  • Purchase orders with vendor and item dimensions
  • Work orders and BOMs from the manufacturing module

SuiteAnalytics Connect requires the customer's NetSuite license to include it (typically a small additional cost per user) and a service user with the appropriate role.

2. SuiteTalk REST (for transactional write-back)

For writing planned purchase orders, planned work orders, and updated item planning attributes back to NetSuite, the REST web services interface is used. Standard NetSuite OAuth 2.0 or token-based authentication.

3. Saved searches (for customer-specific aggregations)

NetSuite customers often have custom saved searches their planning team already uses. Horizon can consume these as data sources, which means the connector respects customer-specific aggregation logic without rebuilding it.

NetSuite-specific data objects Horizon reads

  • Item record with custitem fields (NetSuite's custom field naming), preferred stock level, reorder point, lead time
  • Item-location records — the per-location overrides on item attributes that NetSuite supports
  • Inventory transactions from the transaction table with item, location, subsidiary, and date dimensions
  • Sales orders, fulfillments, and item shipments for demand history
  • Purchase orders and item receipts for supply confirmation
  • Bill of materials and routings from the manufacturing module (for customers using it)
  • Subsidiary, location, and class hierarchies — these define the planning structure

What Horizon writes back to NetSuite

  • Planned purchase orders — written as standard PO records with vendor, item, quantity, and expected receipt date
  • Planned work orders — for manufacturing customers, written as work order records with assembly item, quantity, and start/end dates
  • Item planning parameter updates — reorder point, preferred stock level, safety stock, written back to item-location records
  • Demand plan — for customers using NetSuite Demand Planning, the forecast can write back as demand plan items; for customers not using that module, the forecast lives in Horizon and feeds the rest of NetSuite indirectly through the parameter updates above

Alternative integration path

Where preferred, NetSuite saved searches can also be scheduled to produce flat-file extracts delivered to Horizon via SFTP. This is occasionally used in regulated environments or by customers with strict API consumption limits on their NetSuite license.

Authentication patterns

  • SuiteAnalytics Connect: Service user with the SuiteAnalytics Connect role, token-based authentication. The customer's NetSuite administrator provisions the user during integration setup.
  • SuiteTalk REST: OAuth 2.0 with an integration record. Token credentials issued to Horizon's service account.
  • Saved search access: Same service user as SuiteAnalytics Connect, with role permissions to the relevant searches.

Common NetSuite-specific integration considerations

  • Subsidiary structure — Multi-subsidiary deployments require explicit decisions about which subsidiaries plan together and which are independent. Horizon supports both patterns, but the choice has to be made at integration time, not deferred.
  • Customizations and custom fields — NetSuite customers tend to have significant customization. The Horizon connector captures the specific custom fields each customer uses for planning, including custitem and custrecord fields where relevant.
  • Locations with consolidated inventory — Some NetSuite deployments use the "consolidated" inventory view; others operate per-location. The integration handles both, but the choice affects how safety stock policies are interpreted.
  • Class and department dimensions — Customers using class for product line and department for plant (a common NetSuite pattern) need this mapping explicit, since Horizon's default model treats them as planning dimensions.
  • SuiteCommerce and channel data — For customers running e-commerce on SuiteCommerce, Horizon can pull channel-level demand data alongside wholesale orders. Different demand patterns per channel require different planning treatment.

What the integration takes

NetSuite's single-database, well-exposed data model keeps the integration straightforward. With Horizon Instant, demand planning on your own data is up and running in less than 24 hours. The full integration, including write-back, is planned with your IT team; the timing depends on scope and data readiness. The bottleneck is rarely the integration; it's master data quality and planning process design.