πΒ Β Β Portable does more than just ELT. Explore Our AI Orchestration CapabilitiesΒ

The NetSuite2.com data source is Oracle NetSuite's modern, unified analytics data model β and as of NetSuite 2026.1, it is the only analytics data source available through SuiteAnalytics Connect. If your automated pipelines load data into Snowflake, BigQuery, Redshift, Databricks, Power BI, or Tableau, understanding how the NetSuite2.com data source works is essential to connect NetSuite environments to your modern data stack.
This comprehensive guide covers what the NetSuite2.com data source is, how its schema handles various record types (standard and custom record types), how to write an advanced query with SuiteQL, how to secure data pipelines using Token-Based Authentication and OAuth 2.0, and the engineering challenges data teams face when managing an enterprise integration.
The NetSuite2.com data source is the centralized backend powering all external analytics, workflow automation, and business intelligence access across the SuiteCloud platform. It was specifically engineered to resolve a long-standing enterprise pain point: the discrepancy between what a business user saw in a NetSuite Saved Search UI or a workbook and what a data engineer extracted via an external ODBC driver.
Today, NetSuite2.com drives:
Unlike the legacy schema, NetSuite2.com is built on the exact same analytics framework used throughout the core NetSuite platform β meaning consistent metadata, unified record definitions, and predictable behavior whether you're inside the UI, building an integration workflow, or querying externally.
For years, the legacy NetSuite.com schema was the default for NetSuite data extraction and ETL/ELT pipelines. Because it relied on a completely separate, older reporting layer with a custom Connect SQL syntax, it required extensive manual mapping and frequently produced data discrepancies that plagued data engineering teams trying to connect NetSuite to downstream systems.
Oracle gradually shifted platform development away from it, officially retiring the legacy NetSuite.com data source in the NetSuite 2026.1 release. All NetSuite environments now default entirely to NetSuite2.com β migration is no longer optional, and legacy endpoints will return connection errors.
The biggest architectural shift in NetSuite2.com is its alignment with the NetSuite Records Catalog. Instead of working with abstract, connect-specific data wrappers, developers interact with a backend model that truly reflects NetSuite's internal record relationships and distinct record types.
Standardized Record Definitions: Table names and fields are standardized to match the modern NetSuite platform architecture rather than legacy abstractions.
Explicit Relationship Modeling: Key business entities and record types β such as transaction, transactionline, customer, item, and subsidiary β are linked via explicit foreign key relationships, making multi-table joins far more predictable.
Account-Specific Metadata: There is no single, universal NetSuite2.com schema map. Available tables, datasets, and fields dynamically adjust based on your account's enabled SuiteCloud features (e.g., OneWorld, Advanced Revenue Management, Multi-Book Accounting) and user permissions.
Pro Tip: Always use the built-in Records Catalog inside your specific NetSuite instance as your source of truth. It dynamically maps every table, field, join path, and required user permission tailored directly to your specific ERP environment.
The NetSuite2.com data source uses SuiteQL as its primary query language. SuiteQL is NetSuite's analytics query language, built on the SQL-92 standard with NetSuite-specific extensions β meaning data engineers will find standard SQL structures familiar β but the optimization strategy is unique to the ERP schema, especially when crafting an advanced query.
SELECT
t.id,
t.tranid,
tl.amount,
t.lastmodifieddate AS timestamp
FROM transaction t
JOIN transactionline tl ON tl.transaction = t.id
WHERE t.trandate >= DATE '2026-01-01'
When building data sync automation, filtering on indexed fields is far more critical for pipeline performance than complex syntax tweaking. Always filter on transaction.id or other indexed columns when running high-volume SQL queries or executing an advanced query against tables like transactionline to prevent analytical queries from timing out.
Pro Tip: Mapping
lastmodifieddateto an external timestamp field is standard best practice for managing incremental, state-based data replication β also called change data capture (CDC). This lets your pipeline fetch only rows modified since the last sync, dramatically reducing query volume on large tables.
When establishing a connection to the NetSuite2.com data source via SuiteAnalytics Connect or REST APIs, data security is a primary consideration. NetSuite blocks standard username/password credentials for modern analytics endpoints. Instead, data pipelines must authenticate using token-based methods: Token-Based Authentication (TBA) or OAuth 2.0.
While both frameworks rely on tokens rather than exposing passwords, Oracle positions OAuth 2.0 as the preferred standard for new production integrations across the SuiteCloud ecosystem.
TBA relies on a token ID and secret paired directly with a targeted user and integration record. NetSuite-generated token IDs and secrets are long, randomly generated strings β treat them with the same care as passwords.
To successfully run a TBA data pipeline, you must supply five values:
| Credential | Description |
|---|---|
| Account ID | Your unique NetSuite environment identifier. |
| Consumer Key | Generated by creating an Integration Record in NetSuite. |
| Consumer Secret | The matching secret for your Integration Record. |
| Token ID | Generated when mapping your integration user/role to that application. |
| Token Secret | The matching signature key for that specific user token. |
OAuth 2.0 moves away from permanent static tokens, instead leveraging dynamically refreshed session access tokens that expire after 60 minutes by default.
NetSuite supports two primary OAuth 2.0 grant types for the NetSuite2.com data source:
Client Credentials (Machine-to-Machine) Flow: The most common choice for automated data pipelines. This flow bypasses user interaction entirely. Your code or integration provider signs a unique JSON Web Token (JWT) using a private certificate key, uploads the public key to NetSuite, and requests an automated access token from the NetSuite token endpoint.
Authorization Code Grant Flow: Used when an external application needs to act on behalf of a specific user. This prompts a login screen and explicit user consent inside the browser, generating a code that is exchanged for short-term access and refresh tokens.
Modern ODBC and JDBC drivers for NetSuite2.com have explicit connection string parameters to handle both formats:
OAuth2Token attribute or a custom connection string pointing directly to your local certificate wallet or a freshly fetched bearer token.Depending on your modern data stack, there are three primary approaches to pulling data from the NetSuite2.com data source:
SuiteAnalytics Connect (ODBC/JDBC): Ideal for traditional BI tools or self-managed pipelines. Requires managing your own ODBC driver installation, authentication credentials, and schema drift handling.
SuiteQL REST API: Best for lightweight, application-level integrations or microservices that need real-time data lookups without maintaining a full warehouse framework.
Managed ELT Platforms: Most data-driven teams use cloud replication tools β like Portable, Fivetran, or Stitch β to automatically handle schema discovery, absorb schema drift, and sync the NetSuite2.com data source directly into cloud warehouses like Snowflake, Databricks, or BigQuery. A dedicated NetSuite connector abstracts the low-level authentication and ODBC driver management, providing a significantly cleaner setup experience for analytics teams.
While NetSuite2.com is vastly superior to the legacy data source, data teams regularly encounter these friction points. Here's how to address each one systematically.
NetSuite2.com strictly enforces permissions. If the integration role running your pipeline lacks permission for a specific module, the corresponding tables and record types will completely disappear from the schema metadata β with no error, just absence. Ensure your integration service account uses a role with explicit, broad SuiteAnalytics Connect permissions, and validate against the Records Catalog after any role change.
Massive, unindexed extractions on tables like transactionline can trigger performance caps and connection timeouts. Always apply strict filters based on an indexed field like transaction.id, and avoid deeply nested multi-table joins in custom workflows.
When a NetSuite administrator adds a custom field in the UI, it is dynamically appended to the NetSuite2.com data source schema. If you are not using a managed connector that natively absorbs drift, you must build error-handling logic to capture schema changes without breaking downstream datasets or dbt models.
Because underlying feature updates or role changes can cause tables or fields to disappear silently, data pipelines should include explicit alerting. Configure webhooks or email notifications to instantly ping your engineering team the moment an authentication token expires or a query throws an access violation error.
| Feature | Legacy NetSuite.com | Modern NetSuite2.com | Impact on Data Teams |
|---|---|---|---|
| Status | Retired (2026.1) | Active & Maintained | Migration to NetSuite2.com is mandatory. |
| Query Language | Custom Connect SQL (limited) | SuiteQL (SQL-92 based) | Easier onboarding for standard SQL engineers. |
| Platform Alignment | Fragmented | Unified Architecture | Extracted data matches UI Saved Searches and Workbook datasets precisely. |
| Schema Discovery | Static / Inconsistent | Native Records Catalog | Dynamic schema mapping directly in the UI. |
| Security Model | Legacy Permissions | Strict RBAC + OAuth 2.0 | Finer control, but requires precise integration role setup. |
Is NetSuite.com still available? No. The legacy NetSuite.com data source was officially retired in the NetSuite 2026.1 release. All NetSuite accounts now use the NetSuite2.com data source exclusively. Connections to legacy endpoints will return errors β migration is not optional.
What query language does NetSuite2.com use?
NetSuite2.com uses SuiteQL, NetSuite's analytics query language built on the SQL-92 standard. Standard SQL syntax β SELECT, JOIN, WHERE, and aggregations β works as expected, though high-performance query design requires understanding the NetSuite ERP schema, particularly around indexed fields and large tables like transactionline.
How do I discover the NetSuite2.com schema for my account? Because NetSuite is highly customizable, the available tables, fields, and record types vary significantly by account. Use the built-in Records Catalog inside your NetSuite instance to explore available tables, fields, and join paths specific to your environment and permissions. There is no single universal schema reference that applies to all accounts.
Why are tables missing from my NetSuite2.com connection? Missing tables are almost always a permissions issue. The RBAC model in NetSuite2.com hides tables the integration role doesn't have explicit access to β they don't appear as restricted, they simply don't appear at all. Review the SuiteAnalytics Connect permissions on the role assigned to your pipeline's service account, then cross-reference against the Records Catalog to confirm which tables your role should have access to.
Can I use NetSuite2.com with Snowflake or BigQuery? Yes. NetSuite2.com is the standard data source for replicating NetSuite data into cloud warehouses. Most ELT platforms connect via SuiteAnalytics Connect and handle schema discovery, incremental syncs, and custom field changes automatically.
The NetSuite2.com data source is no longer just the modern way to access NetSuite data β it is the only way. By unifying the underlying data layer across SuiteQL, Workbooks, and external connections, Oracle has given data engineers a far more reliable, predictable ecosystem for building modern data pipelines.
If you're setting up a NetSuite2.com data source pipeline into Snowflake, BigQuery, or Redshift, Portable handles schema discovery, custom field changes, pipeline notifications, and incremental syncs automatically β without the manual mapping the legacy connector required.
Get in touch to see how Portable connects the NetSuite2.com data source to your warehouse in minutes.