netsuite
Ruby gem for the NetSuite SuiteTalk SOAP API (v2025.2) with async bulk operations. Maintained fork of NetSweet/netsuite.
Status
This gem targets SOAP 2025.2 — the final supported endpoint. SOAP is removed from NetSuite in 2028.2. This gem exists to bridge existing integrations through that timeline; it is not for new projects.
| Release | What happens |
|---|---|
| 2025.2 | Last planned SOAP endpoint |
| 2027.1 | Only 2025.2 supported |
| 2028.2 | SOAP removed entirely |
New integrations should use SuiteTalk REST Web Services with OAuth 2.0.
Install
RubyGems.org (recommended)
# Gemfile
gem "netsuite-soap"Or from the command line:
gem install netsuite-soapGitHub Packages
# Gemfile
source "https://rubygems.pkg.github.com/bdelanghe" do
gem "netsuite"
endOr from the command line:
gem install netsuite --source "https://rubygems.pkg.github.com/bdelanghe"Requires Ruby 3.4.
Quick start
require 'netsuite'
NetSuite.configure do
reset!
account ENV['NETSUITE_ACCOUNT']
api_version '2025_2'
consumer_key ENV['NETSUITE_CONSUMER_KEY']
consumer_secret ENV['NETSUITE_CONSUMER_SECRET']
token_id ENV['NETSUITE_TOKEN_ID']
token_secret ENV['NETSUITE_TOKEN_SECRET']
end
customer = NetSuite::Records::Customer.get(4)See docs/configuration.md for all options (WSDL, sandbox, multi-tenancy, logging).
Async bulk operations
For large operations, submit a job and poll for results rather than waiting on a single long-running request. See docs/async.md.
Documentation
- Configuration — WSDL, auth, sandbox, multi-tenancy
- Async bulk operations — submit/poll/fetch pattern, available operations
- Usage — CRUD, search, custom records, null fields, files
- Contributing — Testing, development setup
Credits
Based on NetSweet/netsuite. Thanks to the original contributors.