Creating CSV Import Files

Using the simplified CSV file format, you can:

  • Import data from your ERP system.
  • Create data outside of Determination.
  • Update Determination data.

CSV import files are a very powerful tool. Because the imported data replaces existing data, use caution before you proceed. Please read Best Practices for Importing Data with CSV Files for tips about safely using CSV import files.

Button: view the CSV Imports demo

CSV File Format

The simplified CSV file format is a list of comma-separated values corresponding to one of the supported import types. You can create a CSV import file two main ways:

Create the file in a spreadsheet

When you create the CSV file in a spreadsheet, the import type is specified in the first row and the column headings in the second row. It's easier to make sure you have entered data in the correct format when you are entering them in the spreadsheet cells. You can:

  • Use a Determination-supplied template. This is the preferred method because the template helps prevent formatting and data entry errors. Templates contain only the required fields; if you have data in optional columns, you must include the column name in the header.

    In this example, the optional column named CommodityCode has been added in the template.The spreadsheet version of the CSV file tolerates empty cells, unlike a file created in a text editor.
  • Use a spreadsheet to set up the file, using a different column for each value.

When you save the file, select the CSV format to create a comma-delimited file. When you create a file in a spreadsheet, all columns are automatically accounted for when you save to the CSV format. For example, saving an Excel document as a CSV file automatically creates a text file where the commas are automatically included. This allows you to leave some cells blank or to include data in columns that might have a comma (such as City, State) and have the comma be included in the cell value rather than as a delimiter between commas.

Create the file in a text editor

You can use any text editor, such as Notepad, but you need to be sure you have used correct formatting in order to prevent an import error. You can:

  • Copy the code example below into a text editor and replace the values with your own data.
  • Create the file in a text editor. Make sure to represent each column name in the header and separate columns from one another by a comma in the data, even if the field does not have a value.

Each supported import type requires a CSV file. The file contains the import type, all of the column headers separated by commas, and values for the imported data (also separated by commas). The following example shows a Product Categories import with eight products. You will notice that some rows do not have a value in the CommodityCode column, but include a comma as a placeholder:

  1. sdiType=ProductCategories,,

  2. ProductPath,Description,CommodityCode

  3. Office Supplies,Office Supplies,OS1111

  4. Office Supplies.Paper,Paper,OS2222

  5. Office Supplies.Paper.Recycled,Recycled Paper,

  6. Office Supplies.Paper.Photo,Photo Paper,

  7. Office Supplies.Paper.Glossy,Glossy Paper,

  8. Office Supplies.Furniture,Office Furniture,OF1234

  9. Office Supplies.Furniture.Desks,Desks,

  10. Office Supplies.Furniture.Chairs,Chairs,

The first line defines the import type (sdiType=ProductCategories). This line is optional but if you do not include it, the Import Wizard prompts for the type when you import the data. If you include it, add trailing commas to represent column separators. In the example above, there are three column headers (ProductPath, Description, and an optional column named CommodityCode), so two commas represent the additional columns.

The second line defines the columns for this import type (ProductPath, Description, CommodityCode). Each import type has its own column definition, including required and optional columns.

In the example, the next eight lines contain the data to import. Each column has its own requirements for the values you can enter, including data type, size, and order.

You can see how a product category is distinguished from a product on another line. For example, Office Supplies.Paper.Recycled is a separate product from Office Supplies.Paper.Photo. Each line must contain a unique category to avoid overwriting the previous line.

Click a link in the Supported CSV Files list above to see a table with format requirements for each import type.

Blank spaces at the end of lines, as well as blank rows, cause all or part of an import to fail.

Import Hierarchy

Several of the import types cannot be imported until referenced data is present in the database. For example, exemption certificates cannot be loaded until the owning customers are present.

  • Exemption Certificates are dependent on Customers.
  • Exempt Zones are dependent on Exemption Certificates.
  • Product Mappings and Product Zones are dependent on Product Categories.
  • TransEditor Groups do not have any dependency on other data.

Naming Conventions

Your import file can use any name, as long as it does not contain the / or \ characters and has the .csv suffix.

Including Extended (UTF-8) Characters in Import Files

Determination can handle extended (UTF-8) characters, such as accented characters in languages other than English. To use these characters successfully, you must use a text editor that can be configured to edit and save files using the UTF-8 character set. Programs known to support UTF-8 include:

  • Microsoft NotePad, WordPad
  • Helios Software TextPad
  • IDM Computer Solutions UltraEdit
  • Altova XMLSpy
  • Wattle Software XMLWriter

Review the documentation for your editor to determine how to use the UTF-8 character set.

Throughout the simplified CSV descriptions, column types such as varchar2(100) and varchar2(50) indicate the number of single-byte characters that can be successfully contained within the element. If you include multi-byte characters, you need to account for their size when submitting data. Most Western accented and currency characters are 2 bytes; most Asian characters are 3 bytes.