SFTP-NetSuite Integration
At the time of this project, my client was downloading a weekly list of resigned employees from their SFTP server, so they can manually revoke their NetSuite access. The process was becoming time consuming and required automation.
Solution:
Build an integration platform between the SFTP server and the NetSuite system that would detect the file and transfer it to NetSuite automatically. Then create a SuiteScript inside of NetSuite which would detect the weekly list, and automatically revoke the access of each employee.
High level details:
• Development: I built this integration platform on the SuiteTalk framework, which executed over the following main steps: Authenticate into the SFTP Server, download the weekly list, then authenticate into NetSuite and upload onto the file cabinet. A scheduled script was executing every 15 minutes to detect the newly uploaded files to revoke any terminated employees.
• Capturing error logs: This application needed to capture error logs for easier diagnosis of integration issues in the future. I ensured error handling mechanisms were in place to accommodate this requirement.
• Configuration file: The integration needed to allow users the ability to change values within the application like: authentication details, host names, port numbers, & folder pathways.
• Development: I built this integration platform on the SuiteTalk framework, which executed over the following main steps: Authenticate into the SFTP Server, download the weekly list, then authenticate into NetSuite and upload onto the file cabinet. A scheduled script was executing every 15 minutes to detect the newly uploaded files to revoke any terminated employees.
• Capturing error logs: This application needed to capture error logs for easier diagnosis of integration issues in the future. I ensured error handling mechanisms were in place to accommodate this requirement.
• Configuration file: The integration needed to allow users the ability to change values within the application like: authentication details, host names, port numbers, & folder pathways.
Reflection
I did this project a number of years ago and back then, the SuiteScript 2.0 framework did not include any interfacing with SFTP servers. If it had, the first option would have been to remove the need for the server and contact the SFTP server directly from NetSuite. Even then, users should also consider potential compatibility limitations with the encryption setup on their SFTP server and what NetSuite's API can work with.