Import of Inventory modules (Quotes, SO, PO and Invoices) is very similar to the normal import process, the only difference appears in the mapping of fields.

If the module being imported is an inventory module the field mapping step of the import process will show not only the fields of the module but also a set of "virtual" fields that represent the product/service lines of the module.

These fields must be mapped to columns being imported from the CSV file. Basically they represent the fields that can be found in the product lines of the inventory modules as can be seen in the next table:

Field Name Description
Item Name Product or Service. Should be in import format Products::::ProductName or Services::::ServiceName. The item will be created if it does not exist
Item Comment Description of the product or service
Quantity The number of units sold on this line
List Price The unit price of product or service in this line
Item Discount Amount Direct discount if applied
Item Discount Percent Percentage discount if applied
Discount Amount Direct discount of the Quote, SO, PO or Invoice if applied. This field, although repeated in every line of the import CSV will be applied only once to the total of the record being imported
Discount Percent Percentage discount of the Quote, SO, PO or Invoice if applied. This field, although repeated in every line of the import CSV will be applied only once to the total of the record being imported
S&H Amount Shipping and handling costs of the Quote, SO, PO or Invoice. This field, although repeated in every line of the import CSV will be applied only once to the total of the record being imported
Currency Currency the record should be created with. This currency must exist in the system, it will NOT be created. This field, although repeated in every line of the import CSV will be applied only once to the total of the record being imported


So, to import an inventory module we need a flat or denormalized view of the record where all the information of the record is repeated as many times as product lines are required. In other words, our CSV file will have one row per each product line in a record, each row will have different values in the special product line columns and the exact same values in the common base field of the entity.

For example, this CSV file contains 3 SalesOrder records, The first one has 4 product lines, 2 products and 2 services:

Products::::Cd-R CD Recordable
Products::::Double Panel See-thru Clipboard
Services::::srv
Services::::srv2

the other two Sales Order have two products each. As can be seen the base fields like "Subject", "Contact", "Organization" or Billing and Shipping details are all repeated identically on all lines. When importing only the values of one row will be used, but they should be repeated on all lines.

The import process will group lines by the "Subject" column so this column MUST be unique for each record in the CSV file. This is very important because this is how the program identifies which product lines belong to each record. Let me repeat that again in a more colorful way:

The import process will group lines by the "Subject" column so this column MUST be unique for each record in the CSV file. This is very important because this is how the program identifies which product lines belong to each record.

See next the contents of the CSV file described.

SubjectOpportunity NameCustomer NoSalesOrder NoQuote NamePurchase OrderContact NameDue DateCarrierPendingStatusSales CommissionExcise DutyOrganization NameAssigned ToCreated TimeModified TimeBilling AddressShipping AddressBilling PO BoxShipping PO BoxBilling CityShipping CityBilling StateShipping StateBilling Postal CodeShipping Postal CodeBilling CountryShipping CountryTerms & ConditionsDescriptionEnable RecurringFrequencyStart PeriodEnd PeriodPayment DurationInvoice StatusAdjustmentTotalSub TotalTax TypeDiscount AmountDiscount PercentS&H AmountCurrencyItem NameQuantityList PriceItem CommentItem Discount AmountItem Discount PercentVATSalesServiceV.A.T.
SO_vtiger SO1Quotes::::Vendor_Quote Contacts::::Jones Barbara2015-04-13FedEx Created0.000.00Accounts::::t3M Invest A/Sadmin2014-06-26 23:12:152015-06-02 20:44:51999 Baker Way123 Anywhere Street San MateoSan JoseCACA1519163999USAUSA 0 100.0004232.9004182.900individual100.0000.0050.000USA DollarsProducts::::Cd-R CD Recordable3.00130.000This is test comment for product of Quotes20.0000.0014.500.0012.500.00
SO_vtiger SO1Quotes::::Vendor_Quote Contacts::::Jones Barbara2015-04-13FedEx Created0.000.00Accounts::::t3M Invest A/Sadmin2014-06-26 23:12:152015-06-02 20:44:51999 Baker Way123 Anywhere Street San MateoSan JoseCACA1519163999USAUSA 0 100.0004232.9004182.900individual100.0000.0050.000USA DollarsProducts::::Double Panel See-thru Clipboard3.001230.000This is test comment for product of SalesOrder200.0000.000.000.000.000.00
SO_vtiger SO1Quotes::::Vendor_Quote Contacts::::Jones Barbara2015-04-13FedEx Created0.000.00Accounts::::t3M Invest A/Sadmin2014-06-26 23:12:152015-06-02 20:44:51999 Baker Way123 Anywhere Street San MateoSan JoseCACA1519163999USAUSA 0 100.0004232.9004182.900individual100.0000.0050.000USA DollarsServices::::srv3.001.000 0.0000.000.000.000.000.00
SO_vtiger SO1Quotes::::Vendor_Quote Contacts::::Jones Barbara2015-04-13FedEx Created0.000.00Accounts::::t3M Invest A/Sadmin2014-06-26 23:12:152015-06-02 20:44:51999 Baker Way123 Anywhere Street San MateoSan JoseCACA1519163999USAUSA 0 100.0004232.9004182.900individual100.0000.0050.000USA DollarsServices::::srv222.0010.000 0.0000.000.000.000.000.00
SO_vtiger5usrp SO3Quotes::::Vendor_Quote Contacts::::Miller Maria2007-08-11USPS Approved0.000.00Accounts::::demovtigeradmin2014-06-26 23:12:172014-06-26 23:12:17345 Sugar Blvd.123 Anywhere Street San FranciscoSan JoseCACA8269663999USAUSA 0 100.0001080.0001030.000individual100.0000.0050.000USA DollarsProducts::::Vtiger 5 Users Pack1.001230.000This is test comment for product of SalesOrder200.0000.000.000.000.000.00
SO_vtiger5usrp SO3Quotes::::Vendor_Quote Contacts::::Miller Maria2007-08-11USPS Approved0.000.00Accounts::::demovtigeradmin2014-06-26 23:12:172014-06-26 23:12:17345 Sugar Blvd.123 Anywhere Street San FranciscoSan JoseCACA8269663999USAUSA 0 100.0001080.0001030.000individual100.0000.0050.000USA DollarsProducts::::Vtiger 50 Users Pack1.001230.000This is test comment for product of SalesOrder200.0000.000.000.000.000.00
SO_vendtl SO5Quotes::::SO_Quote Contacts::::Wilson Susan2007-02-28BlueDart Approved0.000.00Accounts::::vtigeruseradmin2014-06-26 23:12:192014-06-26 23:12:19123 Anywhere Street123 Anywhere Street SunnyvaleSan JoseCACA7038863999USAUSA 0 100.0001080.0001030.000individual100.0000.0050.000USA DollarsProducts::::Vtiger 5 Users Pack1.001230.000This is test comment for product of SalesOrder200.0000.000.000.000.000.00
SO_vendtl SO5Quotes::::SO_Quote Contacts::::Wilson Susan2007-02-28BlueDart Approved0.000.00Accounts::::vtigeruseradmin2014-06-26 23:12:192014-06-26 23:12:19123 Anywhere Street123 Anywhere Street SunnyvaleSan JoseCACA7038863999USAUSA 0 100.0001080.0001030.000individual100.0000.0050.000USA DollarsProducts::::Brother Ink Jet Cartridge1.001230.000This is test comment for product of SalesOrder200.0000.000.000.000.000.00

Taxes

Currently, due to limitations of the system we cannot define the tax settings of the record being imported. All taxes defined in the system at the moment of the import will be applied to the records created.
All taxes defined in the system at the moment of the import will be applied to the records created.
This means that you have to group your import records in sets of identical taxes, define and set those taxes in the application and import the set. Then repeat the process for each set of changing taxes.
Updates

Table of Contents