NetSuite Integration Methods Compared

NetSuite Integration Methods Compared

The Need for Integration

Enterprises are typically comprised of hundreds if not thousands of applications that are custom-built, acquired from a third-party, part of a legacy system, or a combination thereof; operating in multiple tiers of different operating system platforms. It is not uncommon to find an enterprise that has 30 different websites, three separate ERP instances and countless departmental solutions.

You may be wondering how any business could allow themselves to get into such a mess? To be honest, it’s not really their fault. Writing business applications is pretty hard and creating a single, big application to run a complete business is next to impossible. Although ERP vendors have had some success at creating larger-than-ever business applications, the reality is that even heavyweight ERPs like SAP, Oracle, NetSuite and Dynamics AX can only perform a fraction of the business functions required in a typical enterprise. This is evident from the fact that ERP systems are one of the most popular integration points in enterprises.

The second biggest reason why businesses utilize multiple applications and platforms is because spreading theor business functions across multiple applications provides them with the flexibility to select the “best” accounting package, the “best” customer relationship management or the order processing system that suits their needs. One-stop-shopping for enterprise applications is usually not what IT organizations are interested in, nor is it possible, given the number of individual requirements each business funtion or unit might have.

NetSuite Integration Methods

NetSuite provides three options for integration with external worlds, namely:

Suitetalk The SuiteTalk platform provides programmatic access to NetSuite data and business processes through an XML-based application programming interface (API).

Suitelets Suitelets are basically extensions of the SuiteScript API that allow you to build custom NetSuite pages and backend logic. Suitelets are server-side scripts that operate in a request-response model and are invoked by HTTP GET or POST requests to system generated URLs

Restlets Restlets are server side scripts that interact with NetSuite data following RESTful principles. RESTlets extend the SuiteScript API, enabling you to create custom integrations with NetSuite

Netsuite Integration Methods

Netsuite Integration Methods

 

Restlets Compared to Suitetalk

The following table compares the characteristics of RESTlets with those of SuiteTalk’s SOAP-based web services.

Attribute RESTlets SuiteTalk
Supported Operations get, search, add, update (heterogeneous) get, search, add, update (homogenous)
Authentication Supported? Yes Yes
Supported HTTP Methods GET, PUT, POST, DELETE POST
Passing of Login Details in authorization header in body (SOAP)
Passing of Parameters GET parameters on URL all parameters in body (SOAP)
Supported Content Types JSON, text/xml (explicit) text/xml (explicit)
Environment lightweight, more suitable for mobile devices, bundleable heavy programming and deployment environment (C#, Java)
URL Clarity? Yes

https://rest.netsuite.com/app/site/hosting/restlet.nl?script=57&deploy=1&
recordtype=salesorder&id=21480

(For clients hosted by NetSuite, you should use the relative URL that does not include the domain.)

Nohttps://webservices.​netsuite.​com/​services/​NetSuitePort_​2011_​1

Restlets Compared to Suitelets

The following table compares the characteristics of RESTlets with those of Suitelets.

Attribute RESTlets Suitelets
Supported Operations get, search, add, update get, search, add, update
Authentication Supported? Yes No , when available without login and executed as admin programmaticallyYes, when accessed from a browser by a logged-in NetSuite user
Script Functions and HTTP Methods individual script function for each HTTP method one script function for all HTTP method
Content Handling built-in handling of JSON input/output must write code to convert JSON input/output
Governance 5,000 usage units per script 1,000 usage units per script
URL Clarity? Yes
https://rest.​netsuite.​com/​app/​site/​hosting/​restlet.​nl?​script=​57&​deploy=​1&recordtype=salesorder&id=21480 (For clients hosted by NetSuite, you should use the relative URL that does not include the domain.)
No
https://forms/​netsuite.​com/​app/​site/​hosting/​scriptlet.​nl?​script=​62&​deploy=​1&​compid=​824056&​h=​ec041b59b3075bec783d

NetSuite Integration Methods – Conclusion

Deciding on which integration option to choose for NetSuite is based on various factors i.e security, scalability, the operations you need to perform, the size of the data that needs to be transported from external systems to NetSuite and vice versa. You should consider all these aspects when deciding on the integration approach to take, for integration third party applications or systems with NetSuite.

About The Author:

The author is a NetSuite Technical Consultant at Folio3. Folio3 is a NetSuite partner that provides end to end development services for Netsuite, from SuiteCommerce Advanced implementation, to ERP customization and implementation, Netsuite integration connectors and NetSuite mobility solutions. For more information, please visit Folio3 Netsuite Services

References:

1- http://www.enterpriseintegrationpatterns.com/patterns/messaging/Chapter1.html
2- Netsuite Suite Answer Portal

If you have a NetSuite Integration requirement you would like to discuss, or would like to know more about our NetSuite Integration services, please get in touch with us

It's only fair to share...Tweet about this on TwitterShare on LinkedInShare on Google+Share on Facebook

Shoaib Mehmood

Leave a Reply

Your email address will not be published.