NetLease - Data Import Wizard

Overview

The NetLease Data Import Wizard allows users to import NetLease data in bulk into NetSuite using CSV or Excel files. The wizard uses AI-assisted field mapping to automatically match column headers to the corresponding NetSuite fields, and can also suggest matches between file values and valid list/record field options during field validation — reducing manual configuration effort for both column mapping and field validation. It supports Add, Update, and Delete operations and is compatible with a range of NetLease record types.


Prerequisites

  • Access to the NetLease Data Import Wizard Suitelet
  • Appropriate NetSuite role permissions to view and modify the target record types
  • A CSV or Excel file prepared for import

Step-by-Step Process

Launch the Import Wizard

  • Navigate to the NetLease Data Import Wizard by going to NetLease > NetLease Setup > System Setup > Import Tools > Data Import Wizard.


Select a Record Type & Upload File

  • From the record type dropdown, select the NetLease record type to be imported. Supported record types include leases, lease types, lease modification proposals, lease payments, among others.
  • (Optional) Select a template to load a previously saved configuration, including field mappings and operation type.
  • Click Upload File Here to browse for a CSV or Excel file, or drag and drop the file into the upload box.
  • Click Next to proceed to the next step.


Choose Upload Operation

  • The Choose Operation step (Step 2 of the wizard) determines how the imported file interacts with existing records in NetSuite. The selected operation applies to all rows in the file. 
  • Operations are divided into two groups: 

No Match Required — The wizard does not compare rows against existing records.

OperationWhat It Does
AddCreates a new record for every row in your file. Your existing records will not be affected. 
ReplaceDeletes all existing records and replaces them with the rows from your file. This cannot be undone — all existing records will be permanently deleted.

Match Required — The wizard compares rows against existing records using matching criteria that will be configured in the Row Matching step later.

OperationWhat It Does
Update & AddUpdates any existing record that matches a row in your file. Adds rows from your file that don't match any existing record. Existing records with no matching file row are not affected.
UpdateUpdates any existing record that matches a row in your file. File rows with no matching record are ignored. Nothing new will be created. 
DeletePermanently deletes any existing record that matches a row in your file. Your file must include a NetSuite Internal ID column to process a delete. This cannot be undone — double-check your file before proceeding. 
  • After selecting an operation, the wizard displays a description and an operation visualization diagram that previews the expected outcome before proceeding. 
  • Click Next to proceed to the next step.

Select & Review Data

  • The Select Data step displays a preview of the uploaded file along with the detected file name, total row count, and column count. Review this information to confirm the file loaded correctly before proceeding.
  • On this page:
    • Designate the header row — Check the Header box on the row containing column names. That row becomes the header used for column mapping, and any rows above it are automatically skipped.
    • Skip rows — Check the Skip box on any row to exclude it from the import (e.g., blank rows, notes, or totals).
    • Edit row values — Click the Edit (pencil) icon to correct values inline. Edits are temporary and apply to the current import session only.
    • Select a sheet(Excel files only) — Choose which sheet to import; the preview updates accordingly. 
    • Once satisfied, click Next to proceed to the next step.

Row Matching

  • The Row Matching step defines how the wizard identifies existing NetSuite records that correspond to rows in the import file. This step is only required for Match Required operations (Update & Add, Update, and Delete).
  • When matching is required, configure the following:
    • Match Type— How file rows are compared against existing NetSuite records:
      • Internal ID — Match on NetSuite's internal ID. The most reliable method, and required for the Delete operation (the page will note this).
      • External ID — Match on the external ID field; useful when records were imported from another system.
      • Record Name ID — Match on the record's natural-key field. For leases this appears as Lease ID
    • File Field — The column in your file that holds the matching values. Only columns with unique, non-blank values can be used.
  • Below the selectors, a file columns table previews each column with validation. Each column is checked for whether it has unique values and whether it contains blanks — only columns that are both unique and blank-free are selectable. Valid columns are clickable to set them as the match field; invalid columns are grayed out and cannot be selected.
  • When matching is configured, click Next to continue to the next step.

Review Operations

  • The Review Operations step provides a summary of how the import file will affect NetSuite records before column mapping begins. Review this page carefully to confirm the selected operation and matching configuration produced the expected results.
  • The page displays the selected operation at the top, followed by an operation summary table:
ColumnDescription
Row TypeThe category each row falls into based on the operation and matching results (e.g., new rows, matched rows, unmatched rows)
ActionThe action to be taken for that row type, color-coded by type (add, update, delete, no change)
Sheet RowsThe number of rows from the file that fall into that category
NetSuite RecordsThe number of existing NetSuite records affected
View RowsOpens a preview of sample records in that category (available when the category contains at least one row)
  • Clicking View Rows opens a Preview of the records in that category below the table, so you can spot-check that matching identified the correct records before proceeding.
  • When the summary looks correct, click Next to continue to the next step.

Map Columns

  • The Map Columns step connects each column in the import file to the corresponding field on the target record type. This determines which data is written to which NetSuite field during the import.
  • If any mapped field is a date or time field, CSV Date Format and CSV Time Format selectors appear at the top of the page (marked as required). These tell the wizard how to interpret date and time values in the file. Confirm these selections even if the wizard has tagged them as Detected — an incorrect format will cause validation errors on the next step. 
  • The page is built around a Column Mapping with Data Preview grid:
    • Available Fields(left panel) — The pool of all unmapped fields for the target record type. Use the Filter fields... search box to locate a field quickly. Map a field by dragging it onto a file column, or by clicking the field and then clicking the row in the From Your Fileportion of the grid. Mapped fields are removed from the pool. 
    • Two helper controls appear above the grid:
      • Auto-Match — Uses AI to suggest field mappings based on column names. Review and adjust all suggestions before proceeding.
      • Clear All — Removes all current field mappings and any fixed values so the mapping configuration can be started over.
    • Mapping grid(right panel) — Each file column appears as a row in the grid alongside a live preview of its data. The following controls are available per column:
ControlDescription
Map to NetSuite FieldA searchable dropdown to select the target NetSuite field for this column. Click X to clear a mapping and return the field to the Available Fields pool. Leave blank to skip the column.
Lookup ByAppears when the mapped field is a record or list field (e.g., Subsidiary, Vendor). Determines how the file value is resolved to the related record: Name, Internal ID, or External ID.
Default ValueSets a fallback or fixed value for the field. For fields mapped to a CSV column, the default fills only blank cells. For fields not mapped to any CSV column, the value applies to all rows.
  • Once all intended columns are mapped, click Next to continue to the next step.

Validate Data

The Validate Data step checks all mapped data against each field's type and requirements before any records are created or modified in NetSuite. This step catches issues such as incorrect data types, unrecognized date or time formats, and missing values in mandatory fields.

Mandatory fields are marked with an orange asterisk (*). Fields used as matching keys are flagged with a dedicated icon.

Possible outcomes:

  • No errors — A green confirmation message indicates no validation errors were found. Proceed to the next step.
  • Errors found — The page displays an error summary (e.g., "3 of 8 rows have validation errors") followed by a validation results table.

Validation Results Table

ColumnDescription
NetSuite FieldThe target field where the issue was detected
Field TypeThe expected data type for that field
Error DescriptionA description of the validation failure
ErrorsThe number of rows affected
Fixed / SkippedTracks how many error rows have been corrected or excluded

Click any row in the table to drill into the affected values and resolve the issue — either by correcting the data inline or by skipping the problem rows so the remainder of the import can proceed. 

Special cases:

  • Delete operations — An additional check for circular dependencies runs automatically. Any records that cannot be safely deleted are listed and must be resolved before continuing.
  • Missing date format — If a date or datetime field is mapped but no date format was selected on the Map Columns step, an orange warning appears. Return to Map Columns and set the format before proceeding.

Once validation is clean or remaining errors have been skipped, click Next to continue to the next step.

Match Lookups

The Match Lookups step resolves lookup fields in the mapped data — fields whose values reference other NetSuite records, such as Subsidiary, Class, Department, Location, or any select or multi-select field. Each file value must be matched to an existing NetSuite record before the import can run.

When the page loads, the wizard fetches available records for each lookup field type from NetSuite and automatically applies exact matches where possible.

Possible outcomes:

  • Everything matched — All values show a green checkmark and the import can proceed.
  • Values need attention — One or more record types have unresolved values. Next remains disabled until every value is either matched or skipped.
  • No lookups to resolve — If no lookup columns were mapped, or all lookup columns are empty, a note confirms no action is required and the step can be passed through.

Record Type Summary Table

ColumnDescription
Record TypeThe target record type for the lookup field
ValuesThe number of distinct file values requiring a match
MatchedThe number of values confirmed as matched
SkippedThe number of values excluded from the import
View RowsOpens the detail panel for that record type
Appears when all values for that record type are matched or skipped

Resolving Values

Click any row in the summary table or View Rows to open the detail panel for that record type. Use the panel tools to auto-match and bulk-manage values first, then work through any remaining unresolved values manually in the detail panel. 

Panel Tools

Controls at the top of the page apply across all record types:

ControlDescription
Auto-Match AllRuns exact, fuzzy, and AI matching passes over all unresolved values across every record type in sequence
Clear AllResets mappings across every record type

Controls within the detail panel apply to the currently selected record type:

ControlDescription
Hide Mapped / Hide CheckedToggles to focus on values still needing attention
RefreshReloads available records from NetSuite. Use after creating a missing record.
New {Record Type}Opens NetSuite in a new tab to create a missing record. Click Refresh afterward to make the new record available for matching.
ClearResets all mappings for the current record type
SkipSkips all currently unmatched values for the current record type
CheckConfirms all mapped, non-skipped values for the current record type as reviewed
Auto-MatchRuns exact, fuzzy, and AI matching passes over unresolved values for the current record type only

Detail Panel

The detail panel lists each distinct file value with the following controls:

ColumnDescription
File ValueThe value exactly as it appears in the file
NetSuite ValueA search selector to pick the matching NetSuite record. Press Enter to confirm and advance to the next row.
IDThe internal ID of the selected record
CountThe number of rows in the file containing this value
Match TypeHow the match was determined (see below)
SkipExcludes all rows containing this value from the import
CheckedMarks the mapping as reviewed. Set automatically when a value is selected.

Match Type values:

  • Exact Match — File value matched perfectly to a NetSuite record
  • Fuzzy Match — Match based on similar text
  • High / Low Confidence — AI-suggested match
  • Multi-Match — Multiple possible records found; manual selection required
  • No Match — No matching record found

Once all values are matched or skipped, click Next to continue to the next step.

Submit

The Submit step is the final step of the wizard. Review the import description field, then click Submit to queue the import for processing. There is nothing left to configure at this stage.

When the page opens, the wizard generates the import file in the background from all configured settings — source data, column mappings, resolved lookups, and row matching results. A blue note reading "Generating CSV..." displays while this completes. Once ready, the page confirms the file is prepared for the import queue.

FieldDescription
Import DescriptionAn optional label (up to 30 characters) to identify this import run. Appears on the import status page to help distinguish this run from others. A live character counter displays remaining characters.

Submitting

Click Submit to queue the import. During submission, a status panel displays progress through the following stages:

  • Preparing import...
  • Processing file...
  • Submitting import task...

Possible outcomes:

  • Success — A green confirmation message appears and the wizard automatically redirects to the import status page after approximately 1.5 seconds.
  • Error — A red error message describes what failed. Dismiss the panel and click Submit again to retry.

Import Wizard Status Page

After submitting an import, the wizard redirects to the CSV Import Status page automatically. The status page can also be accessed directly by navigating to NetLease > NetLease Setup > System Setup > Import Tools > Data Import Wizard Status.

This is a standalone monitoring screen that lists all submitted imports and provides tools to track progress, review results, download output files, and cancel active jobs. Click Back to Data Import Wizard at the top to start a new import.

Page Controls

ControlDescription
Auto RefreshWhen enabled, reloads the list every few seconds so progress and counts update live
My ImportsShows only imports initiated by the current user
Hide CompleteNarrows the list to imports that are actively In Progress
Record TypeFilters the list to a specific record type or all record types

Filter and sort preferences are remembered between visits.

Import List

Each row represents one submitted import. The list defaults to newest first by Created Date. All columns are sortable.

ColumnDescription
DescriptionThe label entered on the Submit step
Record TypeThe record type being imported
Created DateWhen the import was submitted
StatusThe current state of the import (see below)
StartedWhen processing began
Run TimeHow long the job has run or took to complete
UserWho initiated the import
Total RecordsHow many records the file contains
CompletedHow many records have been processed successfully
ErroredHow many records failed — displayed in red when above zero
ProgressA live percentage bar; displays "—" while the import is pending

Status Values

  • Pending — Queued but not yet started
  • In Progress — Currently processing
  • Complete — Finished processing
  • Error / Failed — Finished with failures
  • Cancelled / Cancelling — Stopped by a user

Per-Import Actions

ActionDescription
Download → CSVDownloads the full result file including all processed and errored rows
Download → ErrorsDownloads only the rows that failed, ready for correction and re-import. Available only when an import has errored rows and has finished (Complete, Cancelled, or Failed).
CancelAvailable while an import is Pending or In Progress. Displays a confirmation prompt before stopping the job.

Import Templates

A template saves the current import configuration so it can be reused for future imports of the same record type. Templates capture column mappings, row-matching setup, lookup value mappings, skipped values, field defaults, and date and time formats — everything except the data file itself.

Creating a Template

At any point after choosing a record type, click Save Import Template in the bottom toolbar, enter a name, and click Save. Template names must be unique per record type. If a template with the same name already exists, a different name will be required.

Updating a Template

When working from a saved template, the template name displays in the bottom toolbar alongside a Save button. Click Save to overwrite the existing template with the current configuration (a confirmation prompt appears before saving). To save the changes as a new template instead, click the dropdown arrow next to Save and select Save Template As, then enter a new name.

Loading a Template

On the first step of the wizard, select an existing template from the Import Template dropdown to load all saved settings. Use Manage Templates on the same step to rename, copy, or delete saved templates.

Considerations

  • AI-assisted mapping is a starting point, not a guarantee. Review all suggested mappings before running the import. The wizard applies exact matching first, then AI-assisted matching, then fuzzy substring matching for any remaining unmatched columns.
  • Mapping templates save time for recurring imports. For record types imported on a regular basis, saving a template avoids re-mapping on each run.
  • Large imports may span multiple files. For very large datasets, the wizard handles multi-file imports automatically. Each batch is processed sequentially.
  • Cancelled imports cannot be resumed. If an import is cancelled, a new import job must be initiated.
  • Failed rows do not block the remaining import. Rows that encounter errors are skipped and captured in the error file; valid rows in the same job continue to process.

Troubleshooting

Rows are failing with validation errors.

  • Verify that mandatory fields for the target record type are populated in the CSV.

Expected records are not being updated.

  • Confirm the correct Match Required operation was selected and that row matching criteria are configured.
  • Verify that the match field contains unique, non-blank values as required by the File Columns Preview validation.

The import completes but some records appear incorrect.

  • Review the field mappings used during the import. An incorrect column-to-field mapping may have populated the wrong field.
  • Re-run with a corrected mapping configuration if needed.

The import status page shows "Error / Failed."

  • Download the error file via Download → Errors on the status page and review the error details for each failed row.
  • Correct the affected rows and re-submit through the wizard.

For issues that cannot be resolved through the steps above, contact support@netgain.tech.


Was this article helpful?