CSV vs. SUF
SixBit imports data from many different existing sources such as eBay, Turbo Lister or Blackthorne, but in addition to those imports we provide two generic imports that will allow you to import data from any other source.
The two formats are Comma Separated Values (CSV) files and SixBit Universal Format (SUF) files. The two import formats serve different purposes so it is important to understand the difference before you begin any integration development.
Comma Separated Values Format
Comma Separated Values (CSV) files, also known as flat files are a common way to exchange simple data between databases and applications. A CSV File contains columns and rows like a spreadsheet, but the column boundaries are defined by commas between the field values. CSV Files can be imported and exported by any row-column type application including databases and spreadsheets (eg, Microsoft Excel), and of course SixBit.
In a nutshell, CSV files:
- are more common
- are easy to create
- are not very flexible
- can't support importing all item fields
SixBit Universal Format
SixBit Universal Format (SUF) is a proprietary format defined by SixBit. SUF files are XML files that are described by our published XSD. XML is a common way to save and exchange complex data between databases and applications. An XML file contains tags that identify different fields and their relationships with one another. The tags that are allowed and their relationship are all defined in an XML Schema Definition (XSD) file that is provided by SixBit. You can input an XML file and XSD file into an XML Validator to verify that the XML file conforms to the schema defined in the XSD. XML files can be imported and exported by any row-column type application including databases and spreadsheets (eg, Microsoft Excel), and of course SixBit.
SUF files:
- require more expertise to create
- are highly flexible
- can support importing all item fields
A complete description of XML files and their use is beyond the scope of this document. If you would like more information, we recommend you check out some of these books.
Examples
An example may help you understand.
A CSV file contains a separate row for each record, with each field separated by commas as follows.
ProductID,Title,Description,"Starting Price",MSRP
1234,"1964 Lincoln Cent","This is a rare penny.",2.00,0
An SUF XML file contains tags that identify field information in a hierarchical fashion.
<SixBitImportData>
<SixBitItem>
<Item>
<ItemID><![CDATA[3]]></ItemID>
<ProductID><![CDATA[]]></ProductID>
<StorageLocation><![CDATA[]]></StorageLocation>
<RestockAt><![CDATA[0]]></RestockAt>
<TrackInventory><![CDATA[0]]></TrackInventory>
<Title><![CDATA[Sacagawea $ 2003-D PCGS MS-64]]></Title>
<BinID><![CDATA[1]]></BinID>
<StatusID><![CDATA[100000]]></StatusID>
<Notes><![CDATA[]]></Notes>
<IsTaxable><![CDATA[0]]></IsTaxable>
<Condition><![CDATA[1]]></Condition>
<WeightMajor><![CDATA[0]]></WeightMajor>
<WeightMinor><![CDATA[0]]></WeightMinor>
<DimensionLength><![CDATA[0.00]]></DimensionLength>
<DimensionWidth><![CDATA[0.00]]></DimensionWidth>
<DimensionDepth><![CDATA[0.00]]></DimensionDepth>
<CreatedDate><![CDATA[12/1/2010 3:40:47 PM]]></CreatedDate>
<LastModifiedDate><![CDATA[1/20/2011 10:46:08 AM]]></LastModifiedDate>
<LastListDate><![CDATA[]]></LastListDate>
<IsTemplate><![CDATA[0]]></IsTemplate>
<UseSixBitInsurance><![CDATA[0]]></UseSixBitInsurance>
</Item>
<ItemEbay>
<Title><![CDATA[[[ProductTitle]]]]></Title>
<SubTitle><![CDATA[]]></SubTitle>
<ThemeID><![CDATA[10]]></ThemeID>
Why Use SUF Instead of CSV
In most simple import implementations CSV files will be fine. There are however some limitations of CSV's that may require you to use SUF format instead. Whenever the data you want to import has a many to one relationship it cannot be represented in a CSV file. For example, variations can have multiple SKU's for each item. Also, a flat file accepts the same fields for each record. Whenever different records must provide different fields, as in the case of item specifics, you cannot represent it with a simple CSV file.
Therefore, the following types of information cannot be imported using a CSV file.
- Variation information
- Item specifics
- Preset details - a CSV file can import the names of the presets you want to use, but if you want to create shared presets within your XML file and assign multiple items to the same preset, you must use an SUF XML file.
If you do not need to import this type of information and are comfortable with CSV files, then by all means we encourage you to use the CSV format.