skillfed

netsuitesdk

Python SDK for accessing the NetSuite SOAP webservice

netsuitesdk v3.3.0 738.1K downloads/30d#5,186 on PyPI104
Permissive license MIT Active released

What it is and what it does

Netsuitesdk is a Python wrapper around NetSuite's SOAP-based SuiteTalk web service that abstracts away the complexity of direct SOAP calls. It uses zeep as its underlying SOAP client and supports token-based authentication (TBA), which is the recommended approach for programmatic access to NetSuite. The SDK provides object-oriented access to NetSuite resources—accounts, vendors, employees, departments, currencies, subsidiaries, and various financial records—through methods like get_all(), get_all_generator(), get(), and post().

The package is designed for developers integrating NetSuite data into Python applications, ETL pipelines, or reporting systems. It handles authentication, request construction, and response parsing, allowing you to work with NetSuite records as Python objects rather than raw XML. The SDK supports both bulk retrieval (via generators for large datasets) and individual record operations, as well as upsert operations for specific record types like vendor bills, expense reports, and journal entries.

Use it for:

  • Extract NetSuite financial records (accounts, vendor bills, journal entries) into a local database or data warehouse for reporting and analysis.
  • Automate vendor payment processing by querying vendor data and posting vendor payments programmatically.
  • Sync employee, department, and subsidiary master data from NetSuite into HR or organizational systems.
  • Upload receipts and supporting documents to NetSuite by creating folders and posting files via the SDK.
  • Build ETL workflows that pull large volumes of NetSuite records using generator methods to avoid memory overload.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

A Python SDK that wraps NetSuite's SOAP web service (SuiteTalk) using the zeep library, providing token-based authentication and simplified access to NetSuite resources like accounts, vendors, employees, and financial records.

Yes. The SDK is actively maintained (recent release, current commits), has no security vulnerabilities, uses a permissive MIT license, and installs with minimal friction. It is the standard way to access NetSuite programmatically from Python if you have token-based authentication credentials. Install it if you need to integrate NetSuite data into a Python application or automate NetSuite operations.

Install

netsuitesdk on PyPI

pip

pip install netsuitesdk

uv

uv add netsuitesdk

poetry

poetry add netsuitesdk

Installing netsuitesdk

Before you install

Low friction installation with a single runtime dependency (zeep). Active maintenance: last release 24 days ago, last commit 2026-07-23, 104 repository stars, and no known security vulnerabilities.

License in practice

MIT license (permissive) places no restrictions on use, modification, or distribution in proprietary or open-source projects.

Quickstart

pip install netsuitesdk

import os
from netsuitesdk import NetSuiteConnection

ns_conn = NetSuiteConnection(
    account=os.getenv('NS_ACCOUNT'),
    consumer_key=os.getenv('NS_CONSUMER_KEY'),
    consumer_secret=os.getenv('NS_CONSUMER_SECRET'),
    token_key=os.getenv('NS_TOKEN_KEY'),
    token_secret=os.getenv('NS_TOKEN_SECRET')
)
currencies = ns_conn.currencies.get_all()

Requires five NetSuite token-based authentication (TBA) environment variables: NS_ACCOUNT, NS_CONSUMER_KEY, NS_CONSUMER_SECRET, NS_TOKEN_KEY, NS_TOKEN_SECRET. Password-based authentication is not supported by this SDK.

Verify before relying

  • Whether the SDK supports all NetSuite record types or only a subset (documentation mentions specific types like vendor_bills, expense_reports, journal_entries, vendor_payments for POST operations)
  • Compatibility with specific NetSuite account configurations or feature modules
  • Performance characteristics when iterating over large datasets using generator methods

Package facts

License MIT (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies 1 — zeep
Maintenance actively maintained — 24 days since the last release
Last repo commit
First released
Downloads 738,067/month — #5,186 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: netsuitesdk-3.3.0-py3-none-any.whl

Keywords: netsuite, api, python, sdk

Intended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: Python :: 3Topic :: Internet :: WWW/HTTP

Tags

netsuite python sdknetsuite soap api clientnetsuite integration pythonnetsuite token authnetsuite erp accessnetsuite webservice wrappernetsuite data retrieval
erp-integrationsoap-cliententerprise-api

More WWW/HTTP packages