How nuvo Importer SDK 2.0 Transforms the Way You Onboard Data
Tags: webdev
Published: 2023-05-12 08:10:30

Data import use cases vary across industries, from e-commerce to construction, HR, fintech, or energy. However, dealing with messy and ever-changing customer data is a common challenge for B2B software companies.

With this in mind, our AI-assisted nuvo Data Importer was built to provide our clients with a seamless, scalable, and secure data import experience covering even the most complex edge cases. And foremostly, it offers the highest data privacy and security standards on the market. During the past years, we have continuously advanced our solution based on new challenges, formats, and industry-specific use cases to provide our clients with the most powerful import solution. 

Now, after months of research and development, we proudly announce the release of Importer SDK 2.0! 

This version introduces many new powerful features that extend advanced data validation and cleaning capabilities, increase customizability, and speed up implementation.

Here are seven of the most notable new features:

- Start the importer at any step, at any event, and with your preferred data format using the Dynamic Import feature
- Transpose and de-nest data; merge and split columns; join sheets; and perform many other complex data manipulations with the dataHandler feature
- Set up conditional dropdown fields with the Value-Based Dropdown feature
- Parse nested JSON files with allowNestedData
- Up to 95% loading time reduction during columns and option matching using our new architecture
- Fully customize your importer with only a few lines of code using the Simplified Styling feature
- Support multiple languages even faster with our default translations using our language property via the Simplified Translation feature
Let’s dive into how these new features transform the way you onboard data.
‍

## Start the Importer at Any Step, at Any Event, and with Your Preferred Data Format

Providing your users with the best possible data import experience inevitably comes with high flexibility requirements.

The Dynamic Import feature allows you to start the importer at any step, at any event, and with your preferred data format. This enables you to cover various use cases like allowing your users to import complex file structures such as .txt and zip files or to use nuvo not only as an importer but also as a data management UI, where users can edit their existing data.

Moreover, you can start the import by fetching data from any API instead of uploading a file manually. This is game-changing when you want to enable your users to migrate data from their CRM, ERP, PIM, or other applications to yours.

Sounds too good to be true? Check out the documentation or reach out to us to learn how the [Dynamic Import](https://docs.getnuvo.com/sdk/dynamic-import/) feature can cover your use case.

![Dynamic Import Feature](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/okrmndzw1p3ayeeouxn1.png)

## Perform Complex Data Manipulations

Dealing with customer data can be a nightmare for onboarding and engineering teams due to its varying structure, size, and format. During the past years, we have seen many wild edge cases across industries. Hence, developing a feature that can deal with even the messiest input data became a high priority – dataHandler.

The dataHandler feature allows for solving complex data manipulation scenarios, such as transposing data, merging and splitting columns, joining sheets, de-nesting data, and more. Unlike our cleaning functions that iterate through every entry or access only one column at a time, the dataHandler functions (headerStep and reviewStep) work on the entire data at once.

This gives you complete control over the input data directly after the upload and gives you access to modify the data after the mapping step. In addition, it allows you to automatically add, delete, and modify columns and rows in the data, helping you to manage different input file structures and giving greater flexibility for data manipulation.

Whether you need to transform a few columns or an entire dataset, the dataHandler functions provide the flexibility and power required to do the job efficiently.

Go to our [documentation](https://docs.getnuvo.com/sdk/data-handler/) for more details and some sample code sandboxes to test it out!


## Conditional Rendering of Dropdowns

Dropdown or category fields are often used in data import and migration processes. But mapping and validating data against hundreds or even thousands of different dropdown options or categories can be challenging, frustrating, and highly error-prone for the user. 

Additionally, when the dropdown fields depend on the values of certain columns or other conditions, complexity multiplies for both the user and the engineering team setting up an importer.

With our Value-Based Dropdown feature, you can now control which options are displayed in a dropdown column based on the value(s) of other columns in the same row. We achieve this by allowing you to link dropdown options with other columns by using specific operators such as AND, OR, GTE (greater than or equal to), LTE (less than or equal to), and others. 

By applying these operators, you can define even complex conditions that determine whether or not to display a given dropdown option. Once the logic is defined, dropdown options are automatically updated based on the values in the linked columns in the “Review Entries” step.

Learn more about it in our documentation.

![Value-based Dropdown Feature](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lkyw5y3n66ac5cpr4pvg.png)




## Parsing Nested JSON Files

Multi-dimensional or grouped data (also called nested data) is something a lot of companies struggle with when importing and reformatting customer data. Breaking up these dimensions into a two-dimensional structure that can be displayed as a table takes up significant time and effort for engineering teams and is a key challenge our clients brought us. 

Our new feature allowNestedData solves this issue by allowing you to de-nest .json files based on pre-defined rules. The de-nesting process involves replacing arrays with underscores "_" and objects with periods "." to facilitate the display of data in a 2D table.

Find more information in our [documentation](https://docs.getnuvo.com/sdk/settings/#allownesteddata-beta).

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kmggba8cwtomhj4f7t61.png)

## Up to 95% Loading Time Reduction During Columns and Option Matching

You hopefully noticed a significant reduction in loading time during the “Match Columns” step already after the March release. For Importer SDK 2.0, we enhanced the matching module and mechanism further. With the SDK 2.0, we process the column headers on the backend side by default, which reduces the matching time up to 95% in comparison to our January version.

Additionally, we have added an optional functionality (processingEngine === “node”) to reduce the mapping time even further by processing also the uploaded spreadsheet content on the backend side. Please be aware that migrating to SDK 2.0 does not automatically apply this option. By default, SDK 2.0 won't process the spreadsheet content of your users.

Install the latest version and try it out with your own sample file. We'd love to hear your feedback!

Furthermore, check out the new optional SDK 2.0 functionality in our documentation to even further speed up the mapping process by allowing the option mapping on the backend side.

## Simplified Styling and Simplified Translation

Speed and ease of implementation while maintaining flexibility for customization are key aspects of nuvo Data Importer. To speed up the implementation even further, we have significantly simplified the styling options, allowing you to fully customize and white-label the importer using only a handful of properties within the global class.

Additionally, we implemented a simple way to change the UI language, that ables you to implement multiple-language support significantly faster. You can apply nine different languages by only changing the language key within the settings. Of course, you can always override the default text or add additional languages by using our i18nOverrides functionality.

If your language still needs to be included inside the language property, please reach out to us, and we are happy to add it. 

Check out our [translation guide](https://docs.getnuvo.com/sdk/multi-language/) for more details. 

![Simplified styling with only a handful of properties](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/micislxnkkskuza347he.png)
Simplified styling with only a handful of properties
And that’s a wrap! We hope these new features help you to say goodbye to non-scalable import scripts and manually cleaning or reformatting customer files. 

Do you want to hear more?

Join nuvo’s Co-Founders Michael Zittermann (CEO) and Ben Hartig (CTO) on Tuesday, May 16 at 10:30 am CEST for a 30-minute session on the new capabilities and find out how they help you to create the best possible data import experience.

[Register now](https://app.livestorm.co/nuvo/how-nuvo-importer-sdk-transforms-the-way-you-onboard-data)