Integrate Snowflake with NetSuite Using SuiteScript
With the growth of a company, requirements of data management becomes more important topic. Medium to large enterprises cover this requirement with the help of a data platform. Centralized location together with current technology provides faster processing, wider access and better reporting opportunities. It can be also used to backup important business data, or to exchange information between other platforms. Snowflake is one of the many Data Cloud platforms available on the Market.
For businesses using Fulfillment by Amazon service, information available on an Amazon order is not for EU Tax Reporting. For example, it is not known from which country the goods are sent. Therefore, GL postings in an ERP system would be inaccurate and needs to be corrected. This can only be achieved by processing Amazon Sales Tax Report but it is only generated bi-weekly for the orders that are already fulfilled. Data in an ERP system can be accurate after Amazon Sales Tax Report is made available.
On a recent project, requirement was to import Amazon Sales Tax Report into NetSuite and re-process the related sales transactions to correct the financial data for Tax Reporting. While there are different ways to achieve the final result, agreed solution consisted of importing the report from Amazon to Snowflake and from Snowflake to NetSuite. 1st part was handled by IT department and I was involved with importing the data into NetSuite and as well correcting the sales transaction details.
Both NetSuite and Snowflake have integration endpoints available but there is no direct connector available by default. It is required to either to use a 3rd party software for the integration, or SuiteScript can be used for a direct integration between both platforms. While solution using a SuiteScript requires development and possible future maintenance, it can be hosted in NetSuite without any additional costs. For processing of a big data set, it might be better to use a solution not hosted in NetSuite but it would be a decision to be make after requirement analysis.
To consume Snowflake REST and SQL API, key pair authentication is available that is also supported in SuiteScript. Snowflake Administrators should read Authenticating Snowflake REST APIs with Snowflake page to generate a public-private key pair and assign the public key to a Snowflake user. After following the steps for setting up the Snowflake environment, NetSuite Administrator will need to upload the generated key pair (Digital Certificate) in NetSuite to make it available for consuming in SuiteScript. Please read the Digital Signing topic in NetSuite Help Center for more information.
After all the steps are completed, developers can now utilize SuiteScript to create a connection from NetSuite to Snowflake. Through the built connection, SQL queries can be sent for running in Snowflake and results of a query can as well be processed in NetSuite. Users can access an example SuiteScript code by visiting our GitHub page.
If you have a similar requirement or want to build a different process between NetSuite and Snowflake, please reach through the Contact Us page.