Adrenalin-Netsuite Employee Integration Proposal

Proposal Summary

Neutrinos would like to integrate Netsuite Employees Record with employee data in  Adrenalin

Requirement

Neutrinos needs to integrate the Master Data Employees from Adrenalin to Netsuite. Also would like to migrate existing employee records from Adrenalin to NetSuite.

Our Solution

Employee Integration from Adrenalin to Netsuite

Prerequisites

We will provide the consumer key, consumer secret, token ID, token secret, and adrenalin needs to generate an Authentication header to request to netsuite.

Description of Task

The requirement can be achieved by creating a RESTlet.

Creation of Employees

  1. We will provide the API to get the data from adrenalin.
  2. Using a unique token ID, token key, consumer key, consumer secret, adrenalin needs to generate an Authentication header.
  3. Using this, adrenalin can send request to netsuite
  4. The Employee data should be added as a request body in the given model.
  5. Real Time integration is considered here. That is, when a new employee record is created, a request should be sent to netsuite by Adrenalin and the same will be created in netsuite by the script.
  6. As it is a real time integration, only single record data is considered within a single request.
  7. Enter the data as JSON format and send as body

{

“Employee id” : <Employee id>

“External id” : <Adrenalin employee internalid>

“Name”: <employee name>

“Inactive”:<true or false>

“Action-Type”:<Create or Update>

“Subsidiary”: <Netsuite  Subsidiary internal id>

“Country”: <country>

“Currency”: <currency>

“Job title” : <Job title>

“Email id” : <email id>

“Sales role” : <sales role>

“Hire date” : <Hire date>

“Department” : <Netsuite Department  internal id>

“Location” : <Netsuite Location internal id>

“Supervisor” : <Supervisor>

“Type” : <Type>

“Phone” : <Phone>

}

  1. Using the employee IDs, the script will create employee records in netsuite.

Editing Employees

  1. When edits and saves of an employee record occur in adrenalin, a request should be sent to netsuite by adrenalin.
  2. The same data format that is used for Employee create requests can be used for updating the employee records
  3. The script will search for the employee record with the emp iD and update that record

Deleting or Inactivate Employee records

  1. When an employee record is deleted or made inactive in adrenalin, a request needs to be sent to netsuite using the same format of data with “inactive” to true.
  2. So the script will inactivate the same record in netsuite using the employee ID.

Note

  • The given format of data should contain exactly the same text in netsuite or provide the netsuite internal ids of the data for the List fields . So thereby we can map to the exact data in netsuite.
  • We consider netsuite internal ids for subsidiary, department, location.
  • Currency should be exact text or netsuite internal id.
  • Considered the Emp ID for the Supervisor field
  • We will not delete the Employee in Netsuite, Instead we inactive it for both Delete and Deactivate scenarios

Risks

  • The proposed integration is real time and it’s only accept a single employee data in one request
  • Adrenalin needs to create Token per each request
  • On editing records, we cannot change the currency field once created. So we will not consider currency value while editing employee records.
  • Subsidiary fields cannot be changed if that particular employee record has related records. Otherwise we can change the subsidiary values.

Netsuite Employee Clean up : Update existing employee records in NetSuite

The requirement can be achieved by importing the Employee records from  Adrenalin to Netsuite.

  1. Export the employee data from Adrenalin.
  2. For each Employee ID need to provide the corresponding internal ID in netsuite. For updating a record in netsuite through import we need either external ID or Internal ID.
  3. Then we can convert the file to CSV format and update the employee records.
  4. For the records which are not in netsuite before integration, we can create that too in netsuite through import. In that case the file should contain at least the mandatory fields. They are Name, Subsidiary, Country and currency.

Risks 

  1. The currency in employee records can not be updated if once created.
  2. We have to turn off the auto generated number functionality for employee records. Otherwise we can not edit the employee ID in netsuite.
  3. For the employees that have related records, we can not change the subsidiary.
  4. There may be situations where we may not be able to update employee records the same as in Adrenalin. In that case we will need to inactive all the employees in netsuite and recreate them. That may cause updating related transactions. Then it will take additional effort depending upon the number of employee records. This is not considered in this scope

Leave a comment

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