Quasar Docs
Appendix A

Import Reference

This appendix provides sample CSV files and a complete reference of all XML import types supported by Quasar’s Import Screen.

Sample Item CSV

A 13-column CSV file. No header row. The importer auto-creates departments, subdepartments, and vendors as needed.

1001,049000012345,,Grocery,Canned Goods,Tomato Soup,Campbell's,EA,1,1.25,2.49,GST,GST
1002,049000067890,,Grocery,Canned Goods,Chicken Noodle Soup,Campbell's,EA,1,1.35,2.69,GST,GST
1003,,,Grocery,Baking,All Purpose Flour,Robin Hood,KG,2.5,3.50,7.49,,GST
2001,088888000111,,Dairy,Milk,2% Milk 2L,Beatrice,EA,1,2.80,4.49,,
2002,088888000222,,Dairy,Cheese,Cheddar Mild 400g,Cracker Barrel,EA,1,4.25,6.99,,
3001,,,Cleaning,General,Multi-Surface Cleaner,Mr. Clean,EA,1,2.10,4.99,GST,GST
4001,077777000333,,Hardware,Fasteners,Wood Screws #8 100pk,Hillman,EA,1,3.40,7.99,GST,GST
What Happens On Import
  • Departments Grocery, Dairy, Cleaning, Hardware are created if they don’t exist
  • Subdepartments Canned Goods, Baking, Milk, Cheese, General, Fasteners are created under their respective departments
  • Vendors Campbell’s, Robin Hood, Beatrice, Cracker Barrel, Mr. Clean, Hillman are created
  • Empty UPC/tax fields are allowed — the importer uses the screen defaults

Sample Customer CSV

A 20-column CSV file. No header row.

,100,Acme Construction Ltd,,,,John Smith,123 Main Street,,Edmonton,AB,Canada,T5J 1N3,780-555-0100,,780-555-0101,john@acme.ca,www.acme.ca,5000.00,Y
,,,,Jane,Doe,Charge,,456 Oak Avenue,Suite 2,Calgary,AB,Canada,T2P 3N4,403-555-0200,403-555-0201,,jane.doe@email.com,,1000.00,N
,102,Northern Supplies Inc,,,,Mary Wilson,789 Railway Ave,,Whitehorse,YT,Canada,Y1A 2B3,867-555-0300,,867-555-0301,orders@northern.ca,,10000.00,Y
Key Points
  • Row 1: column 1 is blank (not “Blank”), so it processes normally. Company name is populated → treated as company customer.
  • Row 2: no customer number → auto-assigned from Next Customer #. No company name but First/Last populated → individual customer (“Doe, Jane”).
  • Row 3: Customer Type “Charge” looked up — if not found, the default type from the screen is used.
  • Column 1 set to “Blank” skips the row entirely.

XML Import Types Reference

The following table lists every XML tag supported by the import engine. Each type supports Insert and Update operations unless noted. The XML file must have a doctype of IMPORT.

Setup & Configuration

XML TagUpdate TagDescription
accountaccountUpdateGL accounts (also supports accountDelete)
accountTypeaccountTypeUpdateAccount type categories
adjustReasonadjustReasonUpdateInventory adjustment reasons
brandbrandUpdateItem brands
cancelReasoncancelReasonUpdateE-invoice cancellation reasons
chargeExtra charges (freight, handling)
colorcolorUpdateMatrix item colors
depreciationdepreciationUpdateDepreciation methods
discountdiscountUpdateDiscount definitions
expenseexpenseUpdateRecurring expense templates
extraExtra data field definitions
groupGroups (for any data type)
linkTypelinkTypeUpdateItem link type definitions
locationInventory locations
mediaTypemediaTypeUpdateMedia/document type definitions
priceZonepriceZoneUpdatePrice zones
satProductsatProductUpdateGovernment product catalog codes
securityTypesecurityTypeUpdateSecurity type profiles
stationstationUpdatePOS station definitions
storestoreUpdateStore definitions
taskTypetaskTypeUpdateTask/CRM type definitions
taxtaxUpdateTax codes and rates
tendertenderUpdateTender types (cash, cheque, etc.)
termPayment terms
useruserUpdateUser login accounts

Cards

XML TagUpdate TagDescription
customercustomerUpdateCustomer master records
customerTypecustomerTypeUpdateCustomer type definitions
customerUnitcustomerUnitUpdateCustomer unit / ship-to records
employeeemployeeUpdateEmployee records
vendorvendorUpdateVendor/supplier records
patgrouppatgroupUpdatePatronage groups (also supports patgroupDelete)
crmcrmUpdateCRM contact records

Inventory

XML TagUpdate TagDescription
deptdeptUpdateDepartments
subdeptsubdeptUpdateSubdepartments (also supports subdeptDelete)
itemitemUpdateItems (also supports itemDelete)
mediamediaUpdateMedia/document attachments
labelBatchLabel print batches
priceBatchPrice change batches
priceCalcPrice calculation rules
promoBatchPromotional price batches
orderTemplateorderTemplateUpdatePurchase order templates

Transactions

XML TagUpdate TagDescription
journalEntryGeneral ledger journal entries
chequechequeUpdateCheques (vendor or customer)
customerInvoicecustomerInvoiceUpdateCustomer invoices (sales)
customerReturncustomerReturnUpdateCustomer returns
vendorInvoicevendorInvoiceUpdateVendor invoices (purchases)
vendorClaimvendorClaimUpdateVendor claims
salesOrdersalesOrderUpdateSales orders
quotequoteUpdateCustomer quotes
orderorderUpdatePurchase orders
slipslipUpdatePacking slips (also supports slipDelete)
consignInconsignInUpdateConsignment receipts
consignOutconsignOutUpdateConsignment shipments
cardAdjustmentCard balance adjustments
itemAdjustmentitemAdjustmentUpdateInventory adjustments
itemTransferInventory transfers between stores
assetassetUpdateFixed asset records
assetTypeassetTypeUpdateFixed asset type definitions

XML File Structure

All XML import files follow this structure:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE IMPORT>
<Import>
  <account>
    <name>Cash in Bank</name>
    <number>1020</number>
    <type>Bank</type>
  </account>

  <accountUpdate>
    <oldNumber>1020</oldNumber>
    <name>Cash in Bank - Chequing</name>
  </accountUpdate>

  <item>
    <number>1001</number>
    <description>Widget A</description>
    <dept>Hardware</dept>
    <subdept>Fasteners</subdept>
    <purchased>Yes</purchased>
    <sold>Yes</sold>
    <inventoried>Yes</inventoried>
  </item>
</Import>
Mixing Types in One File A single XML file can contain multiple object types. The importer processes them in the order they appear. Put setup objects (accounts, taxes, departments) before transaction objects (invoices, adjustments) to ensure references resolve correctly.
Update Operations Update tags (e.g., accountUpdate, itemUpdate) require an old field (e.g., oldNumber, oldName) to identify the existing record. Only fields included in the update tag are changed — other fields remain untouched.