Integration Setup Guide: Formstack + NetSuite

This guide will show you how to set up the Formstack + NetSuite integration.  If you don't have an account yet, or if you'd simply like to learn more, check out our webpage about the Formstack + NetSuite Integration.

What To Expect

With the Formstack + NetSuite integration, you'll be able to link one or more Formstack forms to NetSuite, and the integration will create a new lead and/or contact (your choice) whenever one of the linked forms is submitted.

Additional considerations:

  • You will need to have administrative access to NetSuite in order to set up the integration successfully

  • These instructions cover integrating with NetSuite orgs where leads are treated as individuals by default

    • If your NetSuite org treats leads as Companies by default, complete steps 1-3 below, then reach out to support@bedrockdata.com for help setting up your integration

Step 1: Login to Formstack Sync

Go to: https://accounts.bedrockdata.com/ and login with the username and password you setup after you received your invite.  If you haven't received an invite yet, request access here.

Step 2: Install the Formstack connector

After you login to Formstack Sync, go to the Connectors page by clicking "Connectors" in the left-hand sidebar.  Then, select the "Formstack" connector in the dropdown, and click "Install".

In the dialog box that appears, click "Sign In to Formstack".  

If you aren't already logged into Formstack, you will now be asked to login.  Once you are logged in to Formstack, you'll see a screen asking you to give permissions to Formstack Sync.  Click "Authorize".

Next, you'll see as screen confirming that you have logged in to Formstack.  Click "Save".

 

Step 3: Install the NetSuite Connector

Step 3.1: Install Formstack Sync Bundle. 

Before connecting Formstack Sync to your NetSuite instance, please be sure to install the Formstack Sync SuiteScript Bundle to enable access.

Here is a video showing you how to go through the remaining steps. We recommend watching this as well as walking through the steps in this help article:

Step 3.2: Verify you have Access Tokens enabled

You will need this feature enabled for later steps in this process. To confirm this is enabled, click on Setup > User/Roles and if you see Access Tokens then you know it is enabled. If you do not see this option, you must enable it by going to Setup > Company > Enable Features and click on the SuiteCloud tab. Go to the Manage Authentication section and check the Token-Based Authentication box. 

 

Step 3.3: Choose a Role

You can use the Full Access role or create a custom user role in NetSuite for supporting the Token-Based Authentication.  Click here to view the required permissions for the custom role.

Step 3.4: Enable Two-Factor Authentication 

This is a very important step. Whether you are using the Full Access or Custom Role, they must have Two-Factor Authentication (2FA) enabled. To do this, go to Setup > User/Roles > Two-Factor Authentication Roles and in here mark the role as 2FA required. 

The Duration of the Trusted Device setting can be whatever you'd like as the integration is not impacted by this setting for 2FA. 

Step 3.5: Choose a User and Assign to Role

You can either use an existing user or create a new dedicated user for the integration. We recommend setting up a dedicated user for the Formstack Sync integration if this is a viable option per your licenses as this can help with performing any audits against changes made by the integration. 

Once you have selected the user that will be authenticating the integration, apply the Role from above (Full Access or Custom Role) to their user access settings. To do this, go to Setup > User/Roles > Manage Users. Locate the user and click on their name and then Edit their profile and click on the Access subtab. Add the Role here and Save the user record. 

Step 3.6: Gather Token-Based Authentication Info

With your Role and User selected, you are ready to start generating the Access Tokens needed for the Formstack Sync Connector Settings. 

There are a number of steps involved with this process that you can follow below. 

Step 3.6(a). Creating Integration for Formstack Sync

The next step is to create an Integration record in NetSuite and to generate the authentication information needed to allow Formstack Sync to connect to your NetSuite instance.

  1. In NetSuite, go to Setup > Integration > Integration Management > Manage Integrations > New

  2. Enter a Name for your application - for example "Formstack Sync TBA".

  3. Enter a Description, if desired - for example "Formstack Sync Token-Based Authentication".

  4. The application State is "Enabled" by default - leave it as such.

  5. Enter a Note, if desired.

  6. Check the Token-based Authentication box on the Authentication subtab.

  7. Click Save. The confirmation page displays the Consumer Key and Consumer Secret for this application - stay on this page and copy the Consumer Key and Consumer Secret values into a notepad or text app.


Warning: The only time the Consumer Key and Consumer Secret values will be displayed is on the confirmation page. After you leave this page, these values cannot be retrieved from the system. If you lose or forget these credentials, you will need to start again at step 2.1 to obtain new values. 

If you copy/paste these values, make sure you do not add any unnecessary characters in this process. We recommend using an application such as Sublime Text to store these values and don't use something like Microsoft Word where added characters can cause the tokens to become invalid. 

Step 3.6(b). Creating a Token ID and Token Secret

  1. In NetSuite navigate to Setup > Users/Roles > Access Tokens > New.

  2. On the Access Tokens page, click New Access Token.

  3. On the Access Token page:

    1. Select the Application Name - choose the Application Name you created in Step 2.2 above.

    2. Select the User you enabled with Full Access.

    3. Select the Role - "Full Access".

    4. The Token Name is already populated by default with a concatenation of Application Name, User, and Role. Enter your own name for this token, if desired.

    5. Click Save


Warning: The only time the Token ID and Token Secret values are displayed is on the confirmation page. After you leave this page, these values cannot be retrieved from the system. If you lose or forget these credentials, you will need to create a new token and obtain new values.

If you copy/paste these values, make sure you do not add any unnecessary characters in this process. We recommend using an application such as Sublime Text to store these values and don't use something like Microsoft Word where added characters can cause the tokens to become invalid. 

You've now successfully generated and copied down the NetSuite token values needed in Formstack Sync.

Step 3.7: Enter Credentials into Formstack Sync Connector Settings

With all of the information gathered in the above steps handy, go to the Formstack Sync Connectors tab and select NetSuite from the drop down and click Install. 

In the pop up window that appears, enter in the required information making sure to put the user credentials for the user that you selected in  Step 2. 

Sandbox checkbox: There is a checkbox for the Sandbox, however, in most cases you do not have to check this in order to connect Formstack Sync to your Sandbox instance of NetSuite as they have moved to a role-based configuration for their Sandbox instances. So in the next step you will want to select the right role if you want to point Formstack Sync to your Sandbox instance to start. 

Step 3.8: Select the User Role

Once you have all the information entered above, click on Next and you will see a drop down to select the appropriate Role. If you created a custom user role, make sure to select this role or if you did not, make sure to select the Full Access role.  

Step 3.8(a): Connecting to Sandbox 

For most Netsuite customers, connecting to your Sandbox is now based on Roles assigned to a user. The checkbox that you see on the Connector screen is no longer required to check. Instead, you must select the appropriate role from the drop down after you click on the Next button in step 5. 

Sometimes this can be tricky as the role names may be identical between Production and Sandbox (i.e. System Administrator). We recommend if you have the option to edit the role name for the Sandbox so that it includes something like "System Administrator (SB)" so you can easily differentiate the roles in this drop down. Another way to confirm if you are connected to your Sandbox is to select one of the roles you believe is the Sandbox role and then hit save. Then go to the following URL:  https://my.bedrockdata.com/v2/agents. In here you will find a "base-url" setting under the Netsuite section and if in this URL you see "sb1", then you know you are connected to your Sandbox. If not, then you will need to go back to the Connector settings and choose a different role. 

Step 3.9: Click Save

After you select the appropriate role, click on Save and wait for a green success message to appear signaling that you have successfully installed Netsuite! If, however, you receive an error and are not sure what the error is saying, reach out to our support team at support@bedrockdata.com and we can help diagnose what could be the issue. 

Step 4: Complete Form to Have Your Forms Enabled

To begin reading information from your forms we will need to enable read access to the forms you would like to sync submissions from. Please complete this form and we will reach out once we have completed the request. Advanced Integration Forms Request

Step 5: Configure Your First Form

Next, you will map fields between a Formstack form and NetSuite.  You'll pick a form to integrate with NetSuite, and you'll tell Formstack Sync which fields on the form correspond to fields in NetSuite.

Click on "Mappings" the left hand side bar.  Then, click "Add Mapping".

In the dialog that appears, select "Contact" from the dropdown list.  If you want, you can name the mapping (for example, you could name it according to the name of the Form you're planning to integrate, such as "Demo Form").  Click "Save".

Step 6: Configure Form Fields

Next, click "Add Field" to set up the first field you'll send to NetSuite.

This will bring up the field mapping dialog.  Here, you select a field from Formstack that you want to send to NetSuite, and the corresponding field in NetSuite where you want the data to appear.  Under "Connector", click the text that says "Click to Edit".

Next, open the dropdown that appears, and choose "formstack0".  

Then, under "Object", choose the form that you want to integrate with NetSuite.  Note that the name will be displayed a little bit differently within Formstack Sync.  For example, if the form were called "Demo Form", then the name in Formstack Sync would be "formdata_demoform".

Finally, select the a field that you want to send to NetSuite.

Now, repeat the above process for NetSuite:

  1. Click "Add Mapped Field"

  2. Click the dropdown that appears under "Connector", and choose "netsuite0"

  3. Choose the "lead" object under the "Object" dropdown

  4. If the "lead" object does not appear in this dropdown, then your NetSuite instance may treat leads as companies instead of contacts; please reach out to support@bedrockdata.com, and we will help you complete the setup

  5. Choose the field that you want to receive the data in NetSuite

Finally, enter a Label for this field, and then click "Save".

Repeat step 6 until you've set up all of the fields for the first form that you want to integrate with NetSuite.  When you're done, your mapping will look something like this:

NOTE: stick with one form for now -- you can add additional forms later, by going back to step 4 and starting a new mapping.  We recommend setting up one mapping per form that you want to integrate with NetSuite.

Step 7: Turn On Your Integration

Once you've set up at least one mapping, you're ready to turn on your integration!  Click "Dashboard" in the left-hand sidebar, then click the "On/Off" switch under "Integration Status".

In the dialog that appears, you have an option between "Sync Future Changes Only", and "Sync All Records".  Here's what this means:

  • Sync Future Changes Only: only future form submissions will be sent to NetSuite

  • Sync All Records: all of your existing form submissions will be sent to NetSuite, as well as any new submissions in future

Choose whether you want to sync existing form submissions, then click "Start".

Step 8: Wait for Initial Run to Complete

At this point, Formstack Sync will start to ingest your form submissions.  If you have a significant amount of submission data, this can take some time.  You can keep an eye on this from your Dashboard:

When you initially start the integration, you will see a gray rectangle that says "Scheduled".  You may also see a grey rectangle with a "Refresh" icon, which shows that the integration is currently running.  At this point, your integration is still ingesting your submission data from Formstack.

Once you see a green rectangle with a check mark in it that says "Up to Date", you'll know that the integration is ready to start processing new form submissions.  If you chose "Sync All Records" in Step 6 above, this will also indicate that the integration is finished sending your previous form submissions to NetSuite.

Step 9: Run a Test

As a final step, we recommend running a test to ensure that your integration works the way you expect.  Go ahead and submit the form you just hooked up to NetSuite.  After a few minutes, the information you submitted should show up as a new lead.

If it doesn't, it might be that your configuration in Formstack Sync isn't quite right.  The most common reasons leads might not show up in NetSuite are:

  • Required fields: make sure that all required fields on the NetSuite lead are also required on your Formstack form.  All of the required fields in NetSuite need to be supplied on the Formstack form in order for new leads/contacts to be created by the integration. Have a look at this article for more on required fields: https://support.bedrockdata.com/hc/en-us/articles/360023974471-Managing-Required-Fields-in-Your-Mappings

  • Mismatched field types: make sure that type of each field on the Formstack form matches the type of field in NetSuite, for fields that you've hooked up through the integration.  For example, if you try sending a checkbox field from Formstack to a date field in NetSuite, the integration won't be able to create new leads/contacts. Have a look at this article for more information on field types https://support.bedrockdata.com/hc/en-us/articles/360023974071-Understanding-Field-Types-in-Your-Mappings

  • Mismatched dropdown options: for dropdown fields, make sure that every option on the Formstack form is also present in NetSuite.  If you have any options coming from Formstack that aren't present in the dropdown in NetSuite, the integration won't be able to create new leads/contacts. It is also important to note that the options in the dropdowns residing in the respective must be a character for character match for the creation of a new lead/contact to be successful. 

If you are having trouble getting form submissions to send data into NetSuite, reach out to support@bedrockdata.com and we'll be happy to help you troubleshoot.  

Was this article helpful?
0 out of 0 found this helpful

Comments

0 comments

Article is closed for comments.