Marty Zigman Marty Zigman
Prolecto Labs Accelerator Templates

Accelerate your NetSuite REST Development with Pre-Defined Business Templates

Infrastructure NetSuite Technical



This article is relevant if you are looking to rapidly take control of your NetSuite REST-based integration project.

Background

The NetSuite platform offers the opportunity to integrate using REST technologies. In contrast to NetSuite’s SOAP-based Web Services tier which exposes the business objects as addressable parts that can be consumed by your software client application once you consume NetSuite’s public WSDL to discover the elements, the REST technology is simply basic infrastructure that demands server-based software development to connect.

I have written a few articles in the past about NetSuite REST services:

  1. NetSuite Restlet Sample Program Exploits New Power
  2. Learn How To Solve NetSuite RESTLet Role Change Authentication Challenges
  3. Download a Java Application to Connect to NetSuite OAuth TBA Restlet Endpoints

Because my firm, Prolecto Resources, is an expert in NetSuite integration, we are often asked to connect remote systems to NetSuite. The most common request from clients is to bridge an eCommerce system, such as Magento or Shopify, to NetSuite so that items, customers, orders, and other information can be seamlessly connected.

In 2016, we helped a client who was using a middleware technology (as an example, Celigo IO, Dell Boomi, Jitterbit, or Workato) to integrate orders to their third party (3PL) warehouse. They were not satisfied with the way the tools constrained their options. When they decided to embark on the development of a new eCommerce platform, they committed to building their own internal competency to have full control over their situation. Thus, they asked our firm to assist so they could gain fine grain control over the way their integration would work and at the same time, they could avoid the ongoing recurring costs inherent in most middleware offerings once the integration was up.

Consequently, leveraging our knowledge of the NetSuite business system and NetSuite’s REST technology, we designed a software pattern that allowed for extensible use of REST services against any NetSuite business object.

The NetSuite Uni-Directional Based REST Business Pattern

Because there is a common pattern to work with business data, and our client possessed the ambition to “get it done right”, we set out to produce a REST capacity that helps the development effort become more productive. Here are the key capacities:

  1. NetSuite is Slave: we developed the application so that the software client (the master) needs to drive NetSuite (the slave) to get it to perform what we need. NetSuite would not call out to the client system. In this model, we are not doing a bi-directional sync. Instead, being uni-directional (from the web client to NetSuite), the developers of the integration would need to call our REST services to retrieve and update data as needed.
  2. Parameterized Paged Queries: When working with data integration in a scalable manner, it is best to query for data and specify paging parameters so that you limit the scope of the information returned from the request. Thus, NetSuite saved search provides a great mechanism to retrieve data and the SuiteScript 2.0 framework makes it easy to specify paging parameters. Parameter definitions are used to allow you to specify criteria that help you key into specific information. Saved search results can be serialized and thus they are easy to pass back via REST as JSON objects.
  3. Single Business Object CRUD Model: A standard way to (C)reate, (R)ead, (U)pdate, and (D)elete is needed to work with business objects. NetSuite internalids serve to work very well to identify specific objects and thus make it easy to create cross-references as it is recommended to hold IDs in the remote system as you interact with the object. NetSuite’s business objects have a natural shape and are easily serialized to pass as JSON objects in a CRUD operation.
  4. REST Application Request / Response Log: beyond what NetSuite offers, all REST requests and related responses are captured in a custom application log that helps the developer build the application and diagnose issues once in production.
  5. MVC Pattern: the REST application framework uses the (M)odel, (V)iew, (C)ontroller pattern to help abstract away complex operations and thus make the software easier to maintain.
  6. Open License Model: Like all things we do in our firm, we don’t charge a license fee for our intellectual property. We work with our clients so they can learn the pattern so that they can stand on our shoulders to produce their desired outcomes. Naturally, we help our clients with any consideration that may come forth as they come up to speed on the pattern.

Pre-Defined NetSuite REST Templates

Once we solved our first client’s concerns with the framework, we leveraged it for other clients; naturally, as more clients make requests, the software becomes more functional and thus useful. Here are some key integration elements to existing business objects that may be used to jump-start a development effort:

  • Customers
  • Customer Addresses
  • Customer Authentication
  • Customer Credit Cards (secure in NetSuite’s wallet)
  • Item Updates
  • Item Price Lookup
  • Inventory Status
  • Order
  • Order Status(es)
  • Item Fulfillment Status
  • Customer Deposits

Video (14:14) Demonstration of REST Integration

During a recent client request, the internal development team sought to use the framework so they could develop their own integration to NetSuite to support both eCommerce and Warehouse Management System connections. I asked Boris (Borko) M., our lead developer, to help explain the concepts of connecting to the REST API using the Postman tool, and how to work the basics of the API. See video (14:14) below or click the link here

 

Get the NetSuite REST Templates to Accelerate your SuiteScript Development

As a NetSuite Systems Integration Practice, our goal is to help our clients get the most from their NetSuite investment. Since NetSuite is designed to be extended to make it fit specific applications, learning how to work the platform is the key to getting more from the investment. We help our clients use all of our algorithms without license charge so they too can get benefit from the 10+ years we have worked with NetSuite. With the REST templates, we can help you accelerate the process to learn the patterns so you can become self-sufficient as you grow your competency.

If you found this article valuable, sign up for email notifications here. If you have a specific application that would benefit from NetSuite REST efforts, let’s have a conversation.

Marty Zigman

Holding all three official certifications, Marty is regarded as the top NetSuite expert and leads a team of senior professionals at Prolecto Resources, Inc. He is a former Deloitte & Touche CPA and has held CTO roles. For over 30 years, Marty has produced leadership in ERP, CRM and eCommerce business systems. Contact Marty to set up a conversation.

More Posts - Website - Twitter - Facebook - LinkedIn - YouTube

About Marty Zigman

Marty Zigman

Holding all three official certifications, Marty is regarded as the top NetSuite expert and leads a team of senior professionals at Prolecto Resources, Inc. He is a former Deloitte & Touche CPA and has held CTO roles. For over 30 years, Marty has produced leadership in ERP, CRM and eCommerce business systems. Contact Marty to set up a conversation.

Biography • Website • X (Twitter) • Facebook • LinkedIn • YouTube

Leave a Reply

Your email address will not be published. Required fields are marked *