Skip to main content

Importer Configuration

This property can be used to configure the <NuvoImporter> so that the importer is tailor-made for your importing process. With this property, you can adjust the design, the display mode, enable or disable certain features and by using the columns property, you can define your preferred output schema. The <NuvoImporter> instance must have settings and licenseKey as properties to launch. A target data model (columns) and an identifier (identifier) must be defined within settings. Otherwise, the component cannot be launched.

identifier

Typestring
Required
DescriptionThe identifier helps to identify different imports. For example, you have defined one target data model for a customer import and one target data model for a product import. With the identifier option, you can distinguish between the "customer" and the "product" import.

columns

Typeobject
Required
DescriptionUse columns to define the target data model you want to use within your application. columns is an array of objects. Each object is a new column which contains at least the keys label and key. For more information, check out our columns documentation.

title

Typestring
Default"Upload"
DescriptionThis can be used to change the pre-set title currently seen as “Upload” inside the "Upload"-step when the nuvo importer is started. For instance, the title could be set to “Upload your product data here”. In this case, you would see the following screen:
info

When embedUploadArea equals true, the title won't be displayed.

setting-banner


developerMode

Typeboolean
Defaultfalse
DescriptionThis value is supposed to be true when using the nuvo importer in development or staging environments. The nuvo importer will display a "developer mode"-banner at the top, and these imports will be marked as test imports, which means that they will not count against your contingent.

Typeboolean
Defaulttrue
DescriptionThis option controls whether the nuvo importer is implemented as a button or as a full page view. Your users will be guided through the workflow within a modal by default. When set to false, the users will go through the process on the implemented page without any modal occurring.
info

Please note the minimum screen width for the nuvo Importer to work:

  • If modal is set to true, the minimum required screen width is 901px.
  • If modal is set to false, the minimum required screen width is 948px.

embedUploadArea

Typeboolean
Defaultfalse
DescriptionThis option enables you to implement the nuvo importer as an embedding area. The nuvo importer is shown as an embedding area when embedUploadArea equals true, and when it is set to false, the nuvo importer is displayed as a button.
info

If modal equals false, embedUploadArea has no effect.

embedUploadArea: falseembedUploadArea: true
falsetrue

buttonMode

Type"import", "edit" or "both"
Default"import"
DescriptionSuppose you want to enable your users also to edit/update existing data. In that case, you can use this setting to not only display an "Import data"-button but also display an "Edit data"-button. By clicking this button, the user is directly forwarded to the last step ("Review Entries"-step), where the user can manually add new data or edit and delete existing data. For the latter case, we recommend using the preloadData option, which enables you to preload data into the table of the "Review Entries"-step. With this setting, you can determine if you want to display the import, edit, or both buttons at the time.
info

If modal equals false or embedUploadArea equals true, buttonMode has no effect.

buttonMode: "import"buttonMode: "edit"buttonMode: "both"
importeditboth

preloadData

Type[{columnKey: string, ...}, ...]
Default[]
DescriptionWith this setting, you can preload data as an array of objects into the importer if the user does a manual import. If you have set allowManualInput to true, added data to the preloadData array, and the user clicks on the "Manual Entry"-button, the preloaded data is displayed inside the table of the "Review Entries"-step. The same goes for the "Edit data"-button that is shown if buttonMode is set to edit or both.

automaticHeaderDetection

Typeboolean
Defaultfalse
DescriptionThis option enables you to let your users skip the header selection of the import process. When this option is set to true, your users are automatically forwarded to the matching step of the import process after selecting the correct spreadsheet(s).

maxEntries

Typeint
Defaultnull
DescriptionDefine the highest amount of entries that can be imported. Note that the header row will not be taken into account. When a user's upload exceeds the defined amount of maxEntries, an error message is displayed, and your user cannot continue further.

max-entries-modal


disableTemplates

Typeboolean
Defaultfalse
DescriptionThis option enables you to disable the "Download Template"fFunctionality (for the Excel and CSV template) for your users. When this option is set to true, the "Download Template"-button/tile won't be displayed inside your application, and your users, therefore, can't download the target data model template as CSV or as XLSX.

disableExcelTemplate

Typeboolean
Defaultfalse
DescriptionWith this setting, you can disable the "Download Template"-functionality (only for the Excel template) for your users. When this option is set to true, the "Excel template (.xlsx)"-button won't be displayed inside your application, and your users, therefore, can only download the CSV template of the target data model. They cannot download the template as an Excel/XLSX file.

disableTemplateDropdowns

Typeboolean
Defaultfalse
DescriptionThis option disables the dropdown fields inside the Excel/XLSX template and the "Export as Excel"-file. When this setting is set to true, the downloadable Excel/XLSX template and the output of the "Export as Excel"-functionality inside the "Review Entries"-step do not include any dropdown fields.
info

Both the disableExcelTemplate and disableTemplateDropdowns settings can be used to prevent your users from encountering an Excel issue. Excel dropdown lists have a character limit of 256, which means that all dropdown options should not exceed this limit. If the limit is exceeded, users will receive an error message stating, "We found a problem with some content in {fileName}. Do you want to try to recover as much as we can?" when attempting to open the Excel file. For more information, check here.


disableSuccessModal

Typeboolean
Defaultfalse
DescriptionThis option defines whether the "Successful Upload"-modal is shown at the end of the importing process or not. If it is set to true, no modal is displayed after the user clicks on the "Complete Import"-/"Submit"-button within the "Review Entries"-step.

allowManualInput

Typeboolean
Defaultfalse
DescriptionDefines if the "Upload"-step contains a "Manual Entry"-button or not. If set to true and the user clicks on the button, the user is directly forwarded to the "Review Entries"-step and can add its values manually. For customizing the button's styling, please check out the following the styling section of (our documentation).

manual-input-button


allowCustomColumns

Typeboolean
Defaultfalse
DescriptionThis property enables the user to add customized columns to the defined target schema. If this option is set to true, the user can add custom columns to the target data model within the dropdown menu inside the "Match Columns"-step and map its imported columns to them. The result array object will contain the key of each created custom column which was also mapped to an imported column. Validation rules or the columnType of a custom column cannot be defined. By default, the columnType is set to string.
info

Note that the custom columns will be considered for creating the result array object of the current importing process but not for future ones. If you want that custom columns are permanently added to the target schema, you need to generate the columns array dynamically before initializing our component. Please contact us via [email protected] if you have any questions regarding this topic.


allowCustomOptions (deprecated)

Typeboolean
Defaultfalse
DescriptionThis property enables the user to add custom dropdown options to a category column (columnTypes equals category). If this option is set to true, the user can add custom options to a category column within the category dropdown menu and map the unique values of an imported column to them.
caution

allowCustomOptions has been deprecated in the global settings. You can now define, for each category column, whether this functionality should be enabled or disabled. More information can be found in the columns documentation.


completeImportAction

Type"discard", "submit" or "block"
Default"discard"
DescriptionThis property lets you define how rows with errors are handled inside the “Review Entries”-step. Apart from discarding ("discard") all rows with an error from the result array object or submitting every row ("submit"), you also have the option to block the “Complete Import”-Button if the data contains at least one error ("block").
info

The allowInvalidEntries property is deprecated since React version 1.14.3, Angular version 1.6.5, Vue.js version 1.0.2 and vanilla JavaScript version 0.3.3. Please use completeImportAction instead. If you have used allowInvalidEntries equals true, you need to set completeImportAction to "submit".

completeImportAction = "block"completeImportAction = "discard"completeImportAction = "submit"
blockdiscardsubmit

allowInvalidEntries (deprecated)

Typeboolean
Defaultfalse
DescriptionThis option enables you to allow users to submit entries with at least one error. If set to true, the entries which include an error will also be submitted.
caution

The allowInvalidEntries property has been deprecated since React version 1.14.3, Angular version 1.6.5, Vue.js version 1.0.2 and vanilla JavaScript version 0.3.3. Please use completeImportAction instead. If you have used allowInvalidEntries equals true, you should set completeImportAction to "submit".


enableMassiveErrorAlert

Typenumber
Defaultnull
DescriptionThis option enables you to display an error message to your users as a pop-up after there are more than x cells with an error. This error message tells the user that the user can either continue to correct its data within the application or that the user can download the matched data as .XLSX to continue the work within Excel.

massive-error-alert


onlyMappedColumns

Typeboolean
Defaultfalse
DescriptionThis option defines if the user is supposed to see all target data model columns within the "Review Entries"-step or just the mapped ones. If this prop is set to true, only the mapped target data model columns are shown and imported.
info

Note that the result array object does not contain the keys of the unmapped columns.


enableExamples

Typeboolean
Defaultfalse
DescriptionThis option enables you to display examples for each column of the target data model within the last step of the import process. When it is set to true, you can define the example property for each object of the columns array. These values are displayed within the table of the last step of the import process.

enable-example-equals-true


language

Typeobject
Default"en"
DescriptionThis setting allows you to choose the default language of the nuvo Importer, which can be tailored to your particular requirements in combination with the i18nOverrides option. Additionally, you can switch languages dynamically before initializing the importer. This option currently supports a variety of languages, including English, German, Spanish, French, Italian, and more. For more information, please check our multi-language support documentation.

i18nOverrides

Typeobject
Defaultnull
DescriptionThis option allows you to overwrite every UI text inside the nuvo importer with your preferred version. You can also define the i18n overrides per language and add language support for languages that are not yet support by our language setting. For more information, please check our multi-language support documentation.
info

With the language setting, you can easily and quickly implement support for your preferred language and change the UI language. If you want to support additional languages that we do not cover yet, or if you want to override our default translation keys, we recommend using our i18nOverrides functionality. You can find details about both options and a list of all i18n keys for each default translation here.


style

Typeobject
Defaultnull
DescriptionThe style setting enables you to customize the style of the nuvo importer. You can adjust the theme for the importer to match your branding.
info

Please notice that using your own CSS to override ours can lead to bugs. To avoid that, please use our provided style option. Visit our style documentation for more details on our styling options.


automaticMapping

Typeboolean
Defaultfalse
DescriptionIf this property is set to true, the user skips the "Match Columns"-step within the importing process and is directly forwarded to the "Review Entries"-step. The skipping only occurs if the user uploads a file with the same structure as a previous uploaded one. As a result, the column and option mappings of the last time that this data structure was uploaded will be applied to the imported data. The user is notified by an additional info box above the table if the "Match Columns"-step was skipped, and the user can always go back and enter the mapping step to correct wrong mappings.
info

Please note that if this option is activated that option mappings will be saved on our server-side. Option mappings, in comparison to column mappings, can contain sensitive data.


multipleFileUpload

Typeboolean
Defaultfalse
DescriptionThis option enables you to allow users to upload multiple files and to select multiple sheets. Enable this option to show the "Join Sheets"-step to your users within the importing process where they can select the key columns for joining data from multiple sheets.
info

Currently, we support uploading a maximum of 5 files in one importing process. All files must have the same identifier/key column to join them together in one table.


allowNestedData (deprecated)

Typeboolean
Defaultfalse
DescriptionBy enabling this feature, users can upload nested .json files which will be de-nested based on a predefined set of rules. The de-nesting process involves replacing arrays with underscores _ and objects with periods . to facilitate the display of data in a 2D table.
caution

allowNestedData has been deprecated. You can use the advancedParsing setting that enables the parsing of nested JSON and XML files. More information can be found in the advancedParsing documentation.


advancedParsing

Typeboolean
Defaultfalse
DescriptionBy enabling this feature, users can upload nested JSON and XML files, which will be parsed based on a predefined set of rules.

When a user uploads complex XML files, the advanced parsing splits the XML file into multiple sheets corresponding to each dataset within the XML file. This allows the user to choose whether to import a specific subset of data or the entire dataset. Complex XML files are treated similarly to Excel workbooks with multiple sheets when this option is activated.

The de-nesting process of JSONs involves replacing arrays with underscores _ and objects with periods . to facilitate the display of data in a 2D table. The following is an example of how nested JSONs are parsed:

Input = [
{ id: 1, games: "football", equipment: ["gloves", "ball"] },
{ id: 2, games: "cricket", equipment: ["bat", "ball"] },
];
info

Currently, we support JSON files with a maximum depth of 4.


smartTable

Typeboolean
Defaultfalse
DescriptionThis option enables the user to sort, filter, freeze and hide columns, as well as find and replace values. If this property is set to true, a `…" menu is added to each column, with which the user can apply the functionalities mentioned.

processingEngine (only available for v2.0 or higher)

Type"browser", or "node"
Default"browser"
DescriptionThis option enables you to decide whether the option mapping is done inside the browser or on our server side. By default, the spreadsheet content and therefore also the option mapping (mapping of the unique values of an imported column with the dropdown options of a category column) will remain in the browser. If you want to speed up the process and reduce the mapping time, you can change the setting to node, so that the option mapping is done on our server side.
info

Important: With the SDK 2.0, we changed the mapping mechanism and now process the column headers on the backend side during the mapping step to reduce the mapping time. With processingEngine you can reduce the mapping time even further by allowing the spreadsheet content processing on our server side. Please be aware that migrating to SDK 2.0 does not automatically include that option and that by default the SDK 2.0 does not process any sensitive data from your users.

You can freely decide whether you want to migrate to SDK 2.0 or not.