ItemInventoryAdd

Adds an inventory item. An inventory item is any merchandise or part that a business purchases, tracks as inventory, and then resells. In QuickBooks, information about an inventory item is grouped into three categories:Puchase Information includes PurchaseDesc, PurchaseCost, COGSAccountRef, and PrefVendorRef. Sales Information includes SalesDesc, SalesPrice, and SalesTaxCodeRef. Inventory Information includes AssetAccountRef, ReorderPoint, QuantityOnHand, TotalValue, and InventoryDate. The Life Cycle of Inventory Items and Effects of Sales and Purchases The value of inventory is set when an inventory item is created or bought. QuickBooks uses cost averaging and decreases the value of the inventory asset account at the price when the sale is recorded. So, lets say a company starts carrying widgets as inventory items. First the inventory item must be created in QuickBooks. If the widgets are already in inventory based on a purchase made that will not be recorded in QuickBooks, the user or application would add the inventory item description along with the quantity on hand and the value (total purchase price) of the quantity on hand. If the purchase is to be recorded in QuickBooks the inventory item would be created with quantity and value of 0 (zero). Then a bill would be added to QB which would increase the inventory quantity and value. Lets say we bought 10 widgets for $100. QuickBooks would then consider each widget to be worth $10. The next day a customer buys 5 widgets for $20 each. A sales receipt or invoice is created for the purchase, the quantity of widgets is reduced by 5, to 5 and the value is reduced by $50 to $50. The inventory asset account is reduced by $50 and the undeposited funds or accounts receivable account is increased by $100. It appears that widgets will be a big seller, so the small business owner goes out and buys 10 more widgets. However, the supplier has also noticed a widget buying trend, so he’s increased the price to $25 each. So now our quantity is increased from 5 to 15 and the value is increased from $50 to $300, so they are considered to be worth $20 each. After purchasing the widgets another customer decides to buy 10 widgets but the price has been raised to $50 each. After the sales receipt or invoice is entered, the inventory is reduced to 5 and the value is reduced to $100. The inventory asset account is reduced by $200 and the undeposited funds or accounts receivable account is increased by $500. An ItemInventoryRef aggregate refers to an inventory item. In a request, if an ItemInventoryRef aggregate includes both FullName and ListID, FullName will be ignored.


Request

Response

XMLOPS

VB.NET

C#

Tag Type Max length Implementation Required

IItemInventoryAdd

Adds an inventory item. An inventory item is any merchandise or part that a business purchases, tracks as inventory, and then resells. In QuickBooks, information about an inventory item is grouped into three categories:Puchase Information includes PurchaseDesc, PurchaseCost, COGSAccountRef, and PrefVendorRef. Sales Information includes SalesDesc, SalesPrice, and SalesTaxCodeRef. Inventory Information includes AssetAccountRef, ReorderPoint, QuantityOnHand, TotalValue, and InventoryDate. The Life Cycle of Inventory Items and Effects of Sales and Purchases The value of inventory is set when an inventory item is created or bought. QuickBooks uses cost averaging and decreases the value of the inventory asset account at the price when the sale is recorded. So, lets say a company starts carrying widgets as inventory items. First the inventory item must be created in QuickBooks. If the widgets are already in inventory based on a purchase made that will not be recorded in QuickBooks, the user or application would add the inventory item description along with the quantity on hand and the value (total purchase price) of the quantity on hand. If the purchase is to be recorded in QuickBooks the inventory item would be created with quantity and value of 0 (zero). Then a bill would be added to QB which would increase the inventory quantity and value. Lets say we bought 10 widgets for $100. QuickBooks would then consider each widget to be worth $10. The next day a customer buys 5 widgets for $20 each. A sales receipt or invoice is created for the purchase, the quantity of widgets is reduced by 5, to 5 and the value is reduced by $50 to $50. The inventory asset account is reduced by $50 and the undeposited funds or accounts receivable account is increased by $100. It appears that widgets will be a big seller, so the small business owner goes out and buys 10 more widgets. However, the supplier has also noticed a widget buying trend, so he’s increased the price to $25 each. So now our quantity is increased from 5 to 15 and the value is increased from $50 to $300, so they are considered to be worth $20 each. After purchasing the widgets another customer decides to buy 10 widgets but the price has been raised to $50 each. After the sales receipt or invoice is entered, the inventory is reduced to 5 and the value is reduced to $100. The inventory asset account is reduced by $200 and the undeposited funds or accounts receivable account is increased by $500. An ItemInventoryRef aggregate refers to an inventory item. In a request, if an ItemInventoryRef aggregate includes both FullName and ListID, FullName will be ignored.
       

defMacro

You use a macro in a request message set if you need to create some object in one request, then refer to it in a subsequent request within that same message set. For example, you could create an inventory item and then include that item as a line item in a sales order all in one request message set, rather than create the item, query for it, then include it in a separate SalesOrderAdd request. In this latter case, you are accessing QBPOS three times, versus only once, using macros. The item to be referenced is specified via the defmacro. The actual reference to that item in the succeeding request is done via the use macro, as follows: ItemInventoryAdd defMacro=”ListID:Inv1” In the above line, you simply replace Inv1 with the name you want to give the macro. When you reference this macro in another request (one that requires that object’s listID) in the same message set, you use this syntax: ListID useMacro=”ListID:Inv1” This is covered in more detail in the Programming Guide.
IQBStringType   2.0  

ALU

Alternate Lookup. A user-defined identifier to be used to look up an item. Typically, this field contains such as the manufacturer’s part number, but it can contain any text descriptions, catalog numbers, etc. Duplicate Alternate Lookups are not allowed. Do not duplicate the Item # or UPC in this field. This will adversely affect performance for item lookups.
IQBStringType 20 chars    

Attribute

A field used to describe an item characteristic, typically color, pattern, material, or a second size. One to eight characters.
IQBStringType 12 chars    

COGSAccount

This field is used if you are using QBPOS with QuickBooks. In QBPOS, in company preferences->Financial->Accounts, the end user specifies the QuickBooks income account and the QuickBooks Cost of Goods Sold (COGS) account for each type (inventory, assembly, special order, etc.) of QBPOS item. If you are using QuickBooks with QBPOS, you must specify in this COGSAccount field the COGS value specified in company preferences for inventory items.
IQBStringType      

Cost

The average cost of the item. Cost is automatically updated by receiving vouchers or manually updated by adjustment memos.
IQBAmountType      

DepartmentListID

The ListID of the department to be associated with this object, for example with this inventory item. The department must either exist in the QBPOS company already or you can replace the ListID value with a macro.
IQBIDType     Y

useMacro

You use a macro in a request message set if you need to create some object in one request, then refer to it in a subsequent request within that same message set. For example, you could create an inventory item and then include that item as a line item in a sales order all in one request message set, rather than create the item, query for it, then include it in a separate SalesOrderAdd request. In this latter case, you are accessing QBPOS three times, versus only once, using macros. The item to be referenced is specified via the defmacro. The actual reference to that item in the succeeding request is done via the use macro, as follows: ItemInventoryAdd defMacro=”ListID:Inv1” In the above line, you simply replace Inv1 with the name you want to give the macro. When you reference this macro in another request (one that requires that object’s listID) in the same message set, you use this syntax: ListID useMacro=”ListID:Inv1” This is covered in more detail in the Programming Guide.
IQBStringType   2.0  

Desc1

The principal item description field. This description is printed on receipts. For some versions of QBPOS, (Pro), this must be the same for all members of a style. Changes to this field can be applied to an item or to an entire style.
IQBStringType 30 chars    

Desc2

Secondary description field usually used for any additional information to describe this particular item, such as a vendor’s catalog number. Also can be used for additional information at the point of sale.
IQBStringType      

IncomeAccount

This field is used if you are using QBPOS with QuickBooks. In QBPOS, in company preferences->Financial->Accounts, the end user specifies the QuickBooks income account and the QuickBooks Cost of Goods Sold (COGS) account for each type (inventory, assembly, special order, etc.) of QBPOS item. If you are using QuickBooks with QBPOS, you must specify in this IncomeAccount field the Income Account value specified in company preferences for inventory items.
IQBStringType      

IsEligibleForCommission

Indicates whether the item is eligible for a commission.
IQBBoolType      

IsPrintingTags

Indicates whether the Print Tags checkbox is checked for this item, that is, whether this item is included in the list of items for which price tags are to be printed.
IQBBoolType      

IsUnorderable

Indicates whether the item is orderable. Items flagged as Unorderable do not show up on the reorder reminder list when their on hand number falls below the reorder point.
IQBBoolType      

IsEligibleForRewards

Indicator if item is eligible for rewards.
IQBBoolType   3.0  

IsWebItem

Indicator if item is a web item.
IQBBoolType   3.0  

ItemType

The type of item being added.
IQBENItemTypeType      

MarginPercent

Margin. The profit expressed as a percentage of the price. If defined in a department record, is used to calculate the prices of new items as they are added to inventory. Notice that modifying the margin in inventory automatically causes your price(s) and the markup (Mup %) to be recalculated. Margin % = price – costprice ´ 100
IQBIntType      

MarkupPercent

The item profit expressed as a percentage over the cost. Works in the same manner as Mrg %. Making an entry in this field causes QBPOS to recalculate your item prices and margin.
IQBIntType      

MSRP

Manufacturer’s Suggest Retail Price. Reference price that is printed on price tags if defined in inventory.
IQBAmountType      

OnHandStore01

The quantity of the item on hand in inventory.
IQBQuanType      

OnHandStore02

The quantity of the item on hand in inventory in store 2, valid only for multi-store versions of QBPOS.
IQBQuanType      

OnHandStore03

The quantity of the item on hand in inventory in store 3, valid only for multi-store versions of QBPOS.
IQBQuanType      

OnHandStore04

The quantity of the item on hand in inventory in store 4, valid only for multi-store versions of QBPOS.
IQBQuanType      

OnHandStore05

The quantity of the item on hand in inventory in store 5, valid only for multi-store versions of QBPOS.
IQBQuanType      

OnHandStore06

The quantity of the item on hand in inventory in store 6, valid only for multi-store versions of QBPOS.
IQBQuanType      

OnHandStore07

The quantity of the item on hand in inventory in store 7, valid only for multi-store versions of QBPOS.
IQBQuanType      

OnHandStore08

The quantity of the item on hand in inventory in store 8, valid only for multi-store versions of QBPOS.
IQBQuanType      

OnHandStore09

The quantity of the item on hand in inventory in store 9, valid only for multi-store versions of QBPOS.
IQBQuanType      

OnHandStore10

The quantity of the item on hand in inventory in store 10, valid only for multi-store versions of QBPOS.
IQBQuanType      

OnHandStore11

The quantity of the item on hand in inventory in store 11, valid only for multi-store versions of QBPOS.
IQBQuanType   3.0  

OnHandStore12

The quantity of the item on hand in inventory in store 12, valid only for multi-store versions of QBPOS.
IQBQuanType   3.0  

OnHandStore13

The quantity of the item on hand in inventory in store 13, valid only for multi-store versions of QBPOS.
IQBQuanType   3.0  

OnHandStore14

The quantity of the item on hand in inventory in store 14, valid only for multi-store versions of QBPOS.
IQBQuanType   3.0  

OnHandStore15

The quantity of the item on hand in inventory in store 15, valid only for multi-store versions of QBPOS.
IQBQuanType   3.0  

OnHandStore16

The quantity of the item on hand in inventory in store 16, valid only for multi-store versions of QBPOS.
IQBQuanType   3.0  

OnHandStore17

The quantity of the item on hand in inventory in store 17, valid only for multi-store versions of QBPOS.
IQBQuanType   3.0  

OnHandStore18

The quantity of the item on hand in inventory in store 18, valid only for multi-store versions of QBPOS.
IQBQuanType   3.0  

OnHandStore19

The quantity of the item on hand in inventory in store 19, valid only for multi-store versions of QBPOS.
IQBQuanType   3.0  

OnHandStore20

The quantity of the item on hand in inventory in store 20, valid only for multi-store versions of QBPOS.
IQBQuanType   3.0  

ReorderPointStore01

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore02

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore03

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore04

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore05

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore06

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore07

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore08

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore09

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore10

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore11

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore12

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore13

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore14

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore15

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore16

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore17

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore18

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore19

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore20

Reorder point for item.
IQBQuanType   3.0  

OrderByUnit

If you are using multiple units of measure instead of a single unit of measure, you can use one UOM to order by (OrderByUnit) and another to sell by (SellByUnit). The OrderByUnit value is used as the default unit of measure when you order this item from vendors. You can override this in a PurchaseOrderAdd by specifying a different unit of measure in that request.
IQBStringType 20 chars 2.0  

OrderCost

Notice that the Order cost (the Order Cost field in the New Item form) is different than inventory cost (Cost field). An item’s order cost is the current cost you pay a vendor for the item, while inventory cost is the averaged cost of the current on-hand quantity of the item. Over time it is normal for your order cost to move higher than your averaged cost, as you may have some quantity left in stock that was purchased at a lower cost. When you make a purchase order, the order cost in inventory is suggested as the purchase order cost in the Purchase Order form in QBPOS. You can edit this cost on the PO if necessary. When you receive the ordered items, the voucher that references the PO will automatically take its cost from the PO (if not referencing a PO, the order cost from inventory is suggested as the voucher cost). When a voucher with a changed cost is updated it will automatically update the Order Cost field in inventory, so that the new order cost is suggested on the next PO made for the item from the same vendor. QBPOS supports the use of fractional-cent costs with up to five decimal places.
IQBAmountType      

Price1

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price2

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price3

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price4

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price5

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType   1.1  

ReorderPoint

The quantity at which an item should be reordered.
IQBQuanType      

SellByUnit

If you are using multiple units of measure instead of a single unit of measure, you can use one UOM to order by (OrderByUnit) and another to sell by (SellByUnit). The SellByUnit value is used as the default unit of measure when you sell the item, but you can override it in the SalesReceiptAdd by specifying a different value for the unit of measure.
IQBStringType 20 chars 2.0  

SerialFlag

The serial flag indicates whether the user is prompted to enter a serial number when the item is listed on documents. Select PROMPT to be prompted to enter a serial number, select OPTIONAL (default) and the user will not be prompted but can still enter a serial number on the document, as desired.
IQBENSerialFlagType      

Size

The size of an item; 1 to 8 characters. This field can also be used to describe a second item attribute other than size if desired.
IQBStringType 12 chars    

TaxCode

In the QBPOS UI, you specify sales tax behavior by creating sales tax locations and tax codes. (What the QBPOS UI calls a “tax location” is what the SDK calls a “tax category”.) The tax code and its name is shared between all tax categories (locations): that is, all tax categories will have the same set of tax codes. However, the actual tax rate(s) that are used in a given tax code can vary from one tax category to the next. The tax code rates that are actually applied at transaction time are those that are in the tax category that is currently specified as the default tax category (location) in sales tax preferences. You create and modify tax categories and tax codes using the TaxCategoryAdd/Mod and TaxCodeAdd/Mod requests respectively. You assign tax code rates to a tax code within a tax category using the TaxRecordMod request. You query for the tax preference information (tax rate information for each tax code under each tax category) using the CompanyQuery. However, currently the default tax category (location) can be specified only within the QBPOS UI. When you create or modify an inventory item in QBPOS, you apply a tax code to it, but not a tax category. At sales transaction time, the actual sales tax is calculated for each item, based on the tax code assigned to that item and the tax code rate(s) for that tax code under the tax category currently specified as the default tax category (location).
IQBStringType      

UnitOfMeasure

If the company is using only a single unit of measure, this specifies the unit of measure for the item. If the company is using multiple units of measure, this specifies the base unit of measure for the item. Inventory quantities are tracked and reported in terms of this base unit.
IQBStringType 20 chars 1.1  

UPC

Universal Product Code. The item’s unique UPC/EAN/ISBN identifier. This field must be 13 characters. If a shorter number is entered, QBPOS uses an appropriate algorithm to lengthen the entry to fill the 13-character field.
IQBStringType 18 chars    

VendorListID

The listID of the vendor being referenced in this object reference.
IQBIDType      

useMacro

You use a macro in a request message set if you need to create some object in one request, then refer to it in a subsequent request within that same message set. For example, you could create an inventory item and then include that item as a line item in a sales order all in one request message set, rather than create the item, query for it, then include it in a separate SalesOrderAdd request. In this latter case, you are accessing QBPOS three times, versus only once, using macros. The item to be referenced is specified via the defmacro. The actual reference to that item in the succeeding request is done via the use macro, as follows: ItemInventoryAdd defMacro=”ListID:Inv1” In the above line, you simply replace Inv1 with the name you want to give the macro. When you reference this macro in another request (one that requires that object’s listID) in the same message set, you use this syntax: ListID useMacro=”ListID:Inv1” This is covered in more detail in the Programming Guide.
IQBStringType   2.0  

WebDesc

Description of item on the web.
IQBStringType   3.0  

WebPrice

Price of item on the web.
IQBAmountType   3.0  

Manufacturer

Manufacturer of item.
IQBStringType 50 chars 3.0  

Weight

Weight of item.
IQBFloatType   3.0  

Keywords

Keywords of item.
IQBStringType   3.0  

WebCategories

Category of item on the web.
IQBStringType   3.0  

UnitOfMeasure1

Used to support multiple units of measure. In addition to the base unit of measure for an inventory item, you can specify up to three other units of measure. Any of these units of measure can be applied when you order (PurchaseOrderAdd) or sell (SalesReceiptAdd) the item.
IUnitOfMeasure1   2.0  

ALU

Alternate Lookup. A user-defined identifier to be used to look up an item. Typically, this field contains such as the manufacturer’s part number, but it can contain any text descriptions, catalog numbers, etc. Duplicate Alternate Lookups are not allowed. Do not duplicate the Item # or UPC in this field. This will adversely affect performance for item lookups.
IQBStringType 20 chars    

MSRP

Manufacturer’s Suggest Retail Price. Reference price that is printed on price tags if defined in inventory.
IQBAmountType      

NumberOfBaseUnits

If you use multiple units of measure, rather than a single UOM, you need to select one of the UOMs as the base unit. This base unit should be the smallest unit that you sell by. Inventory quantities are always expressed in terms of this base unit.
IQBQuanType      

Price1

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price2

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price3

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price4

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price5

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

UnitOfMeasure

If the company is using only a single unit of measure, this specifies the unit of measure for the item. If the company is using multiple units of measure, this specifies the base unit of measure for the item. Inventory quantities are tracked and reported in terms of this base unit.
IQBStringType 20 chars    

UPC

Universal Product Code. The item’s unique UPC/EAN/ISBN identifier. This field must be 13 characters. If a shorter number is entered, QBPOS uses an appropriate algorithm to lengthen the entry to fill the 13-character field.
IQBStringType 18 chars    

UnitOfMeasure2

Used to support multiple units of measure. In addition to the base unit of measure for an inventory item, you can specify up to three other units of measure. Any of these units of measure can be applied when you order (PurchaseOrderAdd) or sell (SalesReceiptAdd) the item.
IUnitOfMeasure2   2.0  

ALU

Alternate Lookup. A user-defined identifier to be used to look up an item. Typically, this field contains such as the manufacturer’s part number, but it can contain any text descriptions, catalog numbers, etc. Duplicate Alternate Lookups are not allowed. Do not duplicate the Item # or UPC in this field. This will adversely affect performance for item lookups.
IQBStringType 20 chars    

MSRP

Manufacturer’s Suggest Retail Price. Reference price that is printed on price tags if defined in inventory.
IQBAmountType      

NumberOfBaseUnits

If you use multiple units of measure, rather than a single UOM, you need to select one of the UOMs as the base unit. This base unit should be the smallest unit that you sell by. Inventory quantities are always expressed in terms of this base unit.
IQBQuanType      

Price1

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price2

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price3

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price4

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price5

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

UnitOfMeasure

If the company is using only a single unit of measure, this specifies the unit of measure for the item. If the company is using multiple units of measure, this specifies the base unit of measure for the item. Inventory quantities are tracked and reported in terms of this base unit.
IQBStringType 20 chars    

UPC

Universal Product Code. The item’s unique UPC/EAN/ISBN identifier. This field must be 13 characters. If a shorter number is entered, QBPOS uses an appropriate algorithm to lengthen the entry to fill the 13-character field.
IQBStringType 18 chars    

UnitOfMeasure3

Used to support multiple units of measure. In addition to the base unit of measure for an inventory item, you can specify up to three other units of measure. Any of these units of measure can be applied when you order (PurchaseOrderAdd) or sell (SalesReceiptAdd) the item.
IUnitOfMeasure3   2.0  

ALU

Alternate Lookup. A user-defined identifier to be used to look up an item. Typically, this field contains such as the manufacturer’s part number, but it can contain any text descriptions, catalog numbers, etc. Duplicate Alternate Lookups are not allowed. Do not duplicate the Item # or UPC in this field. This will adversely affect performance for item lookups.
IQBStringType 20 chars    

MSRP

Manufacturer’s Suggest Retail Price. Reference price that is printed on price tags if defined in inventory.
IQBAmountType      

NumberOfBaseUnits

If you use multiple units of measure, rather than a single UOM, you need to select one of the UOMs as the base unit. This base unit should be the smallest unit that you sell by. Inventory quantities are always expressed in terms of this base unit.
IQBQuanType      

Price1

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price2

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price3

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price4

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price5

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

UnitOfMeasure

If the company is using only a single unit of measure, this specifies the unit of measure for the item. If the company is using multiple units of measure, this specifies the base unit of measure for the item. Inventory quantities are tracked and reported in terms of this base unit.
IQBStringType 20 chars    

UPC

Universal Product Code. The item’s unique UPC/EAN/ISBN identifier. This field must be 13 characters. If a shorter number is entered, QBPOS uses an appropriate algorithm to lengthen the entry to fill the 13-character field.
IQBStringType 18 chars    

VendorInfo2

Available for certain QBPOS versions, such as Pro versions. If multiple vendors are used for an item, up to 5 vendors can be specified. Each vendor can have a unique UPC, Alternate Lokoup, and order cost.
IVendorInfo2      

ALU

Alternate Lookup. A user-defined identifier to be used to look up an item. Typically, this field contains such as the manufacturer’s part number, but it can contain any text descriptions, catalog numbers, etc. Duplicate Alternate Lookups are not allowed. Do not duplicate the Item # or UPC in this field. This will adversely affect performance for item lookups.
IQBStringType 20 chars    

OrderCost

Notice that the Order cost (the Order Cost field in the New Item form) is different than inventory cost (Cost field). An item’s order cost is the current cost you pay a vendor for the item, while inventory cost is the averaged cost of the current on-hand quantity of the item. Over time it is normal for your order cost to move higher than your averaged cost, as you may have some quantity left in stock that was purchased at a lower cost. When you make a purchase order, the order cost in inventory is suggested as the purchase order cost in the Purchase Order form in QBPOS. You can edit this cost on the PO if necessary. When you receive the ordered items, the voucher that references the PO will automatically take its cost from the PO (if not referencing a PO, the order cost from inventory is suggested as the voucher cost). When a voucher with a changed cost is updated it will automatically update the Order Cost field in inventory, so that the new order cost is suggested on the next PO made for the item from the same vendor. QBPOS supports the use of fractional-cent costs with up to five decimal places.
IQBAmountType      

UPC

Universal Product Code. The item’s unique UPC/EAN/ISBN identifier. This field must be 13 characters. If a shorter number is entered, QBPOS uses an appropriate algorithm to lengthen the entry to fill the 13-character field.
IQBStringType 18 chars    

VendorListID

The listID of the vendor being referenced in this object reference.
IQBIDType     Y

useMacro

You use a macro in a request message set if you need to create some object in one request, then refer to it in a subsequent request within that same message set. For example, you could create an inventory item and then include that item as a line item in a sales order all in one request message set, rather than create the item, query for it, then include it in a separate SalesOrderAdd request. In this latter case, you are accessing QBPOS three times, versus only once, using macros. The item to be referenced is specified via the defmacro. The actual reference to that item in the succeeding request is done via the use macro, as follows: ItemInventoryAdd defMacro=”ListID:Inv1” In the above line, you simply replace Inv1 with the name you want to give the macro. When you reference this macro in another request (one that requires that object’s listID) in the same message set, you use this syntax: ListID useMacro=”ListID:Inv1” This is covered in more detail in the Programming Guide.
IQBStringType   2.0  

VendorInfo3

Available for certain QBPOS versions, such as Pro versions. If multiple vendors are used for an item, up to 5 vendors can be specified. Each vendor can have a unique UPC, Alternate Lokoup, and order cost.
IVendorInfo3      

ALU

Alternate Lookup. A user-defined identifier to be used to look up an item. Typically, this field contains such as the manufacturer’s part number, but it can contain any text descriptions, catalog numbers, etc. Duplicate Alternate Lookups are not allowed. Do not duplicate the Item # or UPC in this field. This will adversely affect performance for item lookups.
IQBStringType 20 chars    

OrderCost

Notice that the Order cost (the Order Cost field in the New Item form) is different than inventory cost (Cost field). An item’s order cost is the current cost you pay a vendor for the item, while inventory cost is the averaged cost of the current on-hand quantity of the item. Over time it is normal for your order cost to move higher than your averaged cost, as you may have some quantity left in stock that was purchased at a lower cost. When you make a purchase order, the order cost in inventory is suggested as the purchase order cost in the Purchase Order form in QBPOS. You can edit this cost on the PO if necessary. When you receive the ordered items, the voucher that references the PO will automatically take its cost from the PO (if not referencing a PO, the order cost from inventory is suggested as the voucher cost). When a voucher with a changed cost is updated it will automatically update the Order Cost field in inventory, so that the new order cost is suggested on the next PO made for the item from the same vendor. QBPOS supports the use of fractional-cent costs with up to five decimal places.
IQBAmountType      

UPC

Universal Product Code. The item’s unique UPC/EAN/ISBN identifier. This field must be 13 characters. If a shorter number is entered, QBPOS uses an appropriate algorithm to lengthen the entry to fill the 13-character field.
IQBStringType 18 chars    

VendorListID

The listID of the vendor being referenced in this object reference.
IQBIDType     Y

useMacro

You use a macro in a request message set if you need to create some object in one request, then refer to it in a subsequent request within that same message set. For example, you could create an inventory item and then include that item as a line item in a sales order all in one request message set, rather than create the item, query for it, then include it in a separate SalesOrderAdd request. In this latter case, you are accessing QBPOS three times, versus only once, using macros. The item to be referenced is specified via the defmacro. The actual reference to that item in the succeeding request is done via the use macro, as follows: ItemInventoryAdd defMacro=”ListID:Inv1” In the above line, you simply replace Inv1 with the name you want to give the macro. When you reference this macro in another request (one that requires that object’s listID) in the same message set, you use this syntax: ListID useMacro=”ListID:Inv1” This is covered in more detail in the Programming Guide.
IQBStringType   2.0  

VendorInfo4

Available for certain QBPOS versions, such as Pro versions. If multiple vendors are used for an item, up to 5 vendors can be specified. Each vendor can have a unique UPC, Alternate Lokoup, and order cost.
IVendorInfo4      

ALU

Alternate Lookup. A user-defined identifier to be used to look up an item. Typically, this field contains such as the manufacturer’s part number, but it can contain any text descriptions, catalog numbers, etc. Duplicate Alternate Lookups are not allowed. Do not duplicate the Item # or UPC in this field. This will adversely affect performance for item lookups.
IQBStringType 20 chars    

OrderCost

Notice that the Order cost (the Order Cost field in the New Item form) is different than inventory cost (Cost field). An item’s order cost is the current cost you pay a vendor for the item, while inventory cost is the averaged cost of the current on-hand quantity of the item. Over time it is normal for your order cost to move higher than your averaged cost, as you may have some quantity left in stock that was purchased at a lower cost. When you make a purchase order, the order cost in inventory is suggested as the purchase order cost in the Purchase Order form in QBPOS. You can edit this cost on the PO if necessary. When you receive the ordered items, the voucher that references the PO will automatically take its cost from the PO (if not referencing a PO, the order cost from inventory is suggested as the voucher cost). When a voucher with a changed cost is updated it will automatically update the Order Cost field in inventory, so that the new order cost is suggested on the next PO made for the item from the same vendor. QBPOS supports the use of fractional-cent costs with up to five decimal places.
IQBAmountType      

UPC

Universal Product Code. The item’s unique UPC/EAN/ISBN identifier. This field must be 13 characters. If a shorter number is entered, QBPOS uses an appropriate algorithm to lengthen the entry to fill the 13-character field.
IQBStringType 18 chars    

VendorListID

The listID of the vendor being referenced in this object reference.
IQBIDType     Y

useMacro

You use a macro in a request message set if you need to create some object in one request, then refer to it in a subsequent request within that same message set. For example, you could create an inventory item and then include that item as a line item in a sales order all in one request message set, rather than create the item, query for it, then include it in a separate SalesOrderAdd request. In this latter case, you are accessing QBPOS three times, versus only once, using macros. The item to be referenced is specified via the defmacro. The actual reference to that item in the succeeding request is done via the use macro, as follows: ItemInventoryAdd defMacro=”ListID:Inv1” In the above line, you simply replace Inv1 with the name you want to give the macro. When you reference this macro in another request (one that requires that object’s listID) in the same message set, you use this syntax: ListID useMacro=”ListID:Inv1” This is covered in more detail in the Programming Guide.
IQBStringType   2.0  

VendorInfo5

Available for certain QBPOS versions, such as Pro versions. If multiple vendors are used for an item, up to 5 vendors can be specified. Each vendor can have a unique UPC, Alternate Lokoup, and order cost.
IVendorInfo5      

ALU

Alternate Lookup. A user-defined identifier to be used to look up an item. Typically, this field contains such as the manufacturer’s part number, but it can contain any text descriptions, catalog numbers, etc. Duplicate Alternate Lookups are not allowed. Do not duplicate the Item # or UPC in this field. This will adversely affect performance for item lookups.
IQBStringType 20 chars    

OrderCost

Notice that the Order cost (the Order Cost field in the New Item form) is different than inventory cost (Cost field). An item’s order cost is the current cost you pay a vendor for the item, while inventory cost is the averaged cost of the current on-hand quantity of the item. Over time it is normal for your order cost to move higher than your averaged cost, as you may have some quantity left in stock that was purchased at a lower cost. When you make a purchase order, the order cost in inventory is suggested as the purchase order cost in the Purchase Order form in QBPOS. You can edit this cost on the PO if necessary. When you receive the ordered items, the voucher that references the PO will automatically take its cost from the PO (if not referencing a PO, the order cost from inventory is suggested as the voucher cost). When a voucher with a changed cost is updated it will automatically update the Order Cost field in inventory, so that the new order cost is suggested on the next PO made for the item from the same vendor. QBPOS supports the use of fractional-cent costs with up to five decimal places.
IQBAmountType      

UPC

Universal Product Code. The item’s unique UPC/EAN/ISBN identifier. This field must be 13 characters. If a shorter number is entered, QBPOS uses an appropriate algorithm to lengthen the entry to fill the 13-character field.
IQBStringType 18 chars    

VendorListID

The listID of the vendor being referenced in this object reference.
IQBIDType     Y

useMacro

You use a macro in a request message set if you need to create some object in one request, then refer to it in a subsequent request within that same message set. For example, you could create an inventory item and then include that item as a line item in a sales order all in one request message set, rather than create the item, query for it, then include it in a separate SalesOrderAdd request. In this latter case, you are accessing QBPOS three times, versus only once, using macros. The item to be referenced is specified via the defmacro. The actual reference to that item in the succeeding request is done via the use macro, as follows: ItemInventoryAdd defMacro=”ListID:Inv1” In the above line, you simply replace Inv1 with the name you want to give the macro. When you reference this macro in another request (one that requires that object’s listID) in the same message set, you use this syntax: ListID useMacro=”ListID:Inv1” This is covered in more detail in the Programming Guide.
IQBStringType   2.0  

IsEcommerce

For Receipts: ​Value will be 1 when the Receipt is generated for sale transaction done in e-commerce though the supplier/partner. For Inventory: Value will be 1 when the Inventory created through the E-commerce supplier/partner.
IQBBoolType   4.0  

OnlineStoreNames

Name of the E-Commerce Player store name. E.g. Store1, Store 2, etc…
IQBStringType 1500 chars 4.0  

IncludeRetElementList

You can use the IncludeRetElement feature to restrict the data returned in the response to the specified qbposXML field here. If you do this, only those elements specified will be returned. To use this feature, you simply add the qbposXML element name to the IncludeRetElementList. The following example shows how to do this, specifying that only the CreatedBy and ClockOutTime elements are to be returned in the TimeEntryAdd response: Dim MyTimeEntry As ITimeEntryAdd Set MyTimeEntry = requestMsgSet.AppendTimeEntryAddRq MyTimeEntry.IncludeRetElementList.Add “CreatedBy” MyTimeEntry.IncludeRetElementList.Add “ClockOutTime” ‘ set the other properties as desired…
IBSTRList 50 chars 2.0  
Tag Type Max length Implementation Required

IResponse

Adds an inventory item. An inventory item is any merchandise or part that a business purchases, tracks as inventory, and then resells. In QuickBooks, information about an inventory item is grouped into three categories:Puchase Information includes PurchaseDesc, PurchaseCost, COGSAccountRef, and PrefVendorRef. Sales Information includes SalesDesc, SalesPrice, and SalesTaxCodeRef. Inventory Information includes AssetAccountRef, ReorderPoint, QuantityOnHand, TotalValue, and InventoryDate. The Life Cycle of Inventory Items and Effects of Sales and Purchases The value of inventory is set when an inventory item is created or bought. QuickBooks uses cost averaging and decreases the value of the inventory asset account at the price when the sale is recorded. So, lets say a company starts carrying widgets as inventory items. First the inventory item must be created in QuickBooks. If the widgets are already in inventory based on a purchase made that will not be recorded in QuickBooks, the user or application would add the inventory item description along with the quantity on hand and the value (total purchase price) of the quantity on hand. If the purchase is to be recorded in QuickBooks the inventory item would be created with quantity and value of 0 (zero). Then a bill would be added to QB which would increase the inventory quantity and value. Lets say we bought 10 widgets for $100. QuickBooks would then consider each widget to be worth $10. The next day a customer buys 5 widgets for $20 each. A sales receipt or invoice is created for the purchase, the quantity of widgets is reduced by 5, to 5 and the value is reduced by $50 to $50. The inventory asset account is reduced by $50 and the undeposited funds or accounts receivable account is increased by $100. It appears that widgets will be a big seller, so the small business owner goes out and buys 10 more widgets. However, the supplier has also noticed a widget buying trend, so he’s increased the price to $25 each. So now our quantity is increased from 5 to 15 and the value is increased from $50 to $300, so they are considered to be worth $20 each. After purchasing the widgets another customer decides to buy 10 widgets but the price has been raised to $50 each. After the sales receipt or invoice is entered, the inventory is reduced to 5 and the value is reduced to $100. The inventory asset account is reduced by $200 and the undeposited funds or accounts receivable account is increased by $500. An ItemInventoryRef aggregate refers to an inventory item. In a request, if an ItemInventoryRef aggregate includes both FullName and ListID, FullName will be ignored.
       

StatusCode

A number that corresponds to a statusSeverity and statusMessage. Five status codes relate directly to signon messages: 2000, 2010, 2020, 2030, and 2040. For details about these and other statusCode values that can be returned, see the statusCode table on the Error Codes page.
IQBIntType     Y

StatusSeverity

One of the following values: INFO The request was completed, and the results are consistent with what your application expected. WARNING The request was completed, but the results might not be consistent with what you expected. ERROR The request was not completed. No data will appear in the server’s response after the statusMessage.
IQBStringType     Y

StatusMessage

A user-readable explanation of the success or error condition that is indicated by the statusCode. For details about the statusMessage values that can be returned, see the “Explanation” column of the statusCode table on the Error Codes page.
IQBStringType     Y

Detail

IItemInventoryRet      

ListID

The unique ID returned by QBPOS for this object. If supplied in a request, the ListID is a reference to an object required in the request. For example, in a SalesOrder or PurchaseOrder line item, the ListID that is required is an Item list ID.
IQBIDType      

TimeCreated

The timestamp indicating the time when this object was created in QBPOS.
IQBDateTimeType   1.1  

TimeModified

The time when the object was modified by QBPOS.
IQBDateTimeType      

ALU

Alternate Lookup. A user-defined identifier to be used to look up an item. Typically, this field contains such as the manufacturer’s part number, but it can contain any text descriptions, catalog numbers, etc. Duplicate Alternate Lookups are not allowed. Do not duplicate the Item # or UPC in this field. This will adversely affect performance for item lookups.
IQBStringType 20 chars    

Attribute

A field used to describe an item characteristic, typically color, pattern, material, or a second size. One to eight characters.
IQBStringType 12 chars    

COGSAccount

This field is used if you are using QBPOS with QuickBooks. In QBPOS, in company preferences->Financial->Accounts, the end user specifies the QuickBooks income account and the QuickBooks Cost of Goods Sold (COGS) account for each type (inventory, assembly, special order, etc.) of QBPOS item. If you are using QuickBooks with QBPOS, you must specify in this COGSAccount field the COGS value specified in company preferences for inventory items.
IQBStringType      

Cost

The average cost of the item. Cost is automatically updated by receiving vouchers or manually updated by adjustment memos.
IQBAmountType      

DepartmentCode

Enter a unique 1-3 character code, identifying the department. The first character usually indicates the broadest classification. The department code can be used when defining an item in inventory.
IQBStringType 3 chars    

DepartmentListID

The ListID of the department to be associated with this object, for example with this inventory item. The department must either exist in the QBPOS company already or you can replace the ListID value with a macro.
IQBIDType      

Desc1

The principal item description field. This description is printed on receipts. For some versions of QBPOS, (Pro), this must be the same for all members of a style. Changes to this field can be applied to an item or to an entire style.
IQBStringType 30 chars    

Desc2

Secondary description field usually used for any additional information to describe this particular item, such as a vendor’s catalog number. Also can be used for additional information at the point of sale.
IQBStringType      

IncomeAccount

This field is used if you are using QBPOS with QuickBooks. In QBPOS, in company preferences->Financial->Accounts, the end user specifies the QuickBooks income account and the QuickBooks Cost of Goods Sold (COGS) account for each type (inventory, assembly, special order, etc.) of QBPOS item. If you are using QuickBooks with QBPOS, you must specify in this IncomeAccount field the Income Account value specified in company preferences for inventory items.
IQBStringType      

IsBelowReorder

Indicates whether the item is below the reorder point.
IQBBoolType      

IsEligibleForCommission

Indicates whether the item is eligible for a commission.
IQBBoolType      

IsPrintingTags

Indicates whether the Print Tags checkbox is checked for this item, that is, whether this item is included in the list of items for which price tags are to be printed.
IQBBoolType      

IsUnorderable

Indicates whether the item is orderable. Items flagged as Unorderable do not show up on the reorder reminder list when their on hand number falls below the reorder point.
IQBBoolType      

HasPictures

Indicator that item has pictures.
IQBBoolType   2.5  

IsEligibleForRewards

Indicator if item is eligible for rewards.
IQBBoolType   3.0  

IsWebItem

Indicator if item is a web item.
IQBBoolType   3.0  

ItemNumber

Unique number assigned to the item when it is added to QBPOS.
IQBIntType      

ItemType

The type of item being added.
IQBENItemTypeType      

LastReceived

Date this item was last received into inventory.
IQBDateType      

MarginPercent

Margin. The profit expressed as a percentage of the price. If defined in a department record, is used to calculate the prices of new items as they are added to inventory. Notice that modifying the margin in inventory automatically causes your price(s) and the markup (Mup %) to be recalculated. Margin % = price – costprice ´ 100
IQBIntType      

MarkupPercent

The item profit expressed as a percentage over the cost. Works in the same manner as Mrg %. Making an entry in this field causes QBPOS to recalculate your item prices and margin.
IQBIntType      

MSRP

Manufacturer’s Suggest Retail Price. Reference price that is printed on price tags if defined in inventory.
IQBAmountType      

OnHandStore01

The quantity of the item on hand in inventory.
IQBQuanType      

OnHandStore02

The quantity of the item on hand in inventory in store 2, valid only for multi-store versions of QBPOS.
IQBQuanType      

OnHandStore03

The quantity of the item on hand in inventory in store 3, valid only for multi-store versions of QBPOS.
IQBQuanType      

OnHandStore04

The quantity of the item on hand in inventory in store 4, valid only for multi-store versions of QBPOS.
IQBQuanType      

OnHandStore05

The quantity of the item on hand in inventory in store 5, valid only for multi-store versions of QBPOS.
IQBQuanType      

OnHandStore06

The quantity of the item on hand in inventory in store 6, valid only for multi-store versions of QBPOS.
IQBQuanType      

OnHandStore07

The quantity of the item on hand in inventory in store 7, valid only for multi-store versions of QBPOS.
IQBQuanType      

OnHandStore08

The quantity of the item on hand in inventory in store 8, valid only for multi-store versions of QBPOS.
IQBQuanType      

OnHandStore09

The quantity of the item on hand in inventory in store 9, valid only for multi-store versions of QBPOS.
IQBQuanType      

OnHandStore10

The quantity of the item on hand in inventory in store 10, valid only for multi-store versions of QBPOS.
IQBQuanType      

OnHandStore11

The quantity of the item on hand in inventory in store 11, valid only for multi-store versions of QBPOS.
IQBQuanType   3.0  

OnHandStore12

The quantity of the item on hand in inventory in store 12, valid only for multi-store versions of QBPOS.
IQBQuanType   3.0  

OnHandStore13

The quantity of the item on hand in inventory in store 13, valid only for multi-store versions of QBPOS.
IQBQuanType   3.0  

OnHandStore14

The quantity of the item on hand in inventory in store 14, valid only for multi-store versions of QBPOS.
IQBQuanType   3.0  

OnHandStore15

The quantity of the item on hand in inventory in store 15, valid only for multi-store versions of QBPOS.
IQBQuanType   3.0  

OnHandStore16

The quantity of the item on hand in inventory in store 16, valid only for multi-store versions of QBPOS.
IQBQuanType   3.0  

OnHandStore17

The quantity of the item on hand in inventory in store 17, valid only for multi-store versions of QBPOS.
IQBQuanType   3.0  

OnHandStore18

The quantity of the item on hand in inventory in store 18, valid only for multi-store versions of QBPOS.
IQBQuanType   3.0  

OnHandStore19

The quantity of the item on hand in inventory in store 19, valid only for multi-store versions of QBPOS.
IQBQuanType   3.0  

OnHandStore20

The quantity of the item on hand in inventory in store 20, valid only for multi-store versions of QBPOS.
IQBQuanType   3.0  

ReorderPointStore01

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore02

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore03

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore04

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore05

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore06

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore07

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore08

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore09

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore10

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore11

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore12

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore13

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore14

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore15

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore16

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore17

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore18

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore19

Reorder point for item.
IQBQuanType   3.0  

ReorderPointStore20

Reorder point for item.
IQBQuanType   3.0  

OrderByUnit

If you are using multiple units of measure instead of a single unit of measure, you can use one UOM to order by (OrderByUnit) and another to sell by (SellByUnit). The OrderByUnit value is used as the default unit of measure when you order this item from vendors. You can override this in a PurchaseOrderAdd by specifying a different unit of measure in that request.
IQBStringType 20 chars 2.0  

OrderCost

Notice that the Order cost (the Order Cost field in the New Item form) is different than inventory cost (Cost field). An item’s order cost is the current cost you pay a vendor for the item, while inventory cost is the averaged cost of the current on-hand quantity of the item. Over time it is normal for your order cost to move higher than your averaged cost, as you may have some quantity left in stock that was purchased at a lower cost. When you make a purchase order, the order cost in inventory is suggested as the purchase order cost in the Purchase Order form in QBPOS. You can edit this cost on the PO if necessary. When you receive the ordered items, the voucher that references the PO will automatically take its cost from the PO (if not referencing a PO, the order cost from inventory is suggested as the voucher cost). When a voucher with a changed cost is updated it will automatically update the Order Cost field in inventory, so that the new order cost is suggested on the next PO made for the item from the same vendor. QBPOS supports the use of fractional-cent costs with up to five decimal places.
IQBAmountType      

Price1

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price2

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price3

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price4

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price5

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType   1.1  

QuantityOnCustomerOrder

The quantity, in terms of the base unit of measure, of the inventory item that is currently under order by customers and therefore not available.
IQBQuanType   2.0  

QuantityOnHand

The number of units of an item currently in stock. This number is updated by receiving vouchers and sales receipts, as items are added to or subtracted from inventory. Notice that in multi-store configurations, the on hand quantity is a company-wide number: it reflects the units available throughout all the stores. To get the on hand quantity at a particular store, you can use the appropriate store number on-hand quantity query filter, for example, OnHandStore6Filter, within the ItemInventoryQuery request.
IQBQuanType      

QuantityOnOrder

This number of units of the specified item that are currently on order. In multi-store configurations, this number is the on-order number for all of the stores.
IQBQuanType      

QuantityOnPendingOrder

This number of units of the specified item that are currently pending on orders.
IQBQuanType   2.5  

AvailableQtyList

List of avaliable quantities by store.
IAvailableQtyList   2.5  

(List of IAvailableQty Objects)

       

StoreNumber

This is used only for multi-store versions of QBPOS. The value is between 1 and 10, since a maximum of 10 stores are currently supported.
IQBIntType      

QuantityOnOrder

This number of units of the specified item that are currently on order. In multi-store configurations, this number is the on-order number for all of the stores.
IQBQuanType      

QuantityOnCustomerOrder

The quantity, in terms of the base unit of measure, of the inventory item that is currently under order by customers and therefore not available.
IQBQuanType      

QuantityOnPendingOrder

This number of units of the specified item that are currently pending on orders.
IQBQuanType      

ReorderPoint

The quantity at which an item should be reordered.
IQBQuanType      

SellByUnit

If you are using multiple units of measure instead of a single unit of measure, you can use one UOM to order by (OrderByUnit) and another to sell by (SellByUnit). The SellByUnit value is used as the default unit of measure when you sell the item, but you can override it in the SalesReceiptAdd by specifying a different value for the unit of measure.
IQBStringType 20 chars 2.0  

SerialFlag

The serial flag indicates whether the user is prompted to enter a serial number when the item is listed on documents. Select PROMPT to be prompted to enter a serial number, select OPTIONAL (default) and the user will not be prompted but can still enter a serial number on the document, as desired.
IQBENSerialFlagType      

Size

The size of an item; 1 to 8 characters. This field can also be used to describe a second item attribute other than size if desired.
IQBStringType 12 chars    

StoreExchangeStatus

In multi store configurations, if the customer’s information has changed, this information is updated at the headquarters store. This response field indicates whether the information was successfully updated or not.
IQBENStoreExchangeStatusType      

TaxCode

In the QBPOS UI, you specify sales tax behavior by creating sales tax locations and tax codes. (What the QBPOS UI calls a “tax location” is what the SDK calls a “tax category”.) The tax code and its name is shared between all tax categories (locations): that is, all tax categories will have the same set of tax codes. However, the actual tax rate(s) that are used in a given tax code can vary from one tax category to the next. The tax code rates that are actually applied at transaction time are those that are in the tax category that is currently specified as the default tax category (location) in sales tax preferences. You create and modify tax categories and tax codes using the TaxCategoryAdd/Mod and TaxCodeAdd/Mod requests respectively. You assign tax code rates to a tax code within a tax category using the TaxRecordMod request. You query for the tax preference information (tax rate information for each tax code under each tax category) using the CompanyQuery. However, currently the default tax category (location) can be specified only within the QBPOS UI. When you create or modify an inventory item in QBPOS, you apply a tax code to it, but not a tax category. At sales transaction time, the actual sales tax is calculated for each item, based on the tax code assigned to that item and the tax code rate(s) for that tax code under the tax category currently specified as the default tax category (location).
IQBStringType      

UnitOfMeasure

If the company is using only a single unit of measure, this specifies the unit of measure for the item. If the company is using multiple units of measure, this specifies the base unit of measure for the item. Inventory quantities are tracked and reported in terms of this base unit.
IQBStringType 20 chars 1.1  

UPC

Universal Product Code. The item’s unique UPC/EAN/ISBN identifier. This field must be 13 characters. If a shorter number is entered, QBPOS uses an appropriate algorithm to lengthen the entry to fill the 13-character field.
IQBStringType 18 chars    

VendorCode

The code assigned to the vendor specified for the item.
IQBStringType 3 chars    

VendorListID

The listID of the vendor being referenced in this object reference.
IQBIDType      

WebDesc

Description of item on the web.
IQBStringType   3.0  

WebPrice

Price of item on the web.
IQBAmountType   3.0  

Manufacturer

Manufacturer of item.
IQBStringType 50 chars 3.0  

Weight

Weight of item.
IQBFloatType   3.0  

WebSKU

SKU of item on the web.
IQBStringType 20 chars 3.0  

Keywords

Keywords of item.
IQBStringType   3.0  

WebCategories

Category of item on the web.
IQBStringType   3.0  

UnitOfMeasure1

Used to support multiple units of measure. In addition to the base unit of measure for an inventory item, you can specify up to three other units of measure. Any of these units of measure can be applied when you order (PurchaseOrderAdd) or sell (SalesReceiptAdd) the item.
IUnitOfMeasure1   2.0  

ALU

Alternate Lookup. A user-defined identifier to be used to look up an item. Typically, this field contains such as the manufacturer’s part number, but it can contain any text descriptions, catalog numbers, etc. Duplicate Alternate Lookups are not allowed. Do not duplicate the Item # or UPC in this field. This will adversely affect performance for item lookups.
IQBStringType 20 chars    

MSRP

Manufacturer’s Suggest Retail Price. Reference price that is printed on price tags if defined in inventory.
IQBAmountType      

NumberOfBaseUnits

If you use multiple units of measure, rather than a single UOM, you need to select one of the UOMs as the base unit. This base unit should be the smallest unit that you sell by. Inventory quantities are always expressed in terms of this base unit.
IQBQuanType      

Price1

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price2

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price3

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price4

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price5

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

UnitOfMeasure

If the company is using only a single unit of measure, this specifies the unit of measure for the item. If the company is using multiple units of measure, this specifies the base unit of measure for the item. Inventory quantities are tracked and reported in terms of this base unit.
IQBStringType 20 chars    

UPC

Universal Product Code. The item’s unique UPC/EAN/ISBN identifier. This field must be 13 characters. If a shorter number is entered, QBPOS uses an appropriate algorithm to lengthen the entry to fill the 13-character field.
IQBStringType 18 chars    

UnitOfMeasure2

Used to support multiple units of measure. In addition to the base unit of measure for an inventory item, you can specify up to three other units of measure. Any of these units of measure can be applied when you order (PurchaseOrderAdd) or sell (SalesReceiptAdd) the item.
IUnitOfMeasure2   2.0  

ALU

Alternate Lookup. A user-defined identifier to be used to look up an item. Typically, this field contains such as the manufacturer’s part number, but it can contain any text descriptions, catalog numbers, etc. Duplicate Alternate Lookups are not allowed. Do not duplicate the Item # or UPC in this field. This will adversely affect performance for item lookups.
IQBStringType 20 chars    

MSRP

Manufacturer’s Suggest Retail Price. Reference price that is printed on price tags if defined in inventory.
IQBAmountType      

NumberOfBaseUnits

If you use multiple units of measure, rather than a single UOM, you need to select one of the UOMs as the base unit. This base unit should be the smallest unit that you sell by. Inventory quantities are always expressed in terms of this base unit.
IQBQuanType      

Price1

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price2

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price3

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price4

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price5

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

UnitOfMeasure

If the company is using only a single unit of measure, this specifies the unit of measure for the item. If the company is using multiple units of measure, this specifies the base unit of measure for the item. Inventory quantities are tracked and reported in terms of this base unit.
IQBStringType 20 chars    

UPC

Universal Product Code. The item’s unique UPC/EAN/ISBN identifier. This field must be 13 characters. If a shorter number is entered, QBPOS uses an appropriate algorithm to lengthen the entry to fill the 13-character field.
IQBStringType 18 chars    

UnitOfMeasure3

Used to support multiple units of measure. In addition to the base unit of measure for an inventory item, you can specify up to three other units of measure. Any of these units of measure can be applied when you order (PurchaseOrderAdd) or sell (SalesReceiptAdd) the item.
IUnitOfMeasure3   2.0  

ALU

Alternate Lookup. A user-defined identifier to be used to look up an item. Typically, this field contains such as the manufacturer’s part number, but it can contain any text descriptions, catalog numbers, etc. Duplicate Alternate Lookups are not allowed. Do not duplicate the Item # or UPC in this field. This will adversely affect performance for item lookups.
IQBStringType 20 chars    

MSRP

Manufacturer’s Suggest Retail Price. Reference price that is printed on price tags if defined in inventory.
IQBAmountType      

NumberOfBaseUnits

If you use multiple units of measure, rather than a single UOM, you need to select one of the UOMs as the base unit. This base unit should be the smallest unit that you sell by. Inventory quantities are always expressed in terms of this base unit.
IQBQuanType      

Price1

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price2

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price3

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price4

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

Price5

Every inventory item normally has Price1 set in order to establish the baseline or everyday retail price of the item. Accordingly, there is no markdown for Price1. However, you can use Prices 2 through 5 to specify discount pricing for the item. If you don’t specify Prices 2 through 5, however, and if PriceLevels are specified in company preferences, the markdowns specified in the PriceLevels will automatically be applied: Price2, Price3, Price4, and Price5 will be calculated from Price1 automatically using the PriceLevels. If you do specify Price2 through Price 4 for the item, and you also use PriceLevels, the Price2, Price3, Price4, and Price5 settings override the PriceLevels.
IQBAmountType      

UnitOfMeasure

If the company is using only a single unit of measure, this specifies the unit of measure for the item. If the company is using multiple units of measure, this specifies the base unit of measure for the item. Inventory quantities are tracked and reported in terms of this base unit.
IQBStringType 20 chars    

UPC

Universal Product Code. The item’s unique UPC/EAN/ISBN identifier. This field must be 13 characters. If a shorter number is entered, QBPOS uses an appropriate algorithm to lengthen the entry to fill the 13-character field.
IQBStringType 18 chars    

VendorInfo2

Available for certain QBPOS versions, such as Pro versions. If multiple vendors are used for an item, up to 5 vendors can be specified. Each vendor can have a unique UPC, Alternate Lokoup, and order cost.
IVendorInfo2      

ALU

Alternate Lookup. A user-defined identifier to be used to look up an item. Typically, this field contains such as the manufacturer’s part number, but it can contain any text descriptions, catalog numbers, etc. Duplicate Alternate Lookups are not allowed. Do not duplicate the Item # or UPC in this field. This will adversely affect performance for item lookups.
IQBStringType 20 chars    

OrderCost

Notice that the Order cost (the Order Cost field in the New Item form) is different than inventory cost (Cost field). An item’s order cost is the current cost you pay a vendor for the item, while inventory cost is the averaged cost of the current on-hand quantity of the item. Over time it is normal for your order cost to move higher than your averaged cost, as you may have some quantity left in stock that was purchased at a lower cost. When you make a purchase order, the order cost in inventory is suggested as the purchase order cost in the Purchase Order form in QBPOS. You can edit this cost on the PO if necessary. When you receive the ordered items, the voucher that references the PO will automatically take its cost from the PO (if not referencing a PO, the order cost from inventory is suggested as the voucher cost). When a voucher with a changed cost is updated it will automatically update the Order Cost field in inventory, so that the new order cost is suggested on the next PO made for the item from the same vendor. QBPOS supports the use of fractional-cent costs with up to five decimal places.
IQBAmountType      

UPC

Universal Product Code. The item’s unique UPC/EAN/ISBN identifier. This field must be 13 characters. If a shorter number is entered, QBPOS uses an appropriate algorithm to lengthen the entry to fill the 13-character field.
IQBStringType 18 chars    

VendorListID

The listID of the vendor being referenced in this object reference.
IQBIDType     Y

useMacro

You use a macro in a request message set if you need to create some object in one request, then refer to it in a subsequent request within that same message set. For example, you could create an inventory item and then include that item as a line item in a sales order all in one request message set, rather than create the item, query for it, then include it in a separate SalesOrderAdd request. In this latter case, you are accessing QBPOS three times, versus only once, using macros. The item to be referenced is specified via the defmacro. The actual reference to that item in the succeeding request is done via the use macro, as follows: ItemInventoryAdd defMacro=”ListID:Inv1” In the above line, you simply replace Inv1 with the name you want to give the macro. When you reference this macro in another request (one that requires that object’s listID) in the same message set, you use this syntax: ListID useMacro=”ListID:Inv1” This is covered in more detail in the Programming Guide.
IQBStringType   2.0  

VendorInfo3

Available for certain QBPOS versions, such as Pro versions. If multiple vendors are used for an item, up to 5 vendors can be specified. Each vendor can have a unique UPC, Alternate Lokoup, and order cost.
IVendorInfo3      

ALU

Alternate Lookup. A user-defined identifier to be used to look up an item. Typically, this field contains such as the manufacturer’s part number, but it can contain any text descriptions, catalog numbers, etc. Duplicate Alternate Lookups are not allowed. Do not duplicate the Item # or UPC in this field. This will adversely affect performance for item lookups.
IQBStringType 20 chars    

OrderCost

Notice that the Order cost (the Order Cost field in the New Item form) is different than inventory cost (Cost field). An item’s order cost is the current cost you pay a vendor for the item, while inventory cost is the averaged cost of the current on-hand quantity of the item. Over time it is normal for your order cost to move higher than your averaged cost, as you may have some quantity left in stock that was purchased at a lower cost. When you make a purchase order, the order cost in inventory is suggested as the purchase order cost in the Purchase Order form in QBPOS. You can edit this cost on the PO if necessary. When you receive the ordered items, the voucher that references the PO will automatically take its cost from the PO (if not referencing a PO, the order cost from inventory is suggested as the voucher cost). When a voucher with a changed cost is updated it will automatically update the Order Cost field in inventory, so that the new order cost is suggested on the next PO made for the item from the same vendor. QBPOS supports the use of fractional-cent costs with up to five decimal places.
IQBAmountType      

UPC

Universal Product Code. The item’s unique UPC/EAN/ISBN identifier. This field must be 13 characters. If a shorter number is entered, QBPOS uses an appropriate algorithm to lengthen the entry to fill the 13-character field.
IQBStringType 18 chars    

VendorListID

The listID of the vendor being referenced in this object reference.
IQBIDType     Y

useMacro

You use a macro in a request message set if you need to create some object in one request, then refer to it in a subsequent request within that same message set. For example, you could create an inventory item and then include that item as a line item in a sales order all in one request message set, rather than create the item, query for it, then include it in a separate SalesOrderAdd request. In this latter case, you are accessing QBPOS three times, versus only once, using macros. The item to be referenced is specified via the defmacro. The actual reference to that item in the succeeding request is done via the use macro, as follows: ItemInventoryAdd defMacro=”ListID:Inv1” In the above line, you simply replace Inv1 with the name you want to give the macro. When you reference this macro in another request (one that requires that object’s listID) in the same message set, you use this syntax: ListID useMacro=”ListID:Inv1” This is covered in more detail in the Programming Guide.
IQBStringType   2.0  

VendorInfo4

Available for certain QBPOS versions, such as Pro versions. If multiple vendors are used for an item, up to 5 vendors can be specified. Each vendor can have a unique UPC, Alternate Lokoup, and order cost.
IVendorInfo4      

ALU

Alternate Lookup. A user-defined identifier to be used to look up an item. Typically, this field contains such as the manufacturer’s part number, but it can contain any text descriptions, catalog numbers, etc. Duplicate Alternate Lookups are not allowed. Do not duplicate the Item # or UPC in this field. This will adversely affect performance for item lookups.
IQBStringType 20 chars    

OrderCost

Notice that the Order cost (the Order Cost field in the New Item form) is different than inventory cost (Cost field). An item’s order cost is the current cost you pay a vendor for the item, while inventory cost is the averaged cost of the current on-hand quantity of the item. Over time it is normal for your order cost to move higher than your averaged cost, as you may have some quantity left in stock that was purchased at a lower cost. When you make a purchase order, the order cost in inventory is suggested as the purchase order cost in the Purchase Order form in QBPOS. You can edit this cost on the PO if necessary. When you receive the ordered items, the voucher that references the PO will automatically take its cost from the PO (if not referencing a PO, the order cost from inventory is suggested as the voucher cost). When a voucher with a changed cost is updated it will automatically update the Order Cost field in inventory, so that the new order cost is suggested on the next PO made for the item from the same vendor. QBPOS supports the use of fractional-cent costs with up to five decimal places.
IQBAmountType      

UPC

Universal Product Code. The item’s unique UPC/EAN/ISBN identifier. This field must be 13 characters. If a shorter number is entered, QBPOS uses an appropriate algorithm to lengthen the entry to fill the 13-character field.
IQBStringType 18 chars    

VendorListID

The listID of the vendor being referenced in this object reference.
IQBIDType     Y

useMacro

You use a macro in a request message set if you need to create some object in one request, then refer to it in a subsequent request within that same message set. For example, you could create an inventory item and then include that item as a line item in a sales order all in one request message set, rather than create the item, query for it, then include it in a separate SalesOrderAdd request. In this latter case, you are accessing QBPOS three times, versus only once, using macros. The item to be referenced is specified via the defmacro. The actual reference to that item in the succeeding request is done via the use macro, as follows: ItemInventoryAdd defMacro=”ListID:Inv1” In the above line, you simply replace Inv1 with the name you want to give the macro. When you reference this macro in another request (one that requires that object’s listID) in the same message set, you use this syntax: ListID useMacro=”ListID:Inv1” This is covered in more detail in the Programming Guide.
IQBStringType   2.0  

VendorInfo5

Available for certain QBPOS versions, such as Pro versions. If multiple vendors are used for an item, up to 5 vendors can be specified. Each vendor can have a unique UPC, Alternate Lokoup, and order cost.
IVendorInfo5      

ALU

Alternate Lookup. A user-defined identifier to be used to look up an item. Typically, this field contains such as the manufacturer’s part number, but it can contain any text descriptions, catalog numbers, etc. Duplicate Alternate Lookups are not allowed. Do not duplicate the Item # or UPC in this field. This will adversely affect performance for item lookups.
IQBStringType 20 chars    

OrderCost

Notice that the Order cost (the Order Cost field in the New Item form) is different than inventory cost (Cost field). An item’s order cost is the current cost you pay a vendor for the item, while inventory cost is the averaged cost of the current on-hand quantity of the item. Over time it is normal for your order cost to move higher than your averaged cost, as you may have some quantity left in stock that was purchased at a lower cost. When you make a purchase order, the order cost in inventory is suggested as the purchase order cost in the Purchase Order form in QBPOS. You can edit this cost on the PO if necessary. When you receive the ordered items, the voucher that references the PO will automatically take its cost from the PO (if not referencing a PO, the order cost from inventory is suggested as the voucher cost). When a voucher with a changed cost is updated it will automatically update the Order Cost field in inventory, so that the new order cost is suggested on the next PO made for the item from the same vendor. QBPOS supports the use of fractional-cent costs with up to five decimal places.
IQBAmountType      

UPC

Universal Product Code. The item’s unique UPC/EAN/ISBN identifier. This field must be 13 characters. If a shorter number is entered, QBPOS uses an appropriate algorithm to lengthen the entry to fill the 13-character field.
IQBStringType 18 chars    

VendorListID

The listID of the vendor being referenced in this object reference.
IQBIDType     Y

useMacro

You use a macro in a request message set if you need to create some object in one request, then refer to it in a subsequent request within that same message set. For example, you could create an inventory item and then include that item as a line item in a sales order all in one request message set, rather than create the item, query for it, then include it in a separate SalesOrderAdd request. In this latter case, you are accessing QBPOS three times, versus only once, using macros. The item to be referenced is specified via the defmacro. The actual reference to that item in the succeeding request is done via the use macro, as follows: ItemInventoryAdd defMacro=”ListID:Inv1” In the above line, you simply replace Inv1 with the name you want to give the macro. When you reference this macro in another request (one that requires that object’s listID) in the same message set, you use this syntax: ListID useMacro=”ListID:Inv1” This is covered in more detail in the Programming Guide.
IQBStringType   2.0  

DataExtRetList

If you specify any custom fields/private data extensions to be returned in the query request (in the OwnerIDList), then this Ret List will contain all of the data extensions that belong to each specified OwnerID. For example, if you specify an OwnerID value of 0 (custom fields), then the query will return all custom data for the returned records.
IDataExtRetList   1.2  

(List of IDataExtRet Objects)

       

OwnerID

OwnerID refers to the owner of a data extension, and must be 0 or a valid GUID. (Custom fields, which are visible in the QuickBooks UI, always have an OwnerID of 0. ) Usually you would keep your application’s GUID confidential to prevent other applications from accessing your data extensions. But if you want to share data extensions with another application, the applications need to use the same GUID. In this case, each application could use two GUIDs, one for shared data extensions and one for confidential data extensions. (An application can have any number of GUIDs.) When you share a data extension with another application, the other application must know both the OwnerID and the DataExtName, as these together form a data extension’s unique name.
IQBGUIDType     Y

DataExtName

The name of the data extension. If this is a custom field, DataExtName will be visible as a label in the QuickBooks user interface. Also because OwnerID and DataExtName together make the data extension unique, and because custom fields all have the same OwnerID of zero, the DataExtName must be a unique value among existing custom fields. In contrast, the DataExtName for private data extensions must be unique only for the specified OwnerID GUID.
IQBStringType     Y

DataExtType

b>DataExtType The type of the data extension.
IQBENDataExtTypeType     Y

DataExtValue

The data in this field. The maximum length of DataExtValue will depend on the DataExtType of this data extension. For example, if DataExtType is STR255TYPE, the maximum length of DataExtValue is 255 characters. If DataExtType is STR1024TYPE, the maximum size of DataExtValue is 1KB.
IQBStringType     Y

IsEcommerce

For Receipts: ​Value will be 1 when the Receipt is generated for sale transaction done in e-commerce though the supplier/partner. For Inventory: Value will be 1 when the Inventory created through the E-commerce supplier/partner.
IQBBoolType   4.0  

OnlineStoreNames

Name of the E-Commerce Player store name. E.g. Store1, Store 2, etc…
IQBStringType 1500 chars 4.0  

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
<?xml version="1.0" encoding="utf-8"?>
<?qbposxml version="4.0"?>
<QBPOSXML>
        <QBPOSXMLMsgsRq onError="stopOnError">
                <ItemInventoryAddRq>
                        <ItemInventoryAdd defMacro="MACROTYPE"> <!-- required -->
                                <ALU >STRTYPE</ALU> <!-- optional -->
                                <Attribute >STRTYPE</Attribute> <!-- optional -->
                                <COGSAccount >STRTYPE</COGSAccount> <!-- optional -->
                                <Cost >AMTTYPE</Cost> <!-- optional -->
                                <DepartmentListID  useMacro="MACROTYPE">IDTYPE</DepartmentListID> <!-- required -->
                                <Desc1 >STRTYPE</Desc1> <!-- optional -->
                                <Desc2 >STRTYPE</Desc2> <!-- optional -->
                                <IncomeAccount >STRTYPE</IncomeAccount> <!-- optional -->
                                <IsEligibleForCommission >BOOLTYPE</IsEligibleForCommission> <!-- optional -->
                                <IsPrintingTags >BOOLTYPE</IsPrintingTags> <!-- optional -->
                                <IsUnorderable >BOOLTYPE</IsUnorderable> <!-- optional -->
                                <IsEligibleForRewards >BOOLTYPE</IsEligibleForRewards> <!-- optional -->
                                <IsWebItem >BOOLTYPE</IsWebItem> <!-- optional -->
                                <!-- ItemType may have one of the following values: Inventory, NonInventory, Service, Assembly, Group, SpecialOrder -->
                                <ItemType >ENUMTYPE</ItemType> <!-- optional -->
                                <MarginPercent >INTTYPE</MarginPercent> <!-- optional -->
                                <MarkupPercent >INTTYPE</MarkupPercent> <!-- optional -->
                                <MSRP >AMTTYPE</MSRP> <!-- optional -->
                                <OnHandStore01 >QUANTYPE</OnHandStore01> <!-- optional -->
                                <OnHandStore02 >QUANTYPE</OnHandStore02> <!-- optional -->
                                <OnHandStore03 >QUANTYPE</OnHandStore03> <!-- optional -->
                                <OnHandStore04 >QUANTYPE</OnHandStore04> <!-- optional -->
                                <OnHandStore05 >QUANTYPE</OnHandStore05> <!-- optional -->
                                <OnHandStore06 >QUANTYPE</OnHandStore06> <!-- optional -->
                                <OnHandStore07 >QUANTYPE</OnHandStore07> <!-- optional -->
                                <OnHandStore08 >QUANTYPE</OnHandStore08> <!-- optional -->
                                <OnHandStore09 >QUANTYPE</OnHandStore09> <!-- optional -->
                                <OnHandStore10 >QUANTYPE</OnHandStore10> <!-- optional -->
                                <OnHandStore11 >QUANTYPE</OnHandStore11> <!-- optional -->
                                <OnHandStore12 >QUANTYPE</OnHandStore12> <!-- optional -->
                                <OnHandStore13 >QUANTYPE</OnHandStore13> <!-- optional -->
                                <OnHandStore14 >QUANTYPE</OnHandStore14> <!-- optional -->
                                <OnHandStore15 >QUANTYPE</OnHandStore15> <!-- optional -->
                                <OnHandStore16 >QUANTYPE</OnHandStore16> <!-- optional -->
                                <OnHandStore17 >QUANTYPE</OnHandStore17> <!-- optional -->
                                <OnHandStore18 >QUANTYPE</OnHandStore18> <!-- optional -->
                                <OnHandStore19 >QUANTYPE</OnHandStore19> <!-- optional -->
                                <OnHandStore20 >QUANTYPE</OnHandStore20> <!-- optional -->
                                <ReorderPointStore01 >QUANTYPE</ReorderPointStore01> <!-- optional -->
                                <ReorderPointStore02 >QUANTYPE</ReorderPointStore02> <!-- optional -->
                                <ReorderPointStore03 >QUANTYPE</ReorderPointStore03> <!-- optional -->
                                <ReorderPointStore04 >QUANTYPE</ReorderPointStore04> <!-- optional -->
                                <ReorderPointStore05 >QUANTYPE</ReorderPointStore05> <!-- optional -->
                                <ReorderPointStore06 >QUANTYPE</ReorderPointStore06> <!-- optional -->
                                <ReorderPointStore07 >QUANTYPE</ReorderPointStore07> <!-- optional -->
                                <ReorderPointStore08 >QUANTYPE</ReorderPointStore08> <!-- optional -->
                                <ReorderPointStore09 >QUANTYPE</ReorderPointStore09> <!-- optional -->
                                <ReorderPointStore10 >QUANTYPE</ReorderPointStore10> <!-- optional -->
                                <ReorderPointStore11 >QUANTYPE</ReorderPointStore11> <!-- optional -->
                                <ReorderPointStore12 >QUANTYPE</ReorderPointStore12> <!-- optional -->
                                <ReorderPointStore13 >QUANTYPE</ReorderPointStore13> <!-- optional -->
                                <ReorderPointStore14 >QUANTYPE</ReorderPointStore14> <!-- optional -->
                                <ReorderPointStore15 >QUANTYPE</ReorderPointStore15> <!-- optional -->
                                <ReorderPointStore16 >QUANTYPE</ReorderPointStore16> <!-- optional -->
                                <ReorderPointStore17 >QUANTYPE</ReorderPointStore17> <!-- optional -->
                                <ReorderPointStore18 >QUANTYPE</ReorderPointStore18> <!-- optional -->
                                <ReorderPointStore19 >QUANTYPE</ReorderPointStore19> <!-- optional -->
                                <ReorderPointStore20 >QUANTYPE</ReorderPointStore20> <!-- optional -->
                                <OrderByUnit >STRTYPE</OrderByUnit> <!-- optional -->
                                <OrderCost >AMTTYPE</OrderCost> <!-- optional -->
                                <Price1 >AMTTYPE</Price1> <!-- optional -->
                                <Price2 >AMTTYPE</Price2> <!-- optional -->
                                <Price3 >AMTTYPE</Price3> <!-- optional -->
                                <Price4 >AMTTYPE</Price4> <!-- optional -->
                                <Price5 >AMTTYPE</Price5> <!-- optional -->
                                <ReorderPoint >QUANTYPE</ReorderPoint> <!-- optional -->
                                <SellByUnit >STRTYPE</SellByUnit> <!-- optional -->
                                <!-- SerialFlag may have one of the following values: Optional, Prompt -->
                                <SerialFlag >ENUMTYPE</SerialFlag> <!-- optional -->
                                <Size >STRTYPE</Size> <!-- optional -->
                                <TaxCode >STRTYPE</TaxCode> <!-- optional -->
                                <UnitOfMeasure >STRTYPE</UnitOfMeasure> <!-- optional -->
                                <UPC >STRTYPE</UPC> <!-- optional -->
                                <VendorListID  useMacro="MACROTYPE">IDTYPE</VendorListID> <!-- optional -->
                                <WebDesc >STRTYPE</WebDesc> <!-- optional -->
                                <WebPrice >AMTTYPE</WebPrice> <!-- optional -->
                                <Manufacturer >STRTYPE</Manufacturer> <!-- optional -->
                                <Weight >FLOATTYPE</Weight> <!-- optional -->
                                <Keywords >STRTYPE</Keywords> <!-- optional -->
                                <WebCategories >STRTYPE</WebCategories> <!-- optional -->
                                <UnitOfMeasure1> <!-- optional -->
                                        <ALU >STRTYPE</ALU> <!-- optional -->
                                        <MSRP >AMTTYPE</MSRP> <!-- optional -->
                                        <NumberOfBaseUnits >QUANTYPE</NumberOfBaseUnits> <!-- optional -->
                                        <Price1 >AMTTYPE</Price1> <!-- optional -->
                                        <Price2 >AMTTYPE</Price2> <!-- optional -->
                                        <Price3 >AMTTYPE</Price3> <!-- optional -->
                                        <Price4 >AMTTYPE</Price4> <!-- optional -->
                                        <Price5 >AMTTYPE</Price5> <!-- optional -->
                                        <UnitOfMeasure >STRTYPE</UnitOfMeasure> <!-- optional -->
                                        <UPC >STRTYPE</UPC> <!-- optional -->
                                </UnitOfMeasure1>
                                <UnitOfMeasure2> <!-- optional -->
                                        <ALU >STRTYPE</ALU> <!-- optional -->
                                        <MSRP >AMTTYPE</MSRP> <!-- optional -->
                                        <NumberOfBaseUnits >QUANTYPE</NumberOfBaseUnits> <!-- optional -->
                                        <Price1 >AMTTYPE</Price1> <!-- optional -->
                                        <Price2 >AMTTYPE</Price2> <!-- optional -->
                                        <Price3 >AMTTYPE</Price3> <!-- optional -->
                                        <Price4 >AMTTYPE</Price4> <!-- optional -->
                                        <Price5 >AMTTYPE</Price5> <!-- optional -->
                                        <UnitOfMeasure >STRTYPE</UnitOfMeasure> <!-- optional -->
                                        <UPC >STRTYPE</UPC> <!-- optional -->
                                </UnitOfMeasure2>
                                <UnitOfMeasure3> <!-- optional -->
                                        <ALU >STRTYPE</ALU> <!-- optional -->
                                        <MSRP >AMTTYPE</MSRP> <!-- optional -->
                                        <NumberOfBaseUnits >QUANTYPE</NumberOfBaseUnits> <!-- optional -->
                                        <Price1 >AMTTYPE</Price1> <!-- optional -->
                                        <Price2 >AMTTYPE</Price2> <!-- optional -->
                                        <Price3 >AMTTYPE</Price3> <!-- optional -->
                                        <Price4 >AMTTYPE</Price4> <!-- optional -->
                                        <Price5 >AMTTYPE</Price5> <!-- optional -->
                                        <UnitOfMeasure >STRTYPE</UnitOfMeasure> <!-- optional -->
                                        <UPC >STRTYPE</UPC> <!-- optional -->
                                </UnitOfMeasure3>
                                <VendorInfo2> <!-- optional -->
                                        <ALU >STRTYPE</ALU> <!-- optional -->
                                        <OrderCost >AMTTYPE</OrderCost> <!-- optional -->
                                        <UPC >STRTYPE</UPC> <!-- optional -->
                                        <VendorListID  useMacro="MACROTYPE">IDTYPE</VendorListID> <!-- required -->
                                </VendorInfo2>
                                <VendorInfo3> <!-- optional -->
                                        <ALU >STRTYPE</ALU> <!-- optional -->
                                        <OrderCost >AMTTYPE</OrderCost> <!-- optional -->
                                        <UPC >STRTYPE</UPC> <!-- optional -->
                                        <VendorListID  useMacro="MACROTYPE">IDTYPE</VendorListID> <!-- required -->
                                </VendorInfo3>
                                <VendorInfo4> <!-- optional -->
                                        <ALU >STRTYPE</ALU> <!-- optional -->
                                        <OrderCost >AMTTYPE</OrderCost> <!-- optional -->
                                        <UPC >STRTYPE</UPC> <!-- optional -->
                                        <VendorListID  useMacro="MACROTYPE">IDTYPE</VendorListID> <!-- required -->
                                </VendorInfo4>
                                <VendorInfo5> <!-- optional -->
                                        <ALU >STRTYPE</ALU> <!-- optional -->
                                        <OrderCost >AMTTYPE</OrderCost> <!-- optional -->
                                        <UPC >STRTYPE</UPC> <!-- optional -->
                                        <VendorListID  useMacro="MACROTYPE">IDTYPE</VendorListID> <!-- required -->
                                </VendorInfo5>
                        </ItemInventoryAdd>
                        <IsEcommerce >BOOLTYPE</IsEcommerce> <!-- optional -->
                        <OnlineStoreNames >STRTYPE</OnlineStoreNames> <!-- optional -->
                        <IncludeRetElement >STRTYPE</IncludeRetElement> <!-- optional, may repeat -->
                </ItemInventoryAddRq>

                <ItemInventoryAddRs statusCode="INTTYPE" statusSeverity="STRTYPE" statusMessage="STRTYPE">
                        <ItemInventoryRet> <!-- optional -->
                                <ListID >IDTYPE</ListID> <!-- optional -->
                                <TimeCreated >DATETIMETYPE</TimeCreated> <!-- optional -->
                                <TimeModified >DATETIMETYPE</TimeModified> <!-- optional -->
                                <ALU >STRTYPE</ALU> <!-- optional -->
                                <Attribute >STRTYPE</Attribute> <!-- optional -->
                                <COGSAccount >STRTYPE</COGSAccount> <!-- optional -->
                                <Cost >AMTTYPE</Cost> <!-- optional -->
                                <DepartmentCode >STRTYPE</DepartmentCode> <!-- optional -->
                                <DepartmentListID >IDTYPE</DepartmentListID> <!-- optional -->
                                <Desc1 >STRTYPE</Desc1> <!-- optional -->
                                <Desc2 >STRTYPE</Desc2> <!-- optional -->
                                <IncomeAccount >STRTYPE</IncomeAccount> <!-- optional -->
                                <IsBelowReorder >BOOLTYPE</IsBelowReorder> <!-- optional -->
                                <IsEligibleForCommission >BOOLTYPE</IsEligibleForCommission> <!-- optional -->
                                <IsPrintingTags >BOOLTYPE</IsPrintingTags> <!-- optional -->
                                <IsUnorderable >BOOLTYPE</IsUnorderable> <!-- optional -->
                                <HasPictures >BOOLTYPE</HasPictures> <!-- optional -->
                                <IsEligibleForRewards >BOOLTYPE</IsEligibleForRewards> <!-- optional -->
                                <IsWebItem >BOOLTYPE</IsWebItem> <!-- optional -->
                                <ItemNumber >INTTYPE</ItemNumber> <!-- optional -->
                                <!-- ItemType may have one of the following values: Inventory, NonInventory, Service, Assembly, Group, SpecialOrder -->
                                <ItemType >ENUMTYPE</ItemType> <!-- optional -->
                                <LastReceived >DATETYPE</LastReceived> <!-- optional -->
                                <MarginPercent >INTTYPE</MarginPercent> <!-- optional -->
                                <MarkupPercent >INTTYPE</MarkupPercent> <!-- optional -->
                                <MSRP >AMTTYPE</MSRP> <!-- optional -->
                                <OnHandStore01 >QUANTYPE</OnHandStore01> <!-- optional -->
                                <OnHandStore02 >QUANTYPE</OnHandStore02> <!-- optional -->
                                <OnHandStore03 >QUANTYPE</OnHandStore03> <!-- optional -->
                                <OnHandStore04 >QUANTYPE</OnHandStore04> <!-- optional -->
                                <OnHandStore05 >QUANTYPE</OnHandStore05> <!-- optional -->
                                <OnHandStore06 >QUANTYPE</OnHandStore06> <!-- optional -->
                                <OnHandStore07 >QUANTYPE</OnHandStore07> <!-- optional -->
                                <OnHandStore08 >QUANTYPE</OnHandStore08> <!-- optional -->
                                <OnHandStore09 >QUANTYPE</OnHandStore09> <!-- optional -->
                                <OnHandStore10 >QUANTYPE</OnHandStore10> <!-- optional -->
                                <OnHandStore11 >QUANTYPE</OnHandStore11> <!-- optional -->
                                <OnHandStore12 >QUANTYPE</OnHandStore12> <!-- optional -->
                                <OnHandStore13 >QUANTYPE</OnHandStore13> <!-- optional -->
                                <OnHandStore14 >QUANTYPE</OnHandStore14> <!-- optional -->
                                <OnHandStore15 >QUANTYPE</OnHandStore15> <!-- optional -->
                                <OnHandStore16 >QUANTYPE</OnHandStore16> <!-- optional -->
                                <OnHandStore17 >QUANTYPE</OnHandStore17> <!-- optional -->
                                <OnHandStore18 >QUANTYPE</OnHandStore18> <!-- optional -->
                                <OnHandStore19 >QUANTYPE</OnHandStore19> <!-- optional -->
                                <OnHandStore20 >QUANTYPE</OnHandStore20> <!-- optional -->
                                <ReorderPointStore01 >QUANTYPE</ReorderPointStore01> <!-- optional -->
                                <ReorderPointStore02 >QUANTYPE</ReorderPointStore02> <!-- optional -->
                                <ReorderPointStore03 >QUANTYPE</ReorderPointStore03> <!-- optional -->
                                <ReorderPointStore04 >QUANTYPE</ReorderPointStore04> <!-- optional -->
                                <ReorderPointStore05 >QUANTYPE</ReorderPointStore05> <!-- optional -->
                                <ReorderPointStore06 >QUANTYPE</ReorderPointStore06> <!-- optional -->
                                <ReorderPointStore07 >QUANTYPE</ReorderPointStore07> <!-- optional -->
                                <ReorderPointStore08 >QUANTYPE</ReorderPointStore08> <!-- optional -->
                                <ReorderPointStore09 >QUANTYPE</ReorderPointStore09> <!-- optional -->
                                <ReorderPointStore10 >QUANTYPE</ReorderPointStore10> <!-- optional -->
                                <ReorderPointStore11 >QUANTYPE</ReorderPointStore11> <!-- optional -->
                                <ReorderPointStore12 >QUANTYPE</ReorderPointStore12> <!-- optional -->
                                <ReorderPointStore13 >QUANTYPE</ReorderPointStore13> <!-- optional -->
                                <ReorderPointStore14 >QUANTYPE</ReorderPointStore14> <!-- optional -->
                                <ReorderPointStore15 >QUANTYPE</ReorderPointStore15> <!-- optional -->
                                <ReorderPointStore16 >QUANTYPE</ReorderPointStore16> <!-- optional -->
                                <ReorderPointStore17 >QUANTYPE</ReorderPointStore17> <!-- optional -->
                                <ReorderPointStore18 >QUANTYPE</ReorderPointStore18> <!-- optional -->
                                <ReorderPointStore19 >QUANTYPE</ReorderPointStore19> <!-- optional -->
                                <ReorderPointStore20 >QUANTYPE</ReorderPointStore20> <!-- optional -->
                                <OrderByUnit >STRTYPE</OrderByUnit> <!-- optional -->
                                <OrderCost >AMTTYPE</OrderCost> <!-- optional -->
                                <Price1 >AMTTYPE</Price1> <!-- optional -->
                                <Price2 >AMTTYPE</Price2> <!-- optional -->
                                <Price3 >AMTTYPE</Price3> <!-- optional -->
                                <Price4 >AMTTYPE</Price4> <!-- optional -->
                                <Price5 >AMTTYPE</Price5> <!-- optional -->
                                <QuantityOnCustomerOrder >QUANTYPE</QuantityOnCustomerOrder> <!-- optional -->
                                <QuantityOnHand >QUANTYPE</QuantityOnHand> <!-- optional -->
                                <QuantityOnOrder >QUANTYPE</QuantityOnOrder> <!-- optional -->
                                <QuantityOnPendingOrder >QUANTYPE</QuantityOnPendingOrder> <!-- optional -->
                                <AvailableQty> <!-- must occur 0 - 10 times -->
                                        <StoreNumber >INTTYPE</StoreNumber> <!-- optional -->
                                        <QuantityOnOrder >QUANTYPE</QuantityOnOrder> <!-- optional -->
                                        <QuantityOnCustomerOrder >QUANTYPE</QuantityOnCustomerOrder> <!-- optional -->
                                        <QuantityOnPendingOrder >QUANTYPE</QuantityOnPendingOrder> <!-- optional -->
                                </AvailableQty>
                                <ReorderPoint >QUANTYPE</ReorderPoint> <!-- optional -->
                                <SellByUnit >STRTYPE</SellByUnit> <!-- optional -->
                                <!-- SerialFlag may have one of the following values: Optional, Prompt -->
                                <SerialFlag >ENUMTYPE</SerialFlag> <!-- optional -->
                                <Size >STRTYPE</Size> <!-- optional -->
                                <!-- StoreExchangeStatus may have one of the following values: Modified, Sent, Acknowledged -->
                                <StoreExchangeStatus >ENUMTYPE</StoreExchangeStatus> <!-- optional -->
                                <TaxCode >STRTYPE</TaxCode> <!-- optional -->
                                <UnitOfMeasure >STRTYPE</UnitOfMeasure> <!-- optional -->
                                <UPC >STRTYPE</UPC> <!-- optional -->
                                <VendorCode >STRTYPE</VendorCode> <!-- optional -->
                                <VendorListID >IDTYPE</VendorListID> <!-- optional -->
                                <WebDesc >STRTYPE</WebDesc> <!-- optional -->
                                <WebPrice >AMTTYPE</WebPrice> <!-- optional -->
                                <Manufacturer >STRTYPE</Manufacturer> <!-- optional -->
                                <Weight >FLOATTYPE</Weight> <!-- optional -->
                                <WebSKU >STRTYPE</WebSKU> <!-- optional -->
                                <Keywords >STRTYPE</Keywords> <!-- optional -->
                                <WebCategories >STRTYPE</WebCategories> <!-- optional -->
                                <UnitOfMeasure1> <!-- optional -->
                                        <ALU >STRTYPE</ALU> <!-- optional -->
                                        <MSRP >AMTTYPE</MSRP> <!-- optional -->
                                        <NumberOfBaseUnits >QUANTYPE</NumberOfBaseUnits> <!-- optional -->
                                        <Price1 >AMTTYPE</Price1> <!-- optional -->
                                        <Price2 >AMTTYPE</Price2> <!-- optional -->
                                        <Price3 >AMTTYPE</Price3> <!-- optional -->
                                        <Price4 >AMTTYPE</Price4> <!-- optional -->
                                        <Price5 >AMTTYPE</Price5> <!-- optional -->
                                        <UnitOfMeasure >STRTYPE</UnitOfMeasure> <!-- optional -->
                                        <UPC >STRTYPE</UPC> <!-- optional -->
                                </UnitOfMeasure1>
                                <UnitOfMeasure2> <!-- optional -->
                                        <ALU >STRTYPE</ALU> <!-- optional -->
                                        <MSRP >AMTTYPE</MSRP> <!-- optional -->
                                        <NumberOfBaseUnits >QUANTYPE</NumberOfBaseUnits> <!-- optional -->
                                        <Price1 >AMTTYPE</Price1> <!-- optional -->
                                        <Price2 >AMTTYPE</Price2> <!-- optional -->
                                        <Price3 >AMTTYPE</Price3> <!-- optional -->
                                        <Price4 >AMTTYPE</Price4> <!-- optional -->
                                        <Price5 >AMTTYPE</Price5> <!-- optional -->
                                        <UnitOfMeasure >STRTYPE</UnitOfMeasure> <!-- optional -->
                                        <UPC >STRTYPE</UPC> <!-- optional -->
                                </UnitOfMeasure2>
                                <UnitOfMeasure3> <!-- optional -->
                                        <ALU >STRTYPE</ALU> <!-- optional -->
                                        <MSRP >AMTTYPE</MSRP> <!-- optional -->
                                        <NumberOfBaseUnits >QUANTYPE</NumberOfBaseUnits> <!-- optional -->
                                        <Price1 >AMTTYPE</Price1> <!-- optional -->
                                        <Price2 >AMTTYPE</Price2> <!-- optional -->
                                        <Price3 >AMTTYPE</Price3> <!-- optional -->
                                        <Price4 >AMTTYPE</Price4> <!-- optional -->
                                        <Price5 >AMTTYPE</Price5> <!-- optional -->
                                        <UnitOfMeasure >STRTYPE</UnitOfMeasure> <!-- optional -->
                                        <UPC >STRTYPE</UPC> <!-- optional -->
                                </UnitOfMeasure3>
                                <VendorInfo2> <!-- optional -->
                                        <ALU >STRTYPE</ALU> <!-- optional -->
                                        <OrderCost >AMTTYPE</OrderCost> <!-- optional -->
                                        <UPC >STRTYPE</UPC> <!-- optional -->
                                        <VendorListID  useMacro="MACROTYPE">IDTYPE</VendorListID> <!-- required -->
                                </VendorInfo2>
                                <VendorInfo3> <!-- optional -->
                                        <ALU >STRTYPE</ALU> <!-- optional -->
                                        <OrderCost >AMTTYPE</OrderCost> <!-- optional -->
                                        <UPC >STRTYPE</UPC> <!-- optional -->
                                        <VendorListID  useMacro="MACROTYPE">IDTYPE</VendorListID> <!-- required -->
                                </VendorInfo3>
                                <VendorInfo4> <!-- optional -->
                                        <ALU >STRTYPE</ALU> <!-- optional -->
                                        <OrderCost >AMTTYPE</OrderCost> <!-- optional -->
                                        <UPC >STRTYPE</UPC> <!-- optional -->
                                        <VendorListID  useMacro="MACROTYPE">IDTYPE</VendorListID> <!-- required -->
                                </VendorInfo4>
                                <VendorInfo5> <!-- optional -->
                                        <ALU >STRTYPE</ALU> <!-- optional -->
                                        <OrderCost >AMTTYPE</OrderCost> <!-- optional -->
                                        <UPC >STRTYPE</UPC> <!-- optional -->
                                        <VendorListID  useMacro="MACROTYPE">IDTYPE</VendorListID> <!-- required -->
                                </VendorInfo5>
                                <DataExtRet> <!-- optional, may repeat -->
                                        <OwnerID >GUIDTYPE</OwnerID> <!-- required -->
                                        <DataExtName >STRTYPE</DataExtName> <!-- required -->
                                        <!-- DataExtType may have one of the following values: INTTYPE, AMTTYPE, PRICETYPE, QUANTYPE, PERCENTTYPE, DATETIMETYPE, STR255TYPE, STR1024TYPE -->
                                        <DataExtType >ENUMTYPE</DataExtType> <!-- required -->
                                        <DataExtValue >STRTYPE</DataExtValue> <!-- required -->
                                </DataExtRet>
                                <IsEcommerce >BOOLTYPE</IsEcommerce> <!-- optional -->
                                <OnlineStoreNames >STRTYPE</OnlineStoreNames> <!-- optional -->
                        </ItemInventoryRet>
                </ItemInventoryAddRs>
        </QBPOSXMLMsgsRq>
</QBPOSXML>

   1
   2
   3
   4
   5
   6
   7
   8
   9
  10
  11
  12
  13
  14
  15
  16
  17
  18
  19
  20
  21
  22
  23
  24
  25
  26
  27
  28
  29
  30
  31
  32
  33
  34
  35
  36
  37
  38
  39
  40
  41
  42
  43
  44
  45
  46
  47
  48
  49
  50
  51
  52
  53
  54
  55
  56
  57
  58
  59
  60
  61
  62
  63
  64
  65
  66
  67
  68
  69
  70
  71
  72
  73
  74
  75
  76
  77
  78
  79
  80
  81
  82
  83
  84
  85
  86
  87
  88
  89
  90
  91
  92
  93
  94
  95
  96
  97
  98
  99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 111
 112
 113
 114
 115
 116
 117
 118
 119
 120
 121
 122
 123
 124
 125
 126
 127
 128
 129
 130
 131
 132
 133
 134
 135
 136
 137
 138
 139
 140
 141
 142
 143
 144
 145
 146
 147
 148
 149
 150
 151
 152
 153
 154
 155
 156
 157
 158
 159
 160
 161
 162
 163
 164
 165
 166
 167
 168
 169
 170
 171
 172
 173
 174
 175
 176
 177
 178
 179
 180
 181
 182
 183
 184
 185
 186
 187
 188
 189
 190
 191
 192
 193
 194
 195
 196
 197
 198
 199
 200
 201
 202
 203
 204
 205
 206
 207
 208
 209
 210
 211
 212
 213
 214
 215
 216
 217
 218
 219
 220
 221
 222
 223
 224
 225
 226
 227
 228
 229
 230
 231
 232
 233
 234
 235
 236
 237
 238
 239
 240
 241
 242
 243
 244
 245
 246
 247
 248
 249
 250
 251
 252
 253
 254
 255
 256
 257
 258
 259
 260
 261
 262
 263
 264
 265
 266
 267
 268
 269
 270
 271
 272
 273
 274
 275
 276
 277
 278
 279
 280
 281
 282
 283
 284
 285
 286
 287
 288
 289
 290
 291
 292
 293
 294
 295
 296
 297
 298
 299
 300
 301
 302
 303
 304
 305
 306
 307
 308
 309
 310
 311
 312
 313
 314
 315
 316
 317
 318
 319
 320
 321
 322
 323
 324
 325
 326
 327
 328
 329
 330
 331
 332
 333
 334
 335
 336
 337
 338
 339
 340
 341
 342
 343
 344
 345
 346
 347
 348
 349
 350
 351
 352
 353
 354
 355
 356
 357
 358
 359
 360
 361
 362
 363
 364
 365
 366
 367
 368
 369
 370
 371
 372
 373
 374
 375
 376
 377
 378
 379
 380
 381
 382
 383
 384
 385
 386
 387
 388
 389
 390
 391
 392
 393
 394
 395
 396
 397
 398
 399
 400
 401
 402
 403
 404
 405
 406
 407
 408
 409
 410
 411
 412
 413
 414
 415
 416
 417
 418
 419
 420
 421
 422
 423
 424
 425
 426
 427
 428
 429
 430
 431
 432
 433
 434
 435
 436
 437
 438
 439
 440
 441
 442
 443
 444
 445
 446
 447
 448
 449
 450
 451
 452
 453
 454
 455
 456
 457
 458
 459
 460
 461
 462
 463
 464
 465
 466
 467
 468
 469
 470
 471
 472
 473
 474
 475
 476
 477
 478
 479
 480
 481
 482
 483
 484
 485
 486
 487
 488
 489
 490
 491
 492
 493
 494
 495
 496
 497
 498
 499
 500
 501
 502
 503
 504
 505
 506
 507
 508
 509
 510
 511
 512
 513
 514
 515
 516
 517
 518
 519
 520
 521
 522
 523
 524
 525
 526
 527
 528
 529
 530
 531
 532
 533
 534
 535
 536
 537
 538
 539
 540
 541
 542
 543
 544
 545
 546
 547
 548
 549
 550
 551
 552
 553
 554
 555
 556
 557
 558
 559
 560
 561
 562
 563
 564
 565
 566
 567
 568
 569
 570
 571
 572
 573
 574
 575
 576
 577
 578
 579
 580
 581
 582
 583
 584
 585
 586
 587
 588
 589
 590
 591
 592
 593
 594
 595
 596
 597
 598
 599
 600
 601
 602
 603
 604
 605
 606
 607
 608
 609
 610
 611
 612
 613
 614
 615
 616
 617
 618
 619
 620
 621
 622
 623
 624
 625
 626
 627
 628
 629
 630
 631
 632
 633
 634
 635
 636
 637
 638
 639
 640
 641
 642
 643
 644
 645
 646
 647
 648
 649
 650
 651
 652
 653
 654
 655
 656
 657
 658
 659
 660
 661
 662
 663
 664
 665
 666
 667
 668
 669
 670
 671
 672
 673
 674
 675
 676
 677
 678
 679
 680
 681
 682
 683
 684
 685
 686
 687
 688
 689
 690
 691
 692
 693
 694
 695
 696
 697
 698
 699
 700
 701
 702
 703
 704
 705
 706
 707
 708
 709
 710
 711
 712
 713
 714
 715
 716
 717
 718
 719
 720
 721
 722
 723
 724
 725
 726
 727
 728
 729
 730
 731
 732
 733
 734
 735
 736
 737
 738
 739
 740
 741
 742
 743
 744
 745
 746
 747
 748
 749
 750
 751
 752
 753
 754
 755
 756
 757
 758
 759
 760
 761
 762
 763
 764
 765
 766
 767
 768
 769
 770
 771
 772
 773
 774
 775
 776
 777
 778
 779
 780
 781
 782
 783
 784
 785
 786
 787
 788
 789
 790
 791
 792
 793
 794
 795
 796
 797
 798
 799
 800
 801
 802
 803
 804
 805
 806
 807
 808
 809
 810
 811
 812
 813
 814
 815
 816
 817
 818
 819
 820
 821
 822
 823
 824
 825
 826
 827
 828
 829
 830
 831
 832
 833
 834
 835
 836
 837
 838
 839
 840
 841
 842
 843
 844
 845
 846
 847
 848
 849
 850
 851
 852
 853
 854
 855
 856
 857
 858
 859
 860
 861
 862
 863
 864
 865
 866
 867
 868
 869
 870
 871
 872
 873
 874
 875
 876
 877
 878
 879
 880
 881
 882
 883
 884
 885
 886
 887
 888
 889
 890
 891
 892
 893
 894
 895
 896
 897
 898
 899
 900
 901
 902
 903
 904
 905
 906
 907
 908
 909
 910
 911
 912
 913
 914
 915
 916
 917
 918
 919
 920
 921
 922
 923
 924
 925
 926
 927
 928
 929
 930
 931
 932
 933
 934
 935
 936
 937
 938
 939
 940
 941
 942
 943
 944
 945
 946
 947
 948
 949
 950
 951
 952
 953
 954
 955
 956
 957
 958
 959
 960
 961
 962
 963
 964
 965
 966
 967
 968
 969
 970
 971
 972
 973
 974
 975
 976
 977
 978
 979
 980
 981
 982
 983
 984
 985
 986
 987
 988
 989
 990
 991
 992
 993
 994
 995
 996
 997
 998
 999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
'The following sample code is generated as an illustration of
'Creating requests and parsing responses ONLY
'This code is NOT intended to show best practices or ideal code
'Use at your most careful discretion

imports System
imports System.Net
imports System.Drawing
imports System.Collections
imports System.ComponentModel
imports System.Windows.Forms
imports System.Data
imports System.IO
imports Interop.qbposfc4

        Public Class SampleItemInventoryAdd
                Public Sub  DoItemInventoryAdd()
                        Dim sessionBegun as Boolean
                        sessionBegun = False
                        Dim connectionOpen as Boolean
                        connectionOpen = False
                        Dim sessionManager as QBPOSSessionManager
                        sessionManager = nothing

                        Try
                                'Create the session Manager object
                                sessionManager = new QBPOSSessionManager

                                'Create the message set request object to hold our request
                                Dim requestMsgSet as IMsgSetRequest
                                requestMsgSet = sessionManager.CreateMsgSetRequest(4,0)
                                requestMsgSet.Attributes.OnError = ENRqOnError.roeContinue

                                BuildItemInventoryAddRq(requestMsgSet)

                                'Connect to QuickBooks and begin a session
                                sessionManager.OpenConnection("","Sample Code from OSR")
                                connectionOpen = True
                                sessionManager.BeginSession("")
                                sessionBegun = True

                                'Send the request and get the response from QuickBooks
                                Dim responseMsgSet as IMsgSetResponse
                                responseMsgSet = sessionManager.DoRequests(requestMsgSet)

                                'End the session and close the connection to QuickBooks
                                sessionManager.EndSession()
                                sessionBegun = False
                                sessionManager.CloseConnection()
                                connectionOpen = False

                                WalkItemInventoryAddRs(responseMsgSet)
                        Catch e as Exception
                                MessageBox.Show(e.Message, "Error")
                                if (sessionBegun) then
                                        sessionManager.EndSession()
                                End If
                                if (connectionOpen) then
                                        sessionManager.CloseConnection()
                                End If
                        End Try
                End Sub
                Public Sub BuildItemInventoryAddRq(requestMsgSet as IMsgSetRequest)
                        Dim ItemInventoryAddRq as IItemInventoryAdd
                        ItemInventoryAddRq= requestMsgSet.AppendItemInventoryAddRq()
                        'Set field value for ALU
                        ItemInventoryAddRq.ALU.SetValue("ab")
                        'Set field value for Attribute
                        ItemInventoryAddRq.Attribute.SetValue("ab")
                        'Set field value for COGSAccount
                        ItemInventoryAddRq.COGSAccount.SetValue("ab")
                        'Set field value for Cost
                        ItemInventoryAddRq.Cost.SetValue(10.01)
                        'Set field value for DepartmentListID
                        ItemInventoryAddRq.DepartmentListID.SetValue("200000-1011023419")
                        'Set attributes
                        'Set field value for DepartmentListID to use Macro
                        ItemInventoryAddRq.DepartmentListID.SetValueUseMacro("200000-1011023419")
                        'Set field value for Desc1
                        ItemInventoryAddRq.Desc1.SetValue("ab")
                        'Set field value for Desc2
                        ItemInventoryAddRq.Desc2.SetValue("ab")
                        'Set field value for IncomeAccount
                        ItemInventoryAddRq.IncomeAccount.SetValue("ab")
                        'Set field value for IsEligibleForCommission
                        ItemInventoryAddRq.IsEligibleForCommission.SetValue(True)
                        'Set field value for IsPrintingTags
                        ItemInventoryAddRq.IsPrintingTags.SetValue(True)
                        'Set field value for IsUnorderable
                        ItemInventoryAddRq.IsUnorderable.SetValue(True)
                        'Set field value for IsEligibleForRewards
                        ItemInventoryAddRq.IsEligibleForRewards.SetValue(True)
                        'Set field value for IsWebItem
                        ItemInventoryAddRq.IsWebItem.SetValue(True)
                        'Set field value for ItemType
                        ItemInventoryAddRq.ItemType.SetValue(ENItemType.itInventory)
                        'Set field value for MarginPercent
                        ItemInventoryAddRq.MarginPercent.SetValue(6)
                        'Set field value for MarkupPercent
                        ItemInventoryAddRq.MarkupPercent.SetValue(6)
                        'Set field value for MSRP
                        ItemInventoryAddRq.MSRP.SetValue(10.01)
                        'Set field value for OnHandStore01
                        ItemInventoryAddRq.OnHandStore01.SetValue(2)
                        'Set field value for OnHandStore02
                        ItemInventoryAddRq.OnHandStore02.SetValue(2)
                        'Set field value for OnHandStore03
                        ItemInventoryAddRq.OnHandStore03.SetValue(2)
                        'Set field value for OnHandStore04
                        ItemInventoryAddRq.OnHandStore04.SetValue(2)
                        'Set field value for OnHandStore05
                        ItemInventoryAddRq.OnHandStore05.SetValue(2)
                        'Set field value for OnHandStore06
                        ItemInventoryAddRq.OnHandStore06.SetValue(2)
                        'Set field value for OnHandStore07
                        ItemInventoryAddRq.OnHandStore07.SetValue(2)
                        'Set field value for OnHandStore08
                        ItemInventoryAddRq.OnHandStore08.SetValue(2)
                        'Set field value for OnHandStore09
                        ItemInventoryAddRq.OnHandStore09.SetValue(2)
                        'Set field value for OnHandStore10
                        ItemInventoryAddRq.OnHandStore10.SetValue(2)
                        'Set field value for OnHandStore11
                        ItemInventoryAddRq.OnHandStore11.SetValue(2)
                        'Set field value for OnHandStore12
                        ItemInventoryAddRq.OnHandStore12.SetValue(2)
                        'Set field value for OnHandStore13
                        ItemInventoryAddRq.OnHandStore13.SetValue(2)
                        'Set field value for OnHandStore14
                        ItemInventoryAddRq.OnHandStore14.SetValue(2)
                        'Set field value for OnHandStore15
                        ItemInventoryAddRq.OnHandStore15.SetValue(2)
                        'Set field value for OnHandStore16
                        ItemInventoryAddRq.OnHandStore16.SetValue(2)
                        'Set field value for OnHandStore17
                        ItemInventoryAddRq.OnHandStore17.SetValue(2)
                        'Set field value for OnHandStore18
                        ItemInventoryAddRq.OnHandStore18.SetValue(2)
                        'Set field value for OnHandStore19
                        ItemInventoryAddRq.OnHandStore19.SetValue(2)
                        'Set field value for OnHandStore20
                        ItemInventoryAddRq.OnHandStore20.SetValue(2)
                        'Set field value for ReorderPointStore01
                        ItemInventoryAddRq.ReorderPointStore01.SetValue(2)
                        'Set field value for ReorderPointStore02
                        ItemInventoryAddRq.ReorderPointStore02.SetValue(2)
                        'Set field value for ReorderPointStore03
                        ItemInventoryAddRq.ReorderPointStore03.SetValue(2)
                        'Set field value for ReorderPointStore04
                        ItemInventoryAddRq.ReorderPointStore04.SetValue(2)
                        'Set field value for ReorderPointStore05
                        ItemInventoryAddRq.ReorderPointStore05.SetValue(2)
                        'Set field value for ReorderPointStore06
                        ItemInventoryAddRq.ReorderPointStore06.SetValue(2)
                        'Set field value for ReorderPointStore07
                        ItemInventoryAddRq.ReorderPointStore07.SetValue(2)
                        'Set field value for ReorderPointStore08
                        ItemInventoryAddRq.ReorderPointStore08.SetValue(2)
                        'Set field value for ReorderPointStore09
                        ItemInventoryAddRq.ReorderPointStore09.SetValue(2)
                        'Set field value for ReorderPointStore10
                        ItemInventoryAddRq.ReorderPointStore10.SetValue(2)
                        'Set field value for ReorderPointStore11
                        ItemInventoryAddRq.ReorderPointStore11.SetValue(2)
                        'Set field value for ReorderPointStore12
                        ItemInventoryAddRq.ReorderPointStore12.SetValue(2)
                        'Set field value for ReorderPointStore13
                        ItemInventoryAddRq.ReorderPointStore13.SetValue(2)
                        'Set field value for ReorderPointStore14
                        ItemInventoryAddRq.ReorderPointStore14.SetValue(2)
                        'Set field value for ReorderPointStore15
                        ItemInventoryAddRq.ReorderPointStore15.SetValue(2)
                        'Set field value for ReorderPointStore16
                        ItemInventoryAddRq.ReorderPointStore16.SetValue(2)
                        'Set field value for ReorderPointStore17
                        ItemInventoryAddRq.ReorderPointStore17.SetValue(2)
                        'Set field value for ReorderPointStore18
                        ItemInventoryAddRq.ReorderPointStore18.SetValue(2)
                        'Set field value for ReorderPointStore19
                        ItemInventoryAddRq.ReorderPointStore19.SetValue(2)
                        'Set field value for ReorderPointStore20
                        ItemInventoryAddRq.ReorderPointStore20.SetValue(2)
                        'Set field value for OrderByUnit
                        ItemInventoryAddRq.OrderByUnit.SetValue("ab")
                        'Set field value for OrderCost
                        ItemInventoryAddRq.OrderCost.SetValue(10.01)
                        'Set field value for Price1
                        ItemInventoryAddRq.Price1.SetValue(10.01)
                        'Set field value for Price2
                        ItemInventoryAddRq.Price2.SetValue(10.01)
                        'Set field value for Price3
                        ItemInventoryAddRq.Price3.SetValue(10.01)
                        'Set field value for Price4
                        ItemInventoryAddRq.Price4.SetValue(10.01)
                        'Set field value for Price5
                        ItemInventoryAddRq.Price5.SetValue(10.01)
                        'Set field value for ReorderPoint
                        ItemInventoryAddRq.ReorderPoint.SetValue(2)
                        'Set field value for SellByUnit
                        ItemInventoryAddRq.SellByUnit.SetValue("ab")
                        'Set field value for SerialFlag
                        ItemInventoryAddRq.SerialFlag.SetValue(ENSerialFlag.sfOptional)
                        'Set field value for Size
                        ItemInventoryAddRq.Size.SetValue("ab")
                        'Set field value for TaxCode
                        ItemInventoryAddRq.TaxCode.SetValue("ab")
                        'Set field value for UnitOfMeasure
                        ItemInventoryAddRq.UnitOfMeasure.SetValue("ab")
                        'Set field value for UPC
                        ItemInventoryAddRq.UPC.SetValue("ab")
                        'Set field value for VendorListID
                        ItemInventoryAddRq.VendorListID.SetValue("200000-1011023419")
                        'Set attributes
                        'Set field value for VendorListID to use Macro
                        ItemInventoryAddRq.VendorListID.SetValueUseMacro("200000-1011023419")
                        'Set field value for WebDesc
                        ItemInventoryAddRq.WebDesc.SetValue("ab")
                        'Set field value for WebPrice
                        ItemInventoryAddRq.WebPrice.SetValue(10.01)
                        'Set field value for Manufacturer
                        ItemInventoryAddRq.Manufacturer.SetValue("ab")
                        'Set field value for Weight
                        ItemInventoryAddRq.Weight.SetValue(12.34)
                        'Set field value for Keywords
                        ItemInventoryAddRq.Keywords.SetValue("ab")
                        'Set field value for WebCategories
                        ItemInventoryAddRq.WebCategories.SetValue("ab")
                        'Set field value for ALU
                        ItemInventoryAddRq.UnitOfMeasure1.ALU.SetValue("ab")
                        'Set field value for MSRP
                        ItemInventoryAddRq.UnitOfMeasure1.MSRP.SetValue(10.01)
                        'Set field value for NumberOfBaseUnits
                        ItemInventoryAddRq.UnitOfMeasure1.NumberOfBaseUnits.SetValue(2)
                        'Set field value for Price1
                        ItemInventoryAddRq.UnitOfMeasure1.Price1.SetValue(10.01)
                        'Set field value for Price2
                        ItemInventoryAddRq.UnitOfMeasure1.Price2.SetValue(10.01)
                        'Set field value for Price3
                        ItemInventoryAddRq.UnitOfMeasure1.Price3.SetValue(10.01)
                        'Set field value for Price4
                        ItemInventoryAddRq.UnitOfMeasure1.Price4.SetValue(10.01)
                        'Set field value for Price5
                        ItemInventoryAddRq.UnitOfMeasure1.Price5.SetValue(10.01)
                        'Set field value for UnitOfMeasure
                        ItemInventoryAddRq.UnitOfMeasure1.UnitOfMeasure.SetValue("ab")
                        'Set field value for UPC
                        ItemInventoryAddRq.UnitOfMeasure1.UPC.SetValue("ab")
                        'Set field value for ALU
                        ItemInventoryAddRq.UnitOfMeasure2.ALU.SetValue("ab")
                        'Set field value for MSRP
                        ItemInventoryAddRq.UnitOfMeasure2.MSRP.SetValue(10.01)
                        'Set field value for NumberOfBaseUnits
                        ItemInventoryAddRq.UnitOfMeasure2.NumberOfBaseUnits.SetValue(2)
                        'Set field value for Price1
                        ItemInventoryAddRq.UnitOfMeasure2.Price1.SetValue(10.01)
                        'Set field value for Price2
                        ItemInventoryAddRq.UnitOfMeasure2.Price2.SetValue(10.01)
                        'Set field value for Price3
                        ItemInventoryAddRq.UnitOfMeasure2.Price3.SetValue(10.01)
                        'Set field value for Price4
                        ItemInventoryAddRq.UnitOfMeasure2.Price4.SetValue(10.01)
                        'Set field value for Price5
                        ItemInventoryAddRq.UnitOfMeasure2.Price5.SetValue(10.01)
                        'Set field value for UnitOfMeasure
                        ItemInventoryAddRq.UnitOfMeasure2.UnitOfMeasure.SetValue("ab")
                        'Set field value for UPC
                        ItemInventoryAddRq.UnitOfMeasure2.UPC.SetValue("ab")
                        'Set field value for ALU
                        ItemInventoryAddRq.UnitOfMeasure3.ALU.SetValue("ab")
                        'Set field value for MSRP
                        ItemInventoryAddRq.UnitOfMeasure3.MSRP.SetValue(10.01)
                        'Set field value for NumberOfBaseUnits
                        ItemInventoryAddRq.UnitOfMeasure3.NumberOfBaseUnits.SetValue(2)
                        'Set field value for Price1
                        ItemInventoryAddRq.UnitOfMeasure3.Price1.SetValue(10.01)
                        'Set field value for Price2
                        ItemInventoryAddRq.UnitOfMeasure3.Price2.SetValue(10.01)
                        'Set field value for Price3
                        ItemInventoryAddRq.UnitOfMeasure3.Price3.SetValue(10.01)
                        'Set field value for Price4
                        ItemInventoryAddRq.UnitOfMeasure3.Price4.SetValue(10.01)
                        'Set field value for Price5
                        ItemInventoryAddRq.UnitOfMeasure3.Price5.SetValue(10.01)
                        'Set field value for UnitOfMeasure
                        ItemInventoryAddRq.UnitOfMeasure3.UnitOfMeasure.SetValue("ab")
                        'Set field value for UPC
                        ItemInventoryAddRq.UnitOfMeasure3.UPC.SetValue("ab")
                        'Set field value for ALU
                        ItemInventoryAddRq.VendorInfo2.ALU.SetValue("ab")
                        'Set field value for OrderCost
                        ItemInventoryAddRq.VendorInfo2.OrderCost.SetValue(10.01)
                        'Set field value for UPC
                        ItemInventoryAddRq.VendorInfo2.UPC.SetValue("ab")
                        'Set field value for VendorListID
                        ItemInventoryAddRq.VendorInfo2.VendorListID.SetValue("200000-1011023419")
                        'Set attributes
                        'Set field value for VendorListID to use Macro
                        ItemInventoryAddRq.VendorInfo2.VendorListID.SetValueUseMacro("200000-1011023419")
                        'Set field value for ALU
                        ItemInventoryAddRq.VendorInfo3.ALU.SetValue("ab")
                        'Set field value for OrderCost
                        ItemInventoryAddRq.VendorInfo3.OrderCost.SetValue(10.01)
                        'Set field value for UPC
                        ItemInventoryAddRq.VendorInfo3.UPC.SetValue("ab")
                        'Set field value for VendorListID
                        ItemInventoryAddRq.VendorInfo3.VendorListID.SetValue("200000-1011023419")
                        'Set attributes
                        'Set field value for VendorListID to use Macro
                        ItemInventoryAddRq.VendorInfo3.VendorListID.SetValueUseMacro("200000-1011023419")
                        'Set field value for ALU
                        ItemInventoryAddRq.VendorInfo4.ALU.SetValue("ab")
                        'Set field value for OrderCost
                        ItemInventoryAddRq.VendorInfo4.OrderCost.SetValue(10.01)
                        'Set field value for UPC
                        ItemInventoryAddRq.VendorInfo4.UPC.SetValue("ab")
                        'Set field value for VendorListID
                        ItemInventoryAddRq.VendorInfo4.VendorListID.SetValue("200000-1011023419")
                        'Set attributes
                        'Set field value for VendorListID to use Macro
                        ItemInventoryAddRq.VendorInfo4.VendorListID.SetValueUseMacro("200000-1011023419")
                        'Set field value for ALU
                        ItemInventoryAddRq.VendorInfo5.ALU.SetValue("ab")
                        'Set field value for OrderCost
                        ItemInventoryAddRq.VendorInfo5.OrderCost.SetValue(10.01)
                        'Set field value for UPC
                        ItemInventoryAddRq.VendorInfo5.UPC.SetValue("ab")
                        'Set field value for VendorListID
                        ItemInventoryAddRq.VendorInfo5.VendorListID.SetValue("200000-1011023419")
                        'Set attributes
                        'Set field value for VendorListID to use Macro
                        ItemInventoryAddRq.VendorInfo5.VendorListID.SetValueUseMacro("200000-1011023419")
                        'Set field value for IsEcommerce
                        ItemInventoryAddRq.IsEcommerce.SetValue(True)
                        'Set field value for OnlineStoreNames
                        ItemInventoryAddRq.OnlineStoreNames.SetValue("ab")
                        'Set field value for IncludeRetElementList
                        'May create more than one of these if needed
                        ItemInventoryAddRq.IncludeRetElementList.Add("ab")
                End Sub




                Public Sub WalkItemInventoryAddRs( responseMsgSet as IMsgSetResponse)
                        if (responseMsgSet is nothing) then
                                Exit Sub
                        End If

                        Dim responseList as IResponseList
                        responseList = responseMsgSet.ResponseList
                        if (responseList is nothing) then
                                Exit Sub
                        End If

                        'if we sent only one request, there is only one response, we'll walk the list for this sample
                        for j=0 to responseList.Count-1
                                Dim response as IResponse
                                response = responseList.GetAt(j)
                                'check the status code of the response, 0=ok, >0 is warning
                                if (response.StatusCode >= 0) then
                                        'the request-specific response is in the details, make sure we have some
                                        if (not response.Detail is nothing) then
                                                'make sure the response is the type we're expecting
                                                Dim responseType as ENResponseType
                                                responseType = CType(response.Type.GetValue(),ENResponseType)
                                                if (responseType = ENResponseType.rtItemInventoryAddRs) then
                                                        'upcast to more specific type here, this is safe because we checked with response.Type check above
                                                        Dim ItemInventoryRet as IItemInventoryRet
                                                        ItemInventoryRet = CType(response.Detail,IItemInventoryRet)
                                                                WalkItemInventoryRet(ItemInventoryRet)
                                                End If
                                        End If
                                End If
                        Next j
                End Sub




                Public Sub WalkItemInventoryRet(ItemInventoryRet as IItemInventoryRet)
                        if (ItemInventoryRet is nothing) then
                                Exit Sub
                        End If

                        'Go through all the elements of IItemInventoryRet
                        'Get value of ListID
                        if ( not ItemInventoryRet.ListID is nothing) then
                                Dim ListID1199 as String
                                ListID1199 = ItemInventoryRet.ListID.GetValue()
                        End If
                        'Get value of TimeCreated
                        if ( not ItemInventoryRet.TimeCreated is nothing) then
                                Dim TimeCreated1200 as DateTime
                                TimeCreated1200 = ItemInventoryRet.TimeCreated.GetValue()
                        End If
                        'Get value of TimeModified
                        if ( not ItemInventoryRet.TimeModified is nothing) then
                                Dim TimeModified1201 as DateTime
                                TimeModified1201 = ItemInventoryRet.TimeModified.GetValue()
                        End If
                        'Get value of ALU
                        if ( not ItemInventoryRet.ALU is nothing) then
                                Dim ALU1202 as String
                                ALU1202 = ItemInventoryRet.ALU.GetValue()
                        End If
                        'Get value of Attribute
                        if ( not ItemInventoryRet.Attribute is nothing) then
                                Dim Attribute1203 as String
                                Attribute1203 = ItemInventoryRet.Attribute.GetValue()
                        End If
                        'Get value of COGSAccount
                        if ( not ItemInventoryRet.COGSAccount is nothing) then
                                Dim COGSAccount1204 as String
                                COGSAccount1204 = ItemInventoryRet.COGSAccount.GetValue()
                        End If
                        'Get value of Cost
                        if ( not ItemInventoryRet.Cost is nothing) then
                                Dim Cost1205 as Double
                                Cost1205 = ItemInventoryRet.Cost.GetValue()
                        End If
                        'Get value of DepartmentCode
                        if ( not ItemInventoryRet.DepartmentCode is nothing) then
                                Dim DepartmentCode1206 as String
                                DepartmentCode1206 = ItemInventoryRet.DepartmentCode.GetValue()
                        End If
                        'Get value of DepartmentListID
                        if ( not ItemInventoryRet.DepartmentListID is nothing) then
                                Dim DepartmentListID1207 as String
                                DepartmentListID1207 = ItemInventoryRet.DepartmentListID.GetValue()
                        End If
                        'Get value of Desc1
                        if ( not ItemInventoryRet.Desc1 is nothing) then
                                Dim Desc11208 as String
                                Desc11208 = ItemInventoryRet.Desc1.GetValue()
                        End If
                        'Get value of Desc2
                        if ( not ItemInventoryRet.Desc2 is nothing) then
                                Dim Desc21209 as String
                                Desc21209 = ItemInventoryRet.Desc2.GetValue()
                        End If
                        'Get value of IncomeAccount
                        if ( not ItemInventoryRet.IncomeAccount is nothing) then
                                Dim IncomeAccount1210 as String
                                IncomeAccount1210 = ItemInventoryRet.IncomeAccount.GetValue()
                        End If
                        'Get value of IsBelowReorder
                        if ( not ItemInventoryRet.IsBelowReorder is nothing) then
                                Dim IsBelowReorder1211 as Boolean
                                IsBelowReorder1211 = ItemInventoryRet.IsBelowReorder.GetValue()
                        End If
                        'Get value of IsEligibleForCommission
                        if ( not ItemInventoryRet.IsEligibleForCommission is nothing) then
                                Dim IsEligibleForCommission1212 as Boolean
                                IsEligibleForCommission1212 = ItemInventoryRet.IsEligibleForCommission.GetValue()
                        End If
                        'Get value of IsPrintingTags
                        if ( not ItemInventoryRet.IsPrintingTags is nothing) then
                                Dim IsPrintingTags1213 as Boolean
                                IsPrintingTags1213 = ItemInventoryRet.IsPrintingTags.GetValue()
                        End If
                        'Get value of IsUnorderable
                        if ( not ItemInventoryRet.IsUnorderable is nothing) then
                                Dim IsUnorderable1214 as Boolean
                                IsUnorderable1214 = ItemInventoryRet.IsUnorderable.GetValue()
                        End If
                        'Get value of HasPictures
                        if ( not ItemInventoryRet.HasPictures is nothing) then
                                Dim HasPictures1215 as Boolean
                                HasPictures1215 = ItemInventoryRet.HasPictures.GetValue()
                        End If
                        'Get value of IsEligibleForRewards
                        if ( not ItemInventoryRet.IsEligibleForRewards is nothing) then
                                Dim IsEligibleForRewards1216 as Boolean
                                IsEligibleForRewards1216 = ItemInventoryRet.IsEligibleForRewards.GetValue()
                        End If
                        'Get value of IsWebItem
                        if ( not ItemInventoryRet.IsWebItem is nothing) then
                                Dim IsWebItem1217 as Boolean
                                IsWebItem1217 = ItemInventoryRet.IsWebItem.GetValue()
                        End If
                        'Get value of ItemNumber
                        if ( not ItemInventoryRet.ItemNumber is nothing) then
                                Dim ItemNumber1218 as Integer
                                ItemNumber1218 = ItemInventoryRet.ItemNumber.GetValue()
                        End If
                        'Get value of ItemType
                        if ( not ItemInventoryRet.ItemType is nothing) then
                                Dim ItemType1219 as ENItemType
                                ItemType1219 = ItemInventoryRet.ItemType.GetValue()
                        End If
                        'Get value of LastReceived
                        if ( not ItemInventoryRet.LastReceived is nothing) then
                                Dim LastReceived1220 as DateTime
                                LastReceived1220 = ItemInventoryRet.LastReceived.GetValue()
                        End If
                        'Get value of MarginPercent
                        if ( not ItemInventoryRet.MarginPercent is nothing) then
                                Dim MarginPercent1221 as Integer
                                MarginPercent1221 = ItemInventoryRet.MarginPercent.GetValue()
                        End If
                        'Get value of MarkupPercent
                        if ( not ItemInventoryRet.MarkupPercent is nothing) then
                                Dim MarkupPercent1222 as Integer
                                MarkupPercent1222 = ItemInventoryRet.MarkupPercent.GetValue()
                        End If
                        'Get value of MSRP
                        if ( not ItemInventoryRet.MSRP is nothing) then
                                Dim MSRP1223 as Double
                                MSRP1223 = ItemInventoryRet.MSRP.GetValue()
                        End If
                        'Get value of OnHandStore01
                        if ( not ItemInventoryRet.OnHandStore01 is nothing) then
                                Dim OnHandStore011224 as Double
                                OnHandStore011224 = ItemInventoryRet.OnHandStore01.GetValue()
                        End If
                        'Get value of OnHandStore02
                        if ( not ItemInventoryRet.OnHandStore02 is nothing) then
                                Dim OnHandStore021225 as Double
                                OnHandStore021225 = ItemInventoryRet.OnHandStore02.GetValue()
                        End If
                        'Get value of OnHandStore03
                        if ( not ItemInventoryRet.OnHandStore03 is nothing) then
                                Dim OnHandStore031226 as Double
                                OnHandStore031226 = ItemInventoryRet.OnHandStore03.GetValue()
                        End If
                        'Get value of OnHandStore04
                        if ( not ItemInventoryRet.OnHandStore04 is nothing) then
                                Dim OnHandStore041227 as Double
                                OnHandStore041227 = ItemInventoryRet.OnHandStore04.GetValue()
                        End If
                        'Get value of OnHandStore05
                        if ( not ItemInventoryRet.OnHandStore05 is nothing) then
                                Dim OnHandStore051228 as Double
                                OnHandStore051228 = ItemInventoryRet.OnHandStore05.GetValue()
                        End If
                        'Get value of OnHandStore06
                        if ( not ItemInventoryRet.OnHandStore06 is nothing) then
                                Dim OnHandStore061229 as Double
                                OnHandStore061229 = ItemInventoryRet.OnHandStore06.GetValue()
                        End If
                        'Get value of OnHandStore07
                        if ( not ItemInventoryRet.OnHandStore07 is nothing) then
                                Dim OnHandStore071230 as Double
                                OnHandStore071230 = ItemInventoryRet.OnHandStore07.GetValue()
                        End If
                        'Get value of OnHandStore08
                        if ( not ItemInventoryRet.OnHandStore08 is nothing) then
                                Dim OnHandStore081231 as Double
                                OnHandStore081231 = ItemInventoryRet.OnHandStore08.GetValue()
                        End If
                        'Get value of OnHandStore09
                        if ( not ItemInventoryRet.OnHandStore09 is nothing) then
                                Dim OnHandStore091232 as Double
                                OnHandStore091232 = ItemInventoryRet.OnHandStore09.GetValue()
                        End If
                        'Get value of OnHandStore10
                        if ( not ItemInventoryRet.OnHandStore10 is nothing) then
                                Dim OnHandStore101233 as Double
                                OnHandStore101233 = ItemInventoryRet.OnHandStore10.GetValue()
                        End If
                        'Get value of OnHandStore11
                        if ( not ItemInventoryRet.OnHandStore11 is nothing) then
                                Dim OnHandStore111234 as Double
                                OnHandStore111234 = ItemInventoryRet.OnHandStore11.GetValue()
                        End If
                        'Get value of OnHandStore12
                        if ( not ItemInventoryRet.OnHandStore12 is nothing) then
                                Dim OnHandStore121235 as Double
                                OnHandStore121235 = ItemInventoryRet.OnHandStore12.GetValue()
                        End If
                        'Get value of OnHandStore13
                        if ( not ItemInventoryRet.OnHandStore13 is nothing) then
                                Dim OnHandStore131236 as Double
                                OnHandStore131236 = ItemInventoryRet.OnHandStore13.GetValue()
                        End If
                        'Get value of OnHandStore14
                        if ( not ItemInventoryRet.OnHandStore14 is nothing) then
                                Dim OnHandStore141237 as Double
                                OnHandStore141237 = ItemInventoryRet.OnHandStore14.GetValue()
                        End If
                        'Get value of OnHandStore15
                        if ( not ItemInventoryRet.OnHandStore15 is nothing) then
                                Dim OnHandStore151238 as Double
                                OnHandStore151238 = ItemInventoryRet.OnHandStore15.GetValue()
                        End If
                        'Get value of OnHandStore16
                        if ( not ItemInventoryRet.OnHandStore16 is nothing) then
                                Dim OnHandStore161239 as Double
                                OnHandStore161239 = ItemInventoryRet.OnHandStore16.GetValue()
                        End If
                        'Get value of OnHandStore17
                        if ( not ItemInventoryRet.OnHandStore17 is nothing) then
                                Dim OnHandStore171240 as Double
                                OnHandStore171240 = ItemInventoryRet.OnHandStore17.GetValue()
                        End If
                        'Get value of OnHandStore18
                        if ( not ItemInventoryRet.OnHandStore18 is nothing) then
                                Dim OnHandStore181241 as Double
                                OnHandStore181241 = ItemInventoryRet.OnHandStore18.GetValue()
                        End If
                        'Get value of OnHandStore19
                        if ( not ItemInventoryRet.OnHandStore19 is nothing) then
                                Dim OnHandStore191242 as Double
                                OnHandStore191242 = ItemInventoryRet.OnHandStore19.GetValue()
                        End If
                        'Get value of OnHandStore20
                        if ( not ItemInventoryRet.OnHandStore20 is nothing) then
                                Dim OnHandStore201243 as Double
                                OnHandStore201243 = ItemInventoryRet.OnHandStore20.GetValue()
                        End If
                        'Get value of ReorderPointStore01
                        if ( not ItemInventoryRet.ReorderPointStore01 is nothing) then
                                Dim ReorderPointStore011244 as Double
                                ReorderPointStore011244 = ItemInventoryRet.ReorderPointStore01.GetValue()
                        End If
                        'Get value of ReorderPointStore02
                        if ( not ItemInventoryRet.ReorderPointStore02 is nothing) then
                                Dim ReorderPointStore021245 as Double
                                ReorderPointStore021245 = ItemInventoryRet.ReorderPointStore02.GetValue()
                        End If
                        'Get value of ReorderPointStore03
                        if ( not ItemInventoryRet.ReorderPointStore03 is nothing) then
                                Dim ReorderPointStore031246 as Double
                                ReorderPointStore031246 = ItemInventoryRet.ReorderPointStore03.GetValue()
                        End If
                        'Get value of ReorderPointStore04
                        if ( not ItemInventoryRet.ReorderPointStore04 is nothing) then
                                Dim ReorderPointStore041247 as Double
                                ReorderPointStore041247 = ItemInventoryRet.ReorderPointStore04.GetValue()
                        End If
                        'Get value of ReorderPointStore05
                        if ( not ItemInventoryRet.ReorderPointStore05 is nothing) then
                                Dim ReorderPointStore051248 as Double
                                ReorderPointStore051248 = ItemInventoryRet.ReorderPointStore05.GetValue()
                        End If
                        'Get value of ReorderPointStore06
                        if ( not ItemInventoryRet.ReorderPointStore06 is nothing) then
                                Dim ReorderPointStore061249 as Double
                                ReorderPointStore061249 = ItemInventoryRet.ReorderPointStore06.GetValue()
                        End If
                        'Get value of ReorderPointStore07
                        if ( not ItemInventoryRet.ReorderPointStore07 is nothing) then
                                Dim ReorderPointStore071250 as Double
                                ReorderPointStore071250 = ItemInventoryRet.ReorderPointStore07.GetValue()
                        End If
                        'Get value of ReorderPointStore08
                        if ( not ItemInventoryRet.ReorderPointStore08 is nothing) then
                                Dim ReorderPointStore081251 as Double
                                ReorderPointStore081251 = ItemInventoryRet.ReorderPointStore08.GetValue()
                        End If
                        'Get value of ReorderPointStore09
                        if ( not ItemInventoryRet.ReorderPointStore09 is nothing) then
                                Dim ReorderPointStore091252 as Double
                                ReorderPointStore091252 = ItemInventoryRet.ReorderPointStore09.GetValue()
                        End If
                        'Get value of ReorderPointStore10
                        if ( not ItemInventoryRet.ReorderPointStore10 is nothing) then
                                Dim ReorderPointStore101253 as Double
                                ReorderPointStore101253 = ItemInventoryRet.ReorderPointStore10.GetValue()
                        End If
                        'Get value of ReorderPointStore11
                        if ( not ItemInventoryRet.ReorderPointStore11 is nothing) then
                                Dim ReorderPointStore111254 as Double
                                ReorderPointStore111254 = ItemInventoryRet.ReorderPointStore11.GetValue()
                        End If
                        'Get value of ReorderPointStore12
                        if ( not ItemInventoryRet.ReorderPointStore12 is nothing) then
                                Dim ReorderPointStore121255 as Double
                                ReorderPointStore121255 = ItemInventoryRet.ReorderPointStore12.GetValue()
                        End If
                        'Get value of ReorderPointStore13
                        if ( not ItemInventoryRet.ReorderPointStore13 is nothing) then
                                Dim ReorderPointStore131256 as Double
                                ReorderPointStore131256 = ItemInventoryRet.ReorderPointStore13.GetValue()
                        End If
                        'Get value of ReorderPointStore14
                        if ( not ItemInventoryRet.ReorderPointStore14 is nothing) then
                                Dim ReorderPointStore141257 as Double
                                ReorderPointStore141257 = ItemInventoryRet.ReorderPointStore14.GetValue()
                        End If
                        'Get value of ReorderPointStore15
                        if ( not ItemInventoryRet.ReorderPointStore15 is nothing) then
                                Dim ReorderPointStore151258 as Double
                                ReorderPointStore151258 = ItemInventoryRet.ReorderPointStore15.GetValue()
                        End If
                        'Get value of ReorderPointStore16
                        if ( not ItemInventoryRet.ReorderPointStore16 is nothing) then
                                Dim ReorderPointStore161259 as Double
                                ReorderPointStore161259 = ItemInventoryRet.ReorderPointStore16.GetValue()
                        End If
                        'Get value of ReorderPointStore17
                        if ( not ItemInventoryRet.ReorderPointStore17 is nothing) then
                                Dim ReorderPointStore171260 as Double
                                ReorderPointStore171260 = ItemInventoryRet.ReorderPointStore17.GetValue()
                        End If
                        'Get value of ReorderPointStore18
                        if ( not ItemInventoryRet.ReorderPointStore18 is nothing) then
                                Dim ReorderPointStore181261 as Double
                                ReorderPointStore181261 = ItemInventoryRet.ReorderPointStore18.GetValue()
                        End If
                        'Get value of ReorderPointStore19
                        if ( not ItemInventoryRet.ReorderPointStore19 is nothing) then
                                Dim ReorderPointStore191262 as Double
                                ReorderPointStore191262 = ItemInventoryRet.ReorderPointStore19.GetValue()
                        End If
                        'Get value of ReorderPointStore20
                        if ( not ItemInventoryRet.ReorderPointStore20 is nothing) then
                                Dim ReorderPointStore201263 as Double
                                ReorderPointStore201263 = ItemInventoryRet.ReorderPointStore20.GetValue()
                        End If
                        'Get value of OrderByUnit
                        if ( not ItemInventoryRet.OrderByUnit is nothing) then
                                Dim OrderByUnit1264 as String
                                OrderByUnit1264 = ItemInventoryRet.OrderByUnit.GetValue()
                        End If
                        'Get value of OrderCost
                        if ( not ItemInventoryRet.OrderCost is nothing) then
                                Dim OrderCost1265 as Double
                                OrderCost1265 = ItemInventoryRet.OrderCost.GetValue()
                        End If
                        'Get value of Price1
                        if ( not ItemInventoryRet.Price1 is nothing) then
                                Dim Price11266 as Double
                                Price11266 = ItemInventoryRet.Price1.GetValue()
                        End If
                        'Get value of Price2
                        if ( not ItemInventoryRet.Price2 is nothing) then
                                Dim Price21267 as Double
                                Price21267 = ItemInventoryRet.Price2.GetValue()
                        End If
                        'Get value of Price3
                        if ( not ItemInventoryRet.Price3 is nothing) then
                                Dim Price31268 as Double
                                Price31268 = ItemInventoryRet.Price3.GetValue()
                        End If
                        'Get value of Price4
                        if ( not ItemInventoryRet.Price4 is nothing) then
                                Dim Price41269 as Double
                                Price41269 = ItemInventoryRet.Price4.GetValue()
                        End If
                        'Get value of Price5
                        if ( not ItemInventoryRet.Price5 is nothing) then
                                Dim Price51270 as Double
                                Price51270 = ItemInventoryRet.Price5.GetValue()
                        End If
                        'Get value of QuantityOnCustomerOrder
                        if ( not ItemInventoryRet.QuantityOnCustomerOrder is nothing) then
                                Dim QuantityOnCustomerOrder1271 as Double
                                QuantityOnCustomerOrder1271 = ItemInventoryRet.QuantityOnCustomerOrder.GetValue()
                        End If
                        'Get value of QuantityOnHand
                        if ( not ItemInventoryRet.QuantityOnHand is nothing) then
                                Dim QuantityOnHand1272 as Double
                                QuantityOnHand1272 = ItemInventoryRet.QuantityOnHand.GetValue()
                        End If
                        'Get value of QuantityOnOrder
                        if ( not ItemInventoryRet.QuantityOnOrder is nothing) then
                                Dim QuantityOnOrder1273 as Double
                                QuantityOnOrder1273 = ItemInventoryRet.QuantityOnOrder.GetValue()
                        End If
                        'Get value of QuantityOnPendingOrder
                        if ( not ItemInventoryRet.QuantityOnPendingOrder is nothing) then
                                Dim QuantityOnPendingOrder1274 as Double
                                QuantityOnPendingOrder1274 = ItemInventoryRet.QuantityOnPendingOrder.GetValue()
                        End If
                        if (not ItemInventoryRet.AvailableQtyList is nothing)
                                Dim i1275 as Integer
                                for i1275 = 0  to ItemInventoryRet.AvailableQtyList.Count - 1
                                        Dim AvailableQty as IAvailableQty
                                        AvailableQty = ItemInventoryRet.AvailableQtyList.GetAt(i1275)
                                        'Get value of StoreNumber
                                        if ( not AvailableQty.StoreNumber is nothing) then
                                                Dim StoreNumber1276 as Integer
                                                StoreNumber1276 = AvailableQty.StoreNumber.GetValue()
                                        End If
                                        'Get value of QuantityOnOrder
                                        if ( not AvailableQty.QuantityOnOrder is nothing) then
                                                Dim QuantityOnOrder1277 as Double
                                                QuantityOnOrder1277 = AvailableQty.QuantityOnOrder.GetValue()
                                        End If
                                        'Get value of QuantityOnCustomerOrder
                                        if ( not AvailableQty.QuantityOnCustomerOrder is nothing) then
                                                Dim QuantityOnCustomerOrder1278 as Double
                                                QuantityOnCustomerOrder1278 = AvailableQty.QuantityOnCustomerOrder.GetValue()
                                        End If
                                        'Get value of QuantityOnPendingOrder
                                        if ( not AvailableQty.QuantityOnPendingOrder is nothing) then
                                                Dim QuantityOnPendingOrder1279 as Double
                                                QuantityOnPendingOrder1279 = AvailableQty.QuantityOnPendingOrder.GetValue()
                                        End If
                                Next i1275
                        End If
                        'Get value of ReorderPoint
                        if ( not ItemInventoryRet.ReorderPoint is nothing) then
                                Dim ReorderPoint1280 as Double
                                ReorderPoint1280 = ItemInventoryRet.ReorderPoint.GetValue()
                        End If
                        'Get value of SellByUnit
                        if ( not ItemInventoryRet.SellByUnit is nothing) then
                                Dim SellByUnit1281 as String
                                SellByUnit1281 = ItemInventoryRet.SellByUnit.GetValue()
                        End If
                        'Get value of SerialFlag
                        if ( not ItemInventoryRet.SerialFlag is nothing) then
                                Dim SerialFlag1282 as ENSerialFlag
                                SerialFlag1282 = ItemInventoryRet.SerialFlag.GetValue()
                        End If
                        'Get value of Size
                        if ( not ItemInventoryRet.Size is nothing) then
                                Dim Size1283 as String
                                Size1283 = ItemInventoryRet.Size.GetValue()
                        End If
                        'Get value of StoreExchangeStatus
                        if ( not ItemInventoryRet.StoreExchangeStatus is nothing) then
                                Dim StoreExchangeStatus1284 as ENStoreExchangeStatus
                                StoreExchangeStatus1284 = ItemInventoryRet.StoreExchangeStatus.GetValue()
                        End If
                        'Get value of TaxCode
                        if ( not ItemInventoryRet.TaxCode is nothing) then
                                Dim TaxCode1285 as String
                                TaxCode1285 = ItemInventoryRet.TaxCode.GetValue()
                        End If
                        'Get value of UnitOfMeasure
                        if ( not ItemInventoryRet.UnitOfMeasure is nothing) then
                                Dim UnitOfMeasure1286 as String
                                UnitOfMeasure1286 = ItemInventoryRet.UnitOfMeasure.GetValue()
                        End If
                        'Get value of UPC
                        if ( not ItemInventoryRet.UPC is nothing) then
                                Dim UPC1287 as String
                                UPC1287 = ItemInventoryRet.UPC.GetValue()
                        End If
                        'Get value of VendorCode
                        if ( not ItemInventoryRet.VendorCode is nothing) then
                                Dim VendorCode1288 as String
                                VendorCode1288 = ItemInventoryRet.VendorCode.GetValue()
                        End If
                        'Get value of VendorListID
                        if ( not ItemInventoryRet.VendorListID is nothing) then
                                Dim VendorListID1289 as String
                                VendorListID1289 = ItemInventoryRet.VendorListID.GetValue()
                        End If
                        'Get value of WebDesc
                        if ( not ItemInventoryRet.WebDesc is nothing) then
                                Dim WebDesc1290 as String
                                WebDesc1290 = ItemInventoryRet.WebDesc.GetValue()
                        End If
                        'Get value of WebPrice
                        if ( not ItemInventoryRet.WebPrice is nothing) then
                                Dim WebPrice1291 as Double
                                WebPrice1291 = ItemInventoryRet.WebPrice.GetValue()
                        End If
                        'Get value of Manufacturer
                        if ( not ItemInventoryRet.Manufacturer is nothing) then
                                Dim Manufacturer1292 as String
                                Manufacturer1292 = ItemInventoryRet.Manufacturer.GetValue()
                        End If
                        'Get value of Weight
                        if ( not ItemInventoryRet.Weight is nothing) then
                                Dim Weight1293 as Single
                                Weight1293 = ItemInventoryRet.Weight.GetValue()
                        End If
                        'Get value of WebSKU
                        if ( not ItemInventoryRet.WebSKU is nothing) then
                                Dim WebSKU1294 as String
                                WebSKU1294 = ItemInventoryRet.WebSKU.GetValue()
                        End If
                        'Get value of Keywords
                        if ( not ItemInventoryRet.Keywords is nothing) then
                                Dim Keywords1295 as String
                                Keywords1295 = ItemInventoryRet.Keywords.GetValue()
                        End If
                        'Get value of WebCategories
                        if ( not ItemInventoryRet.WebCategories is nothing) then
                                Dim WebCategories1296 as String
                                WebCategories1296 = ItemInventoryRet.WebCategories.GetValue()
                        End If
                        if (not ItemInventoryRet.UnitOfMeasure1 is nothing) then
                                'Get value of ALU
                                if ( not ItemInventoryRet.UnitOfMeasure1.ALU is nothing) then
                                        Dim ALU1297 as String
                                        ALU1297 = ItemInventoryRet.UnitOfMeasure1.ALU.GetValue()
                                End If
                                'Get value of MSRP
                                if ( not ItemInventoryRet.UnitOfMeasure1.MSRP is nothing) then
                                        Dim MSRP1298 as Double
                                        MSRP1298 = ItemInventoryRet.UnitOfMeasure1.MSRP.GetValue()
                                End If
                                'Get value of NumberOfBaseUnits
                                if ( not ItemInventoryRet.UnitOfMeasure1.NumberOfBaseUnits is nothing) then
                                        Dim NumberOfBaseUnits1299 as Double
                                        NumberOfBaseUnits1299 = ItemInventoryRet.UnitOfMeasure1.NumberOfBaseUnits.GetValue()
                                End If
                                'Get value of Price1
                                if ( not ItemInventoryRet.UnitOfMeasure1.Price1 is nothing) then
                                        Dim Price11300 as Double
                                        Price11300 = ItemInventoryRet.UnitOfMeasure1.Price1.GetValue()
                                End If
                                'Get value of Price2
                                if ( not ItemInventoryRet.UnitOfMeasure1.Price2 is nothing) then
                                        Dim Price21301 as Double
                                        Price21301 = ItemInventoryRet.UnitOfMeasure1.Price2.GetValue()
                                End If
                                'Get value of Price3
                                if ( not ItemInventoryRet.UnitOfMeasure1.Price3 is nothing) then
                                        Dim Price31302 as Double
                                        Price31302 = ItemInventoryRet.UnitOfMeasure1.Price3.GetValue()
                                End If
                                'Get value of Price4
                                if ( not ItemInventoryRet.UnitOfMeasure1.Price4 is nothing) then
                                        Dim Price41303 as Double
                                        Price41303 = ItemInventoryRet.UnitOfMeasure1.Price4.GetValue()
                                End If
                                'Get value of Price5
                                if ( not ItemInventoryRet.UnitOfMeasure1.Price5 is nothing) then
                                        Dim Price51304 as Double
                                        Price51304 = ItemInventoryRet.UnitOfMeasure1.Price5.GetValue()
                                End If
                                'Get value of UnitOfMeasure
                                if ( not ItemInventoryRet.UnitOfMeasure1.UnitOfMeasure is nothing) then
                                        Dim UnitOfMeasure1305 as String
                                        UnitOfMeasure1305 = ItemInventoryRet.UnitOfMeasure1.UnitOfMeasure.GetValue()
                                End If
                                'Get value of UPC
                                if ( not ItemInventoryRet.UnitOfMeasure1.UPC is nothing) then
                                        Dim UPC1306 as String
                                        UPC1306 = ItemInventoryRet.UnitOfMeasure1.UPC.GetValue()
                                End If
                        End If
                        if (not ItemInventoryRet.UnitOfMeasure2 is nothing) then
                                'Get value of ALU
                                if ( not ItemInventoryRet.UnitOfMeasure2.ALU is nothing) then
                                        Dim ALU1307 as String
                                        ALU1307 = ItemInventoryRet.UnitOfMeasure2.ALU.GetValue()
                                End If
                                'Get value of MSRP
                                if ( not ItemInventoryRet.UnitOfMeasure2.MSRP is nothing) then
                                        Dim MSRP1308 as Double
                                        MSRP1308 = ItemInventoryRet.UnitOfMeasure2.MSRP.GetValue()
                                End If
                                'Get value of NumberOfBaseUnits
                                if ( not ItemInventoryRet.UnitOfMeasure2.NumberOfBaseUnits is nothing) then
                                        Dim NumberOfBaseUnits1309 as Double
                                        NumberOfBaseUnits1309 = ItemInventoryRet.UnitOfMeasure2.NumberOfBaseUnits.GetValue()
                                End If
                                'Get value of Price1
                                if ( not ItemInventoryRet.UnitOfMeasure2.Price1 is nothing) then
                                        Dim Price11310 as Double
                                        Price11310 = ItemInventoryRet.UnitOfMeasure2.Price1.GetValue()
                                End If
                                'Get value of Price2
                                if ( not ItemInventoryRet.UnitOfMeasure2.Price2 is nothing) then
                                        Dim Price21311 as Double
                                        Price21311 = ItemInventoryRet.UnitOfMeasure2.Price2.GetValue()
                                End If
                                'Get value of Price3
                                if ( not ItemInventoryRet.UnitOfMeasure2.Price3 is nothing) then
                                        Dim Price31312 as Double
                                        Price31312 = ItemInventoryRet.UnitOfMeasure2.Price3.GetValue()
                                End If
                                'Get value of Price4
                                if ( not ItemInventoryRet.UnitOfMeasure2.Price4 is nothing) then
                                        Dim Price41313 as Double
                                        Price41313 = ItemInventoryRet.UnitOfMeasure2.Price4.GetValue()
                                End If
                                'Get value of Price5
                                if ( not ItemInventoryRet.UnitOfMeasure2.Price5 is nothing) then
                                        Dim Price51314 as Double
                                        Price51314 = ItemInventoryRet.UnitOfMeasure2.Price5.GetValue()
                                End If
                                'Get value of UnitOfMeasure
                                if ( not ItemInventoryRet.UnitOfMeasure2.UnitOfMeasure is nothing) then
                                        Dim UnitOfMeasure1315 as String
                                        UnitOfMeasure1315 = ItemInventoryRet.UnitOfMeasure2.UnitOfMeasure.GetValue()
                                End If
                                'Get value of UPC
                                if ( not ItemInventoryRet.UnitOfMeasure2.UPC is nothing) then
                                        Dim UPC1316 as String
                                        UPC1316 = ItemInventoryRet.UnitOfMeasure2.UPC.GetValue()
                                End If
                        End If
                        if (not ItemInventoryRet.UnitOfMeasure3 is nothing) then
                                'Get value of ALU
                                if ( not ItemInventoryRet.UnitOfMeasure3.ALU is nothing) then
                                        Dim ALU1317 as String
                                        ALU1317 = ItemInventoryRet.UnitOfMeasure3.ALU.GetValue()
                                End If
                                'Get value of MSRP
                                if ( not ItemInventoryRet.UnitOfMeasure3.MSRP is nothing) then
                                        Dim MSRP1318 as Double
                                        MSRP1318 = ItemInventoryRet.UnitOfMeasure3.MSRP.GetValue()
                                End If
                                'Get value of NumberOfBaseUnits
                                if ( not ItemInventoryRet.UnitOfMeasure3.NumberOfBaseUnits is nothing) then
                                        Dim NumberOfBaseUnits1319 as Double
                                        NumberOfBaseUnits1319 = ItemInventoryRet.UnitOfMeasure3.NumberOfBaseUnits.GetValue()
                                End If
                                'Get value of Price1
                                if ( not ItemInventoryRet.UnitOfMeasure3.Price1 is nothing) then
                                        Dim Price11320 as Double
                                        Price11320 = ItemInventoryRet.UnitOfMeasure3.Price1.GetValue()
                                End If
                                'Get value of Price2
                                if ( not ItemInventoryRet.UnitOfMeasure3.Price2 is nothing) then
                                        Dim Price21321 as Double
                                        Price21321 = ItemInventoryRet.UnitOfMeasure3.Price2.GetValue()
                                End If
                                'Get value of Price3
                                if ( not ItemInventoryRet.UnitOfMeasure3.Price3 is nothing) then
                                        Dim Price31322 as Double
                                        Price31322 = ItemInventoryRet.UnitOfMeasure3.Price3.GetValue()
                                End If
                                'Get value of Price4
                                if ( not ItemInventoryRet.UnitOfMeasure3.Price4 is nothing) then
                                        Dim Price41323 as Double
                                        Price41323 = ItemInventoryRet.UnitOfMeasure3.Price4.GetValue()
                                End If
                                'Get value of Price5
                                if ( not ItemInventoryRet.UnitOfMeasure3.Price5 is nothing) then
                                        Dim Price51324 as Double
                                        Price51324 = ItemInventoryRet.UnitOfMeasure3.Price5.GetValue()
                                End If
                                'Get value of UnitOfMeasure
                                if ( not ItemInventoryRet.UnitOfMeasure3.UnitOfMeasure is nothing) then
                                        Dim UnitOfMeasure1325 as String
                                        UnitOfMeasure1325 = ItemInventoryRet.UnitOfMeasure3.UnitOfMeasure.GetValue()
                                End If
                                'Get value of UPC
                                if ( not ItemInventoryRet.UnitOfMeasure3.UPC is nothing) then
                                        Dim UPC1326 as String
                                        UPC1326 = ItemInventoryRet.UnitOfMeasure3.UPC.GetValue()
                                End If
                        End If
                        if (not ItemInventoryRet.VendorInfo2 is nothing) then
                                'Get value of ALU
                                if ( not ItemInventoryRet.VendorInfo2.ALU is nothing) then
                                        Dim ALU1327 as String
                                        ALU1327 = ItemInventoryRet.VendorInfo2.ALU.GetValue()
                                End If
                                'Get value of OrderCost
                                if ( not ItemInventoryRet.VendorInfo2.OrderCost is nothing) then
                                        Dim OrderCost1328 as Double
                                        OrderCost1328 = ItemInventoryRet.VendorInfo2.OrderCost.GetValue()
                                End If
                                'Get value of UPC
                                if ( not ItemInventoryRet.VendorInfo2.UPC is nothing) then
                                        Dim UPC1329 as String
                                        UPC1329 = ItemInventoryRet.VendorInfo2.UPC.GetValue()
                                End If
                                'Get value of VendorListID
                                Dim VendorListID1330 as String
                                VendorListID1330 = ItemInventoryRet.VendorInfo2.VendorListID.GetValue()
                        End If
                        if (not ItemInventoryRet.VendorInfo3 is nothing) then
                                'Get value of ALU
                                if ( not ItemInventoryRet.VendorInfo3.ALU is nothing) then
                                        Dim ALU1331 as String
                                        ALU1331 = ItemInventoryRet.VendorInfo3.ALU.GetValue()
                                End If
                                'Get value of OrderCost
                                if ( not ItemInventoryRet.VendorInfo3.OrderCost is nothing) then
                                        Dim OrderCost1332 as Double
                                        OrderCost1332 = ItemInventoryRet.VendorInfo3.OrderCost.GetValue()
                                End If
                                'Get value of UPC
                                if ( not ItemInventoryRet.VendorInfo3.UPC is nothing) then
                                        Dim UPC1333 as String
                                        UPC1333 = ItemInventoryRet.VendorInfo3.UPC.GetValue()
                                End If
                                'Get value of VendorListID
                                Dim VendorListID1334 as String
                                VendorListID1334 = ItemInventoryRet.VendorInfo3.VendorListID.GetValue()
                        End If
                        if (not ItemInventoryRet.VendorInfo4 is nothing) then
                                'Get value of ALU
                                if ( not ItemInventoryRet.VendorInfo4.ALU is nothing) then
                                        Dim ALU1335 as String
                                        ALU1335 = ItemInventoryRet.VendorInfo4.ALU.GetValue()
                                End If
                                'Get value of OrderCost
                                if ( not ItemInventoryRet.VendorInfo4.OrderCost is nothing) then
                                        Dim OrderCost1336 as Double
                                        OrderCost1336 = ItemInventoryRet.VendorInfo4.OrderCost.GetValue()
                                End If
                                'Get value of UPC
                                if ( not ItemInventoryRet.VendorInfo4.UPC is nothing) then
                                        Dim UPC1337 as String
                                        UPC1337 = ItemInventoryRet.VendorInfo4.UPC.GetValue()
                                End If
                                'Get value of VendorListID
                                Dim VendorListID1338 as String
                                VendorListID1338 = ItemInventoryRet.VendorInfo4.VendorListID.GetValue()
                        End If
                        if (not ItemInventoryRet.VendorInfo5 is nothing) then
                                'Get value of ALU
                                if ( not ItemInventoryRet.VendorInfo5.ALU is nothing) then
                                        Dim ALU1339 as String
                                        ALU1339 = ItemInventoryRet.VendorInfo5.ALU.GetValue()
                                End If
                                'Get value of OrderCost
                                if ( not ItemInventoryRet.VendorInfo5.OrderCost is nothing) then
                                        Dim OrderCost1340 as Double
                                        OrderCost1340 = ItemInventoryRet.VendorInfo5.OrderCost.GetValue()
                                End If
                                'Get value of UPC
                                if ( not ItemInventoryRet.VendorInfo5.UPC is nothing) then
                                        Dim UPC1341 as String
                                        UPC1341 = ItemInventoryRet.VendorInfo5.UPC.GetValue()
                                End If
                                'Get value of VendorListID
                                Dim VendorListID1342 as String
                                VendorListID1342 = ItemInventoryRet.VendorInfo5.VendorListID.GetValue()
                        End If
                        if (not ItemInventoryRet.DataExtRetList is nothing)
                                Dim i1343 as Integer
                                for i1343 = 0  to ItemInventoryRet.DataExtRetList.Count - 1
                                        Dim DataExtRet as IDataExtRet
                                        DataExtRet = ItemInventoryRet.DataExtRetList.GetAt(i1343)
                                        'Get value of OwnerID
                                        Dim OwnerID1344 as String
                                        OwnerID1344 = DataExtRet.OwnerID.GetValue()
                                        'Get value of DataExtName
                                        Dim DataExtName1345 as String
                                        DataExtName1345 = DataExtRet.DataExtName.GetValue()
                                        'Get value of DataExtType
                                        Dim DataExtType1346 as ENDataExtType
                                        DataExtType1346 = DataExtRet.DataExtType.GetValue()
                                        'Get value of DataExtValue
                                        Dim DataExtValue1347 as String
                                        DataExtValue1347 = DataExtRet.DataExtValue.GetValue()
                                Next i1343
                        End If
                        'Get value of IsEcommerce
                        if ( not ItemInventoryRet.IsEcommerce is nothing) then
                                Dim IsEcommerce1348 as Boolean
                                IsEcommerce1348 = ItemInventoryRet.IsEcommerce.GetValue()
                        End If
                        'Get value of OnlineStoreNames
                        if ( not ItemInventoryRet.OnlineStoreNames is nothing) then
                                Dim OnlineStoreNames1349 as String
                                OnlineStoreNames1349 = ItemInventoryRet.OnlineStoreNames.GetValue()
                        End If
                End Sub




        End Class

   1
   2
   3
   4
   5
   6
   7
   8
   9
  10
  11
  12
  13
  14
  15
  16
  17
  18
  19
  20
  21
  22
  23
  24
  25
  26
  27
  28
  29
  30
  31
  32
  33
  34
  35
  36
  37
  38
  39
  40
  41
  42
  43
  44
  45
  46
  47
  48
  49
  50
  51
  52
  53
  54
  55
  56
  57
  58
  59
  60
  61
  62
  63
  64
  65
  66
  67
  68
  69
  70
  71
  72
  73
  74
  75
  76
  77
  78
  79
  80
  81
  82
  83
  84
  85
  86
  87
  88
  89
  90
  91
  92
  93
  94
  95
  96
  97
  98
  99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 111
 112
 113
 114
 115
 116
 117
 118
 119
 120
 121
 122
 123
 124
 125
 126
 127
 128
 129
 130
 131
 132
 133
 134
 135
 136
 137
 138
 139
 140
 141
 142
 143
 144
 145
 146
 147
 148
 149
 150
 151
 152
 153
 154
 155
 156
 157
 158
 159
 160
 161
 162
 163
 164
 165
 166
 167
 168
 169
 170
 171
 172
 173
 174
 175
 176
 177
 178
 179
 180
 181
 182
 183
 184
 185
 186
 187
 188
 189
 190
 191
 192
 193
 194
 195
 196
 197
 198
 199
 200
 201
 202
 203
 204
 205
 206
 207
 208
 209
 210
 211
 212
 213
 214
 215
 216
 217
 218
 219
 220
 221
 222
 223
 224
 225
 226
 227
 228
 229
 230
 231
 232
 233
 234
 235
 236
 237
 238
 239
 240
 241
 242
 243
 244
 245
 246
 247
 248
 249
 250
 251
 252
 253
 254
 255
 256
 257
 258
 259
 260
 261
 262
 263
 264
 265
 266
 267
 268
 269
 270
 271
 272
 273
 274
 275
 276
 277
 278
 279
 280
 281
 282
 283
 284
 285
 286
 287
 288
 289
 290
 291
 292
 293
 294
 295
 296
 297
 298
 299
 300
 301
 302
 303
 304
 305
 306
 307
 308
 309
 310
 311
 312
 313
 314
 315
 316
 317
 318
 319
 320
 321
 322
 323
 324
 325
 326
 327
 328
 329
 330
 331
 332
 333
 334
 335
 336
 337
 338
 339
 340
 341
 342
 343
 344
 345
 346
 347
 348
 349
 350
 351
 352
 353
 354
 355
 356
 357
 358
 359
 360
 361
 362
 363
 364
 365
 366
 367
 368
 369
 370
 371
 372
 373
 374
 375
 376
 377
 378
 379
 380
 381
 382
 383
 384
 385
 386
 387
 388
 389
 390
 391
 392
 393
 394
 395
 396
 397
 398
 399
 400
 401
 402
 403
 404
 405
 406
 407
 408
 409
 410
 411
 412
 413
 414
 415
 416
 417
 418
 419
 420
 421
 422
 423
 424
 425
 426
 427
 428
 429
 430
 431
 432
 433
 434
 435
 436
 437
 438
 439
 440
 441
 442
 443
 444
 445
 446
 447
 448
 449
 450
 451
 452
 453
 454
 455
 456
 457
 458
 459
 460
 461
 462
 463
 464
 465
 466
 467
 468
 469
 470
 471
 472
 473
 474
 475
 476
 477
 478
 479
 480
 481
 482
 483
 484
 485
 486
 487
 488
 489
 490
 491
 492
 493
 494
 495
 496
 497
 498
 499
 500
 501
 502
 503
 504
 505
 506
 507
 508
 509
 510
 511
 512
 513
 514
 515
 516
 517
 518
 519
 520
 521
 522
 523
 524
 525
 526
 527
 528
 529
 530
 531
 532
 533
 534
 535
 536
 537
 538
 539
 540
 541
 542
 543
 544
 545
 546
 547
 548
 549
 550
 551
 552
 553
 554
 555
 556
 557
 558
 559
 560
 561
 562
 563
 564
 565
 566
 567
 568
 569
 570
 571
 572
 573
 574
 575
 576
 577
 578
 579
 580
 581
 582
 583
 584
 585
 586
 587
 588
 589
 590
 591
 592
 593
 594
 595
 596
 597
 598
 599
 600
 601
 602
 603
 604
 605
 606
 607
 608
 609
 610
 611
 612
 613
 614
 615
 616
 617
 618
 619
 620
 621
 622
 623
 624
 625
 626
 627
 628
 629
 630
 631
 632
 633
 634
 635
 636
 637
 638
 639
 640
 641
 642
 643
 644
 645
 646
 647
 648
 649
 650
 651
 652
 653
 654
 655
 656
 657
 658
 659
 660
 661
 662
 663
 664
 665
 666
 667
 668
 669
 670
 671
 672
 673
 674
 675
 676
 677
 678
 679
 680
 681
 682
 683
 684
 685
 686
 687
 688
 689
 690
 691
 692
 693
 694
 695
 696
 697
 698
 699
 700
 701
 702
 703
 704
 705
 706
 707
 708
 709
 710
 711
 712
 713
 714
 715
 716
 717
 718
 719
 720
 721
 722
 723
 724
 725
 726
 727
 728
 729
 730
 731
 732
 733
 734
 735
 736
 737
 738
 739
 740
 741
 742
 743
 744
 745
 746
 747
 748
 749
 750
 751
 752
 753
 754
 755
 756
 757
 758
 759
 760
 761
 762
 763
 764
 765
 766
 767
 768
 769
 770
 771
 772
 773
 774
 775
 776
 777
 778
 779
 780
 781
 782
 783
 784
 785
 786
 787
 788
 789
 790
 791
 792
 793
 794
 795
 796
 797
 798
 799
 800
 801
 802
 803
 804
 805
 806
 807
 808
 809
 810
 811
 812
 813
 814
 815
 816
 817
 818
 819
 820
 821
 822
 823
 824
 825
 826
 827
 828
 829
 830
 831
 832
 833
 834
 835
 836
 837
 838
 839
 840
 841
 842
 843
 844
 845
 846
 847
 848
 849
 850
 851
 852
 853
 854
 855
 856
 857
 858
 859
 860
 861
 862
 863
 864
 865
 866
 867
 868
 869
 870
 871
 872
 873
 874
 875
 876
 877
 878
 879
 880
 881
 882
 883
 884
 885
 886
 887
 888
 889
 890
 891
 892
 893
 894
 895
 896
 897
 898
 899
 900
 901
 902
 903
 904
 905
 906
 907
 908
 909
 910
 911
 912
 913
 914
 915
 916
 917
 918
 919
 920
 921
 922
 923
 924
 925
 926
 927
 928
 929
 930
 931
 932
 933
 934
 935
 936
 937
 938
 939
 940
 941
 942
 943
 944
 945
 946
 947
 948
 949
 950
 951
 952
 953
 954
 955
 956
 957
 958
 959
 960
 961
 962
 963
 964
 965
 966
 967
 968
 969
 970
 971
 972
 973
 974
 975
 976
 977
 978
 979
 980
 981
 982
 983
 984
 985
 986
 987
 988
 989
 990
 991
 992
 993
 994
 995
 996
 997
 998
 999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
//The following sample code is generated as an illustration of
//Creating requests and parsing responses ONLY
//This code is NOT intended to show best practices or ideal code
//Use at your most careful discretion

using System;
using System.Net;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.IO;
using Interop.qbposfc4;

namespace com.intuit.idn.samples
{
        public class SampleItemInventoryAdd
        {
                public void  DoItemInventoryAdd()
                {
                        bool sessionBegun = false;
                        bool connectionOpen = false;
                        QBPOSSessionManager sessionManager = null;

                        try
                        {
                                //Create the session Manager object
                                sessionManager = new QBPOSSessionManager();

                                //Create the message set request object to hold our request
                                IMsgSetRequest requestMsgSet = sessionManager.CreateMsgSetRequest(4,0);
                                requestMsgSet.Attributes.OnError = ENRqOnError.roeContinue;

                                BuildItemInventoryAddRq(requestMsgSet);

                                //Connect to QuickBooks and begin a session
                                sessionManager.OpenConnection("","Sample Code from OSR");
                                connectionOpen = true;
                                sessionManager.BeginSession("");
                                sessionBegun = true;

                                //Send the request and get the response from QuickBooks
                                IMsgSetResponse responseMsgSet = sessionManager.DoRequests(requestMsgSet);

                                //End the session and close the connection to QuickBooks
                                sessionManager.EndSession();
                                sessionBegun = false;
                                sessionManager.CloseConnection();
                                connectionOpen = false;

                                WalkItemInventoryAddRs(responseMsgSet);
                        }
                        catch (Exception e)
                        {
                                MessageBox.Show(e.Message, "Error");
                                if (sessionBegun)
                                {
                                        sessionManager.EndSession();
                                }
                                if (connectionOpen)
                                {
                                        sessionManager.CloseConnection();
                                }
                        }
                }
                void BuildItemInventoryAddRq(IMsgSetRequest requestMsgSet)
                {
                        IItemInventoryAdd ItemInventoryAddRq= requestMsgSet.AppendItemInventoryAddRq();
                        //Set attributes
                        //Set field value for defMacro
                        ItemInventoryAddRq.defMacro.SetValue("IQBStringType");
                        //Set field value for ALU
                        ItemInventoryAddRq.ALU.SetValue("ab");
                        //Set field value for Attribute
                        ItemInventoryAddRq.Attribute.SetValue("ab");
                        //Set field value for COGSAccount
                        ItemInventoryAddRq.COGSAccount.SetValue("ab");
                        //Set field value for Cost
                        ItemInventoryAddRq.Cost.SetValue(10.01);
                        //Set field value for DepartmentListID
                        ItemInventoryAddRq.DepartmentListID.SetValue("200000-1011023419");
                        //Set attributes
                        //Set field value for DepartmentListID to use Macro
                        ItemInventoryAddRq.DepartmentListID.SetValueUseMacro("200000-1011023419");
                        //Set field value for Desc1
                        ItemInventoryAddRq.Desc1.SetValue("ab");
                        //Set field value for Desc2
                        ItemInventoryAddRq.Desc2.SetValue("ab");
                        //Set field value for IncomeAccount
                        ItemInventoryAddRq.IncomeAccount.SetValue("ab");
                        //Set field value for IsEligibleForCommission
                        ItemInventoryAddRq.IsEligibleForCommission.SetValue(true);
                        //Set field value for IsPrintingTags
                        ItemInventoryAddRq.IsPrintingTags.SetValue(true);
                        //Set field value for IsUnorderable
                        ItemInventoryAddRq.IsUnorderable.SetValue(true);
                        //Set field value for IsEligibleForRewards
                        ItemInventoryAddRq.IsEligibleForRewards.SetValue(true);
                        //Set field value for IsWebItem
                        ItemInventoryAddRq.IsWebItem.SetValue(true);
                        //Set field value for ItemType
                        ItemInventoryAddRq.ItemType.SetValue(ENItemType.itInventory);
                        //Set field value for MarginPercent
                        ItemInventoryAddRq.MarginPercent.SetValue(6);
                        //Set field value for MarkupPercent
                        ItemInventoryAddRq.MarkupPercent.SetValue(6);
                        //Set field value for MSRP
                        ItemInventoryAddRq.MSRP.SetValue(10.01);
                        //Set field value for OnHandStore01
                        ItemInventoryAddRq.OnHandStore01.SetValue(2);
                        //Set field value for OnHandStore02
                        ItemInventoryAddRq.OnHandStore02.SetValue(2);
                        //Set field value for OnHandStore03
                        ItemInventoryAddRq.OnHandStore03.SetValue(2);
                        //Set field value for OnHandStore04
                        ItemInventoryAddRq.OnHandStore04.SetValue(2);
                        //Set field value for OnHandStore05
                        ItemInventoryAddRq.OnHandStore05.SetValue(2);
                        //Set field value for OnHandStore06
                        ItemInventoryAddRq.OnHandStore06.SetValue(2);
                        //Set field value for OnHandStore07
                        ItemInventoryAddRq.OnHandStore07.SetValue(2);
                        //Set field value for OnHandStore08
                        ItemInventoryAddRq.OnHandStore08.SetValue(2);
                        //Set field value for OnHandStore09
                        ItemInventoryAddRq.OnHandStore09.SetValue(2);
                        //Set field value for OnHandStore10
                        ItemInventoryAddRq.OnHandStore10.SetValue(2);
                        //Set field value for OnHandStore11
                        ItemInventoryAddRq.OnHandStore11.SetValue(2);
                        //Set field value for OnHandStore12
                        ItemInventoryAddRq.OnHandStore12.SetValue(2);
                        //Set field value for OnHandStore13
                        ItemInventoryAddRq.OnHandStore13.SetValue(2);
                        //Set field value for OnHandStore14
                        ItemInventoryAddRq.OnHandStore14.SetValue(2);
                        //Set field value for OnHandStore15
                        ItemInventoryAddRq.OnHandStore15.SetValue(2);
                        //Set field value for OnHandStore16
                        ItemInventoryAddRq.OnHandStore16.SetValue(2);
                        //Set field value for OnHandStore17
                        ItemInventoryAddRq.OnHandStore17.SetValue(2);
                        //Set field value for OnHandStore18
                        ItemInventoryAddRq.OnHandStore18.SetValue(2);
                        //Set field value for OnHandStore19
                        ItemInventoryAddRq.OnHandStore19.SetValue(2);
                        //Set field value for OnHandStore20
                        ItemInventoryAddRq.OnHandStore20.SetValue(2);
                        //Set field value for ReorderPointStore01
                        ItemInventoryAddRq.ReorderPointStore01.SetValue(2);
                        //Set field value for ReorderPointStore02
                        ItemInventoryAddRq.ReorderPointStore02.SetValue(2);
                        //Set field value for ReorderPointStore03
                        ItemInventoryAddRq.ReorderPointStore03.SetValue(2);
                        //Set field value for ReorderPointStore04
                        ItemInventoryAddRq.ReorderPointStore04.SetValue(2);
                        //Set field value for ReorderPointStore05
                        ItemInventoryAddRq.ReorderPointStore05.SetValue(2);
                        //Set field value for ReorderPointStore06
                        ItemInventoryAddRq.ReorderPointStore06.SetValue(2);
                        //Set field value for ReorderPointStore07
                        ItemInventoryAddRq.ReorderPointStore07.SetValue(2);
                        //Set field value for ReorderPointStore08
                        ItemInventoryAddRq.ReorderPointStore08.SetValue(2);
                        //Set field value for ReorderPointStore09
                        ItemInventoryAddRq.ReorderPointStore09.SetValue(2);
                        //Set field value for ReorderPointStore10
                        ItemInventoryAddRq.ReorderPointStore10.SetValue(2);
                        //Set field value for ReorderPointStore11
                        ItemInventoryAddRq.ReorderPointStore11.SetValue(2);
                        //Set field value for ReorderPointStore12
                        ItemInventoryAddRq.ReorderPointStore12.SetValue(2);
                        //Set field value for ReorderPointStore13
                        ItemInventoryAddRq.ReorderPointStore13.SetValue(2);
                        //Set field value for ReorderPointStore14
                        ItemInventoryAddRq.ReorderPointStore14.SetValue(2);
                        //Set field value for ReorderPointStore15
                        ItemInventoryAddRq.ReorderPointStore15.SetValue(2);
                        //Set field value for ReorderPointStore16
                        ItemInventoryAddRq.ReorderPointStore16.SetValue(2);
                        //Set field value for ReorderPointStore17
                        ItemInventoryAddRq.ReorderPointStore17.SetValue(2);
                        //Set field value for ReorderPointStore18
                        ItemInventoryAddRq.ReorderPointStore18.SetValue(2);
                        //Set field value for ReorderPointStore19
                        ItemInventoryAddRq.ReorderPointStore19.SetValue(2);
                        //Set field value for ReorderPointStore20
                        ItemInventoryAddRq.ReorderPointStore20.SetValue(2);
                        //Set field value for OrderByUnit
                        ItemInventoryAddRq.OrderByUnit.SetValue("ab");
                        //Set field value for OrderCost
                        ItemInventoryAddRq.OrderCost.SetValue(10.01);
                        //Set field value for Price1
                        ItemInventoryAddRq.Price1.SetValue(10.01);
                        //Set field value for Price2
                        ItemInventoryAddRq.Price2.SetValue(10.01);
                        //Set field value for Price3
                        ItemInventoryAddRq.Price3.SetValue(10.01);
                        //Set field value for Price4
                        ItemInventoryAddRq.Price4.SetValue(10.01);
                        //Set field value for Price5
                        ItemInventoryAddRq.Price5.SetValue(10.01);
                        //Set field value for ReorderPoint
                        ItemInventoryAddRq.ReorderPoint.SetValue(2);
                        //Set field value for SellByUnit
                        ItemInventoryAddRq.SellByUnit.SetValue("ab");
                        //Set field value for SerialFlag
                        ItemInventoryAddRq.SerialFlag.SetValue(ENSerialFlag.sfOptional);
                        //Set field value for Size
                        ItemInventoryAddRq.Size.SetValue("ab");
                        //Set field value for TaxCode
                        ItemInventoryAddRq.TaxCode.SetValue("ab");
                        //Set field value for UnitOfMeasure
                        ItemInventoryAddRq.UnitOfMeasure.SetValue("ab");
                        //Set field value for UPC
                        ItemInventoryAddRq.UPC.SetValue("ab");
                        //Set field value for VendorListID
                        ItemInventoryAddRq.VendorListID.SetValue("200000-1011023419");
                        //Set attributes
                        //Set field value for VendorListID to use Macro
                        ItemInventoryAddRq.VendorListID.SetValueUseMacro("200000-1011023419");
                        //Set field value for WebDesc
                        ItemInventoryAddRq.WebDesc.SetValue("ab");
                        //Set field value for WebPrice
                        ItemInventoryAddRq.WebPrice.SetValue(10.01);
                        //Set field value for Manufacturer
                        ItemInventoryAddRq.Manufacturer.SetValue("ab");
                        //Set field value for Weight
                        ItemInventoryAddRq.Weight.SetValue(12.34F);
                        //Set field value for Keywords
                        ItemInventoryAddRq.Keywords.SetValue("ab");
                        //Set field value for WebCategories
                        ItemInventoryAddRq.WebCategories.SetValue("ab");
                        //Set field value for ALU
                        ItemInventoryAddRq.UnitOfMeasure1.ALU.SetValue("ab");
                        //Set field value for MSRP
                        ItemInventoryAddRq.UnitOfMeasure1.MSRP.SetValue(10.01);
                        //Set field value for NumberOfBaseUnits
                        ItemInventoryAddRq.UnitOfMeasure1.NumberOfBaseUnits.SetValue(2);
                        //Set field value for Price1
                        ItemInventoryAddRq.UnitOfMeasure1.Price1.SetValue(10.01);
                        //Set field value for Price2
                        ItemInventoryAddRq.UnitOfMeasure1.Price2.SetValue(10.01);
                        //Set field value for Price3
                        ItemInventoryAddRq.UnitOfMeasure1.Price3.SetValue(10.01);
                        //Set field value for Price4
                        ItemInventoryAddRq.UnitOfMeasure1.Price4.SetValue(10.01);
                        //Set field value for Price5
                        ItemInventoryAddRq.UnitOfMeasure1.Price5.SetValue(10.01);
                        //Set field value for UnitOfMeasure
                        ItemInventoryAddRq.UnitOfMeasure1.UnitOfMeasure.SetValue("ab");
                        //Set field value for UPC
                        ItemInventoryAddRq.UnitOfMeasure1.UPC.SetValue("ab");
                        //Set field value for ALU
                        ItemInventoryAddRq.UnitOfMeasure2.ALU.SetValue("ab");
                        //Set field value for MSRP
                        ItemInventoryAddRq.UnitOfMeasure2.MSRP.SetValue(10.01);
                        //Set field value for NumberOfBaseUnits
                        ItemInventoryAddRq.UnitOfMeasure2.NumberOfBaseUnits.SetValue(2);
                        //Set field value for Price1
                        ItemInventoryAddRq.UnitOfMeasure2.Price1.SetValue(10.01);
                        //Set field value for Price2
                        ItemInventoryAddRq.UnitOfMeasure2.Price2.SetValue(10.01);
                        //Set field value for Price3
                        ItemInventoryAddRq.UnitOfMeasure2.Price3.SetValue(10.01);
                        //Set field value for Price4
                        ItemInventoryAddRq.UnitOfMeasure2.Price4.SetValue(10.01);
                        //Set field value for Price5
                        ItemInventoryAddRq.UnitOfMeasure2.Price5.SetValue(10.01);
                        //Set field value for UnitOfMeasure
                        ItemInventoryAddRq.UnitOfMeasure2.UnitOfMeasure.SetValue("ab");
                        //Set field value for UPC
                        ItemInventoryAddRq.UnitOfMeasure2.UPC.SetValue("ab");
                        //Set field value for ALU
                        ItemInventoryAddRq.UnitOfMeasure3.ALU.SetValue("ab");
                        //Set field value for MSRP
                        ItemInventoryAddRq.UnitOfMeasure3.MSRP.SetValue(10.01);
                        //Set field value for NumberOfBaseUnits
                        ItemInventoryAddRq.UnitOfMeasure3.NumberOfBaseUnits.SetValue(2);
                        //Set field value for Price1
                        ItemInventoryAddRq.UnitOfMeasure3.Price1.SetValue(10.01);
                        //Set field value for Price2
                        ItemInventoryAddRq.UnitOfMeasure3.Price2.SetValue(10.01);
                        //Set field value for Price3
                        ItemInventoryAddRq.UnitOfMeasure3.Price3.SetValue(10.01);
                        //Set field value for Price4
                        ItemInventoryAddRq.UnitOfMeasure3.Price4.SetValue(10.01);
                        //Set field value for Price5
                        ItemInventoryAddRq.UnitOfMeasure3.Price5.SetValue(10.01);
                        //Set field value for UnitOfMeasure
                        ItemInventoryAddRq.UnitOfMeasure3.UnitOfMeasure.SetValue("ab");
                        //Set field value for UPC
                        ItemInventoryAddRq.UnitOfMeasure3.UPC.SetValue("ab");
                        //Set field value for ALU
                        ItemInventoryAddRq.VendorInfo2.ALU.SetValue("ab");
                        //Set field value for OrderCost
                        ItemInventoryAddRq.VendorInfo2.OrderCost.SetValue(10.01);
                        //Set field value for UPC
                        ItemInventoryAddRq.VendorInfo2.UPC.SetValue("ab");
                        //Set field value for VendorListID
                        ItemInventoryAddRq.VendorInfo2.VendorListID.SetValue("200000-1011023419");
                        //Set attributes
                        //Set field value for VendorListID to use Macro
                        ItemInventoryAddRq.VendorInfo2.VendorListID.SetValueUseMacro("200000-1011023419");
                        //Set field value for ALU
                        ItemInventoryAddRq.VendorInfo3.ALU.SetValue("ab");
                        //Set field value for OrderCost
                        ItemInventoryAddRq.VendorInfo3.OrderCost.SetValue(10.01);
                        //Set field value for UPC
                        ItemInventoryAddRq.VendorInfo3.UPC.SetValue("ab");
                        //Set field value for VendorListID
                        ItemInventoryAddRq.VendorInfo3.VendorListID.SetValue("200000-1011023419");
                        //Set attributes
                        //Set field value for VendorListID to use Macro
                        ItemInventoryAddRq.VendorInfo3.VendorListID.SetValueUseMacro("200000-1011023419");
                        //Set field value for ALU
                        ItemInventoryAddRq.VendorInfo4.ALU.SetValue("ab");
                        //Set field value for OrderCost
                        ItemInventoryAddRq.VendorInfo4.OrderCost.SetValue(10.01);
                        //Set field value for UPC
                        ItemInventoryAddRq.VendorInfo4.UPC.SetValue("ab");
                        //Set field value for VendorListID
                        ItemInventoryAddRq.VendorInfo4.VendorListID.SetValue("200000-1011023419");
                        //Set attributes
                        //Set field value for VendorListID to use Macro
                        ItemInventoryAddRq.VendorInfo4.VendorListID.SetValueUseMacro("200000-1011023419");
                        //Set field value for ALU
                        ItemInventoryAddRq.VendorInfo5.ALU.SetValue("ab");
                        //Set field value for OrderCost
                        ItemInventoryAddRq.VendorInfo5.OrderCost.SetValue(10.01);
                        //Set field value for UPC
                        ItemInventoryAddRq.VendorInfo5.UPC.SetValue("ab");
                        //Set field value for VendorListID
                        ItemInventoryAddRq.VendorInfo5.VendorListID.SetValue("200000-1011023419");
                        //Set attributes
                        //Set field value for VendorListID to use Macro
                        ItemInventoryAddRq.VendorInfo5.VendorListID.SetValueUseMacro("200000-1011023419");
                        //Set field value for IsEcommerce
                        ItemInventoryAddRq.IsEcommerce.SetValue(true);
                        //Set field value for OnlineStoreNames
                        ItemInventoryAddRq.OnlineStoreNames.SetValue("ab");
                        //Set field value for IncludeRetElementList
                        //May create more than one of these if needed
                        ItemInventoryAddRq.IncludeRetElementList.Add("ab");
                }




                void WalkItemInventoryAddRs(IMsgSetResponse responseMsgSet)
                {
                        if (responseMsgSet == null) return;
                        IResponseList responseList = responseMsgSet.ResponseList;
                        if (responseList == null) return;
                        //if we sent only one request, there is only one response, we'll walk the list for this sample
                        for(int i=0; i < responseList.Count; i++)
                        {
                                IResponse response = responseList.GetAt(i);
                                //check the status code of the response, 0=ok, >0 is warning
                                if (response.StatusCode >= 0)
                                {
                                        //the request-specific response is in the details, make sure we have some
                                        if (response.Detail != null)
                                        {
                                                //make sure the response is the type we're expecting
                                                ENResponseType responseType = (ENResponseType)response.Type.GetValue();
                                                if (responseType == ENResponseType.rtItemInventoryAddRs)
                                                {
                                                        //upcast to more specific type here, this is safe because we checked with response.Type check above
                                                        IItemInventoryRet ItemInventoryRet = (IItemInventoryRet)response.Detail;
                                                                WalkItemInventoryRet(ItemInventoryRet);
                                                }
                                        }
                                }
                        }
                }




                void WalkItemInventoryRet(IItemInventoryRet ItemInventoryRet)
                {
                        if (ItemInventoryRet == null) return;
                        //Go through all the elements of IItemInventoryRet
                        //Get value of ListID
                        if (ItemInventoryRet.ListID != null)
                        {
                                string ListID1350 = (string)ItemInventoryRet.ListID.GetValue();
                        }
                        //Get value of TimeCreated
                        if (ItemInventoryRet.TimeCreated != null)
                        {
                                DateTime TimeCreated1351 = (DateTime)ItemInventoryRet.TimeCreated.GetValue();
                        }
                        //Get value of TimeModified
                        if (ItemInventoryRet.TimeModified != null)
                        {
                                DateTime TimeModified1352 = (DateTime)ItemInventoryRet.TimeModified.GetValue();
                        }
                        //Get value of ALU
                        if (ItemInventoryRet.ALU != null)
                        {
                                string ALU1353 = (string)ItemInventoryRet.ALU.GetValue();
                        }
                        //Get value of Attribute
                        if (ItemInventoryRet.Attribute != null)
                        {
                                string Attribute1354 = (string)ItemInventoryRet.Attribute.GetValue();
                        }
                        //Get value of COGSAccount
                        if (ItemInventoryRet.COGSAccount != null)
                        {
                                string COGSAccount1355 = (string)ItemInventoryRet.COGSAccount.GetValue();
                        }
                        //Get value of Cost
                        if (ItemInventoryRet.Cost != null)
                        {
                                double Cost1356 = (double)ItemInventoryRet.Cost.GetValue();
                        }
                        //Get value of DepartmentCode
                        if (ItemInventoryRet.DepartmentCode != null)
                        {
                                string DepartmentCode1357 = (string)ItemInventoryRet.DepartmentCode.GetValue();
                        }
                        //Get value of DepartmentListID
                        if (ItemInventoryRet.DepartmentListID != null)
                        {
                                string DepartmentListID1358 = (string)ItemInventoryRet.DepartmentListID.GetValue();
                        }
                        //Get value of Desc1
                        if (ItemInventoryRet.Desc1 != null)
                        {
                                string Desc11359 = (string)ItemInventoryRet.Desc1.GetValue();
                        }
                        //Get value of Desc2
                        if (ItemInventoryRet.Desc2 != null)
                        {
                                string Desc21360 = (string)ItemInventoryRet.Desc2.GetValue();
                        }
                        //Get value of IncomeAccount
                        if (ItemInventoryRet.IncomeAccount != null)
                        {
                                string IncomeAccount1361 = (string)ItemInventoryRet.IncomeAccount.GetValue();
                        }
                        //Get value of IsBelowReorder
                        if (ItemInventoryRet.IsBelowReorder != null)
                        {
                                bool IsBelowReorder1362 = (bool)ItemInventoryRet.IsBelowReorder.GetValue();
                        }
                        //Get value of IsEligibleForCommission
                        if (ItemInventoryRet.IsEligibleForCommission != null)
                        {
                                bool IsEligibleForCommission1363 = (bool)ItemInventoryRet.IsEligibleForCommission.GetValue();
                        }
                        //Get value of IsPrintingTags
                        if (ItemInventoryRet.IsPrintingTags != null)
                        {
                                bool IsPrintingTags1364 = (bool)ItemInventoryRet.IsPrintingTags.GetValue();
                        }
                        //Get value of IsUnorderable
                        if (ItemInventoryRet.IsUnorderable != null)
                        {
                                bool IsUnorderable1365 = (bool)ItemInventoryRet.IsUnorderable.GetValue();
                        }
                        //Get value of HasPictures
                        if (ItemInventoryRet.HasPictures != null)
                        {
                                bool HasPictures1366 = (bool)ItemInventoryRet.HasPictures.GetValue();
                        }
                        //Get value of IsEligibleForRewards
                        if (ItemInventoryRet.IsEligibleForRewards != null)
                        {
                                bool IsEligibleForRewards1367 = (bool)ItemInventoryRet.IsEligibleForRewards.GetValue();
                        }
                        //Get value of IsWebItem
                        if (ItemInventoryRet.IsWebItem != null)
                        {
                                bool IsWebItem1368 = (bool)ItemInventoryRet.IsWebItem.GetValue();
                        }
                        //Get value of ItemNumber
                        if (ItemInventoryRet.ItemNumber != null)
                        {
                                int ItemNumber1369 = (int)ItemInventoryRet.ItemNumber.GetValue();
                        }
                        //Get value of ItemType
                        if (ItemInventoryRet.ItemType != null)
                        {
                                ENItemType ItemType1370 = (ENItemType)ItemInventoryRet.ItemType.GetValue();
                        }
                        //Get value of LastReceived
                        if (ItemInventoryRet.LastReceived != null)
                        {
                                DateTime LastReceived1371 = (DateTime)ItemInventoryRet.LastReceived.GetValue();
                        }
                        //Get value of MarginPercent
                        if (ItemInventoryRet.MarginPercent != null)
                        {
                                int MarginPercent1372 = (int)ItemInventoryRet.MarginPercent.GetValue();
                        }
                        //Get value of MarkupPercent
                        if (ItemInventoryRet.MarkupPercent != null)
                        {
                                int MarkupPercent1373 = (int)ItemInventoryRet.MarkupPercent.GetValue();
                        }
                        //Get value of MSRP
                        if (ItemInventoryRet.MSRP != null)
                        {
                                double MSRP1374 = (double)ItemInventoryRet.MSRP.GetValue();
                        }
                        //Get value of OnHandStore01
                        if (ItemInventoryRet.OnHandStore01 != null)
                        {
                                int OnHandStore011375 = (int)ItemInventoryRet.OnHandStore01.GetValue();
                        }
                        //Get value of OnHandStore02
                        if (ItemInventoryRet.OnHandStore02 != null)
                        {
                                int OnHandStore021376 = (int)ItemInventoryRet.OnHandStore02.GetValue();
                        }
                        //Get value of OnHandStore03
                        if (ItemInventoryRet.OnHandStore03 != null)
                        {
                                int OnHandStore031377 = (int)ItemInventoryRet.OnHandStore03.GetValue();
                        }
                        //Get value of OnHandStore04
                        if (ItemInventoryRet.OnHandStore04 != null)
                        {
                                int OnHandStore041378 = (int)ItemInventoryRet.OnHandStore04.GetValue();
                        }
                        //Get value of OnHandStore05
                        if (ItemInventoryRet.OnHandStore05 != null)
                        {
                                int OnHandStore051379 = (int)ItemInventoryRet.OnHandStore05.GetValue();
                        }
                        //Get value of OnHandStore06
                        if (ItemInventoryRet.OnHandStore06 != null)
                        {
                                int OnHandStore061380 = (int)ItemInventoryRet.OnHandStore06.GetValue();
                        }
                        //Get value of OnHandStore07
                        if (ItemInventoryRet.OnHandStore07 != null)
                        {
                                int OnHandStore071381 = (int)ItemInventoryRet.OnHandStore07.GetValue();
                        }
                        //Get value of OnHandStore08
                        if (ItemInventoryRet.OnHandStore08 != null)
                        {
                                int OnHandStore081382 = (int)ItemInventoryRet.OnHandStore08.GetValue();
                        }
                        //Get value of OnHandStore09
                        if (ItemInventoryRet.OnHandStore09 != null)
                        {
                                int OnHandStore091383 = (int)ItemInventoryRet.OnHandStore09.GetValue();
                        }
                        //Get value of OnHandStore10
                        if (ItemInventoryRet.OnHandStore10 != null)
                        {
                                int OnHandStore101384 = (int)ItemInventoryRet.OnHandStore10.GetValue();
                        }
                        //Get value of OnHandStore11
                        if (ItemInventoryRet.OnHandStore11 != null)
                        {
                                int OnHandStore111385 = (int)ItemInventoryRet.OnHandStore11.GetValue();
                        }
                        //Get value of OnHandStore12
                        if (ItemInventoryRet.OnHandStore12 != null)
                        {
                                int OnHandStore121386 = (int)ItemInventoryRet.OnHandStore12.GetValue();
                        }
                        //Get value of OnHandStore13
                        if (ItemInventoryRet.OnHandStore13 != null)
                        {
                                int OnHandStore131387 = (int)ItemInventoryRet.OnHandStore13.GetValue();
                        }
                        //Get value of OnHandStore14
                        if (ItemInventoryRet.OnHandStore14 != null)
                        {
                                int OnHandStore141388 = (int)ItemInventoryRet.OnHandStore14.GetValue();
                        }
                        //Get value of OnHandStore15
                        if (ItemInventoryRet.OnHandStore15 != null)
                        {
                                int OnHandStore151389 = (int)ItemInventoryRet.OnHandStore15.GetValue();
                        }
                        //Get value of OnHandStore16
                        if (ItemInventoryRet.OnHandStore16 != null)
                        {
                                int OnHandStore161390 = (int)ItemInventoryRet.OnHandStore16.GetValue();
                        }
                        //Get value of OnHandStore17
                        if (ItemInventoryRet.OnHandStore17 != null)
                        {
                                int OnHandStore171391 = (int)ItemInventoryRet.OnHandStore17.GetValue();
                        }
                        //Get value of OnHandStore18
                        if (ItemInventoryRet.OnHandStore18 != null)
                        {
                                int OnHandStore181392 = (int)ItemInventoryRet.OnHandStore18.GetValue();
                        }
                        //Get value of OnHandStore19
                        if (ItemInventoryRet.OnHandStore19 != null)
                        {
                                int OnHandStore191393 = (int)ItemInventoryRet.OnHandStore19.GetValue();
                        }
                        //Get value of OnHandStore20
                        if (ItemInventoryRet.OnHandStore20 != null)
                        {
                                int OnHandStore201394 = (int)ItemInventoryRet.OnHandStore20.GetValue();
                        }
                        //Get value of ReorderPointStore01
                        if (ItemInventoryRet.ReorderPointStore01 != null)
                        {
                                int ReorderPointStore011395 = (int)ItemInventoryRet.ReorderPointStore01.GetValue();
                        }
                        //Get value of ReorderPointStore02
                        if (ItemInventoryRet.ReorderPointStore02 != null)
                        {
                                int ReorderPointStore021396 = (int)ItemInventoryRet.ReorderPointStore02.GetValue();
                        }
                        //Get value of ReorderPointStore03
                        if (ItemInventoryRet.ReorderPointStore03 != null)
                        {
                                int ReorderPointStore031397 = (int)ItemInventoryRet.ReorderPointStore03.GetValue();
                        }
                        //Get value of ReorderPointStore04
                        if (ItemInventoryRet.ReorderPointStore04 != null)
                        {
                                int ReorderPointStore041398 = (int)ItemInventoryRet.ReorderPointStore04.GetValue();
                        }
                        //Get value of ReorderPointStore05
                        if (ItemInventoryRet.ReorderPointStore05 != null)
                        {
                                int ReorderPointStore051399 = (int)ItemInventoryRet.ReorderPointStore05.GetValue();
                        }
                        //Get value of ReorderPointStore06
                        if (ItemInventoryRet.ReorderPointStore06 != null)
                        {
                                int ReorderPointStore061400 = (int)ItemInventoryRet.ReorderPointStore06.GetValue();
                        }
                        //Get value of ReorderPointStore07
                        if (ItemInventoryRet.ReorderPointStore07 != null)
                        {
                                int ReorderPointStore071401 = (int)ItemInventoryRet.ReorderPointStore07.GetValue();
                        }
                        //Get value of ReorderPointStore08
                        if (ItemInventoryRet.ReorderPointStore08 != null)
                        {
                                int ReorderPointStore081402 = (int)ItemInventoryRet.ReorderPointStore08.GetValue();
                        }
                        //Get value of ReorderPointStore09
                        if (ItemInventoryRet.ReorderPointStore09 != null)
                        {
                                int ReorderPointStore091403 = (int)ItemInventoryRet.ReorderPointStore09.GetValue();
                        }
                        //Get value of ReorderPointStore10
                        if (ItemInventoryRet.ReorderPointStore10 != null)
                        {
                                int ReorderPointStore101404 = (int)ItemInventoryRet.ReorderPointStore10.GetValue();
                        }
                        //Get value of ReorderPointStore11
                        if (ItemInventoryRet.ReorderPointStore11 != null)
                        {
                                int ReorderPointStore111405 = (int)ItemInventoryRet.ReorderPointStore11.GetValue();
                        }
                        //Get value of ReorderPointStore12
                        if (ItemInventoryRet.ReorderPointStore12 != null)
                        {
                                int ReorderPointStore121406 = (int)ItemInventoryRet.ReorderPointStore12.GetValue();
                        }
                        //Get value of ReorderPointStore13
                        if (ItemInventoryRet.ReorderPointStore13 != null)
                        {
                                int ReorderPointStore131407 = (int)ItemInventoryRet.ReorderPointStore13.GetValue();
                        }
                        //Get value of ReorderPointStore14
                        if (ItemInventoryRet.ReorderPointStore14 != null)
                        {
                                int ReorderPointStore141408 = (int)ItemInventoryRet.ReorderPointStore14.GetValue();
                        }
                        //Get value of ReorderPointStore15
                        if (ItemInventoryRet.ReorderPointStore15 != null)
                        {
                                int ReorderPointStore151409 = (int)ItemInventoryRet.ReorderPointStore15.GetValue();
                        }
                        //Get value of ReorderPointStore16
                        if (ItemInventoryRet.ReorderPointStore16 != null)
                        {
                                int ReorderPointStore161410 = (int)ItemInventoryRet.ReorderPointStore16.GetValue();
                        }
                        //Get value of ReorderPointStore17
                        if (ItemInventoryRet.ReorderPointStore17 != null)
                        {
                                int ReorderPointStore171411 = (int)ItemInventoryRet.ReorderPointStore17.GetValue();
                        }
                        //Get value of ReorderPointStore18
                        if (ItemInventoryRet.ReorderPointStore18 != null)
                        {
                                int ReorderPointStore181412 = (int)ItemInventoryRet.ReorderPointStore18.GetValue();
                        }
                        //Get value of ReorderPointStore19
                        if (ItemInventoryRet.ReorderPointStore19 != null)
                        {
                                int ReorderPointStore191413 = (int)ItemInventoryRet.ReorderPointStore19.GetValue();
                        }
                        //Get value of ReorderPointStore20
                        if (ItemInventoryRet.ReorderPointStore20 != null)
                        {
                                int ReorderPointStore201414 = (int)ItemInventoryRet.ReorderPointStore20.GetValue();
                        }
                        //Get value of OrderByUnit
                        if (ItemInventoryRet.OrderByUnit != null)
                        {
                                string OrderByUnit1415 = (string)ItemInventoryRet.OrderByUnit.GetValue();
                        }
                        //Get value of OrderCost
                        if (ItemInventoryRet.OrderCost != null)
                        {
                                double OrderCost1416 = (double)ItemInventoryRet.OrderCost.GetValue();
                        }
                        //Get value of Price1
                        if (ItemInventoryRet.Price1 != null)
                        {
                                double Price11417 = (double)ItemInventoryRet.Price1.GetValue();
                        }
                        //Get value of Price2
                        if (ItemInventoryRet.Price2 != null)
                        {
                                double Price21418 = (double)ItemInventoryRet.Price2.GetValue();
                        }
                        //Get value of Price3
                        if (ItemInventoryRet.Price3 != null)
                        {
                                double Price31419 = (double)ItemInventoryRet.Price3.GetValue();
                        }
                        //Get value of Price4
                        if (ItemInventoryRet.Price4 != null)
                        {
                                double Price41420 = (double)ItemInventoryRet.Price4.GetValue();
                        }
                        //Get value of Price5
                        if (ItemInventoryRet.Price5 != null)
                        {
                                double Price51421 = (double)ItemInventoryRet.Price5.GetValue();
                        }
                        //Get value of QuantityOnCustomerOrder
                        if (ItemInventoryRet.QuantityOnCustomerOrder != null)
                        {
                                int QuantityOnCustomerOrder1422 = (int)ItemInventoryRet.QuantityOnCustomerOrder.GetValue();
                        }
                        //Get value of QuantityOnHand
                        if (ItemInventoryRet.QuantityOnHand != null)
                        {
                                int QuantityOnHand1423 = (int)ItemInventoryRet.QuantityOnHand.GetValue();
                        }
                        //Get value of QuantityOnOrder
                        if (ItemInventoryRet.QuantityOnOrder != null)
                        {
                                int QuantityOnOrder1424 = (int)ItemInventoryRet.QuantityOnOrder.GetValue();
                        }
                        //Get value of QuantityOnPendingOrder
                        if (ItemInventoryRet.QuantityOnPendingOrder != null)
                        {
                                int QuantityOnPendingOrder1425 = (int)ItemInventoryRet.QuantityOnPendingOrder.GetValue();
                        }
                        if (ItemInventoryRet.AvailableQtyList != null)
                        {
                                for (int i1426 = 0; i1426 < ItemInventoryRet.AvailableQtyList.Count; i1426++)
                                {
                                        IAvailableQty AvailableQty = ItemInventoryRet.AvailableQtyList.GetAt(i1426);
                                        //Get value of StoreNumber
                                        if (AvailableQty.StoreNumber != null)
                                        {
                                                int StoreNumber1427 = (int)AvailableQty.StoreNumber.GetValue();
                                        }
                                        //Get value of QuantityOnOrder
                                        if (AvailableQty.QuantityOnOrder != null)
                                        {
                                                int QuantityOnOrder1428 = (int)AvailableQty.QuantityOnOrder.GetValue();
                                        }
                                        //Get value of QuantityOnCustomerOrder
                                        if (AvailableQty.QuantityOnCustomerOrder != null)
                                        {
                                                int QuantityOnCustomerOrder1429 = (int)AvailableQty.QuantityOnCustomerOrder.GetValue();
                                        }
                                        //Get value of QuantityOnPendingOrder
                                        if (AvailableQty.QuantityOnPendingOrder != null)
                                        {
                                                int QuantityOnPendingOrder1430 = (int)AvailableQty.QuantityOnPendingOrder.GetValue();
                                        }
                                }
                        }
                        //Get value of ReorderPoint
                        if (ItemInventoryRet.ReorderPoint != null)
                        {
                                int ReorderPoint1431 = (int)ItemInventoryRet.ReorderPoint.GetValue();
                        }
                        //Get value of SellByUnit
                        if (ItemInventoryRet.SellByUnit != null)
                        {
                                string SellByUnit1432 = (string)ItemInventoryRet.SellByUnit.GetValue();
                        }
                        //Get value of SerialFlag
                        if (ItemInventoryRet.SerialFlag != null)
                        {
                                ENSerialFlag SerialFlag1433 = (ENSerialFlag)ItemInventoryRet.SerialFlag.GetValue();
                        }
                        //Get value of Size
                        if (ItemInventoryRet.Size != null)
                        {
                                string Size1434 = (string)ItemInventoryRet.Size.GetValue();
                        }
                        //Get value of StoreExchangeStatus
                        if (ItemInventoryRet.StoreExchangeStatus != null)
                        {
                                ENStoreExchangeStatus StoreExchangeStatus1435 = (ENStoreExchangeStatus)ItemInventoryRet.StoreExchangeStatus.GetValue();
                        }
                        //Get value of TaxCode
                        if (ItemInventoryRet.TaxCode != null)
                        {
                                string TaxCode1436 = (string)ItemInventoryRet.TaxCode.GetValue();
                        }
                        //Get value of UnitOfMeasure
                        if (ItemInventoryRet.UnitOfMeasure != null)
                        {
                                string UnitOfMeasure1437 = (string)ItemInventoryRet.UnitOfMeasure.GetValue();
                        }
                        //Get value of UPC
                        if (ItemInventoryRet.UPC != null)
                        {
                                string UPC1438 = (string)ItemInventoryRet.UPC.GetValue();
                        }
                        //Get value of VendorCode
                        if (ItemInventoryRet.VendorCode != null)
                        {
                                string VendorCode1439 = (string)ItemInventoryRet.VendorCode.GetValue();
                        }
                        //Get value of VendorListID
                        if (ItemInventoryRet.VendorListID != null)
                        {
                                string VendorListID1440 = (string)ItemInventoryRet.VendorListID.GetValue();
                        }
                        //Get value of WebDesc
                        if (ItemInventoryRet.WebDesc != null)
                        {
                                string WebDesc1441 = (string)ItemInventoryRet.WebDesc.GetValue();
                        }
                        //Get value of WebPrice
                        if (ItemInventoryRet.WebPrice != null)
                        {
                                double WebPrice1442 = (double)ItemInventoryRet.WebPrice.GetValue();
                        }
                        //Get value of Manufacturer
                        if (ItemInventoryRet.Manufacturer != null)
                        {
                                string Manufacturer1443 = (string)ItemInventoryRet.Manufacturer.GetValue();
                        }
                        //Get value of Weight
                        if (ItemInventoryRet.Weight != null)
                        {
                                float Weight1444 = (float)ItemInventoryRet.Weight.GetValue();
                        }
                        //Get value of WebSKU
                        if (ItemInventoryRet.WebSKU != null)
                        {
                                string WebSKU1445 = (string)ItemInventoryRet.WebSKU.GetValue();
                        }
                        //Get value of Keywords
                        if (ItemInventoryRet.Keywords != null)
                        {
                                string Keywords1446 = (string)ItemInventoryRet.Keywords.GetValue();
                        }
                        //Get value of WebCategories
                        if (ItemInventoryRet.WebCategories != null)
                        {
                                string WebCategories1447 = (string)ItemInventoryRet.WebCategories.GetValue();
                        }
                        if (ItemInventoryRet.UnitOfMeasure1 != null)
                        {
                                //Get value of ALU
                                if (ItemInventoryRet.UnitOfMeasure1.ALU != null)
                                {
                                        string ALU1448 = (string)ItemInventoryRet.UnitOfMeasure1.ALU.GetValue();
                                }
                                //Get value of MSRP
                                if (ItemInventoryRet.UnitOfMeasure1.MSRP != null)
                                {
                                        double MSRP1449 = (double)ItemInventoryRet.UnitOfMeasure1.MSRP.GetValue();
                                }
                                //Get value of NumberOfBaseUnits
                                if (ItemInventoryRet.UnitOfMeasure1.NumberOfBaseUnits != null)
                                {
                                        int NumberOfBaseUnits1450 = (int)ItemInventoryRet.UnitOfMeasure1.NumberOfBaseUnits.GetValue();
                                }
                                //Get value of Price1
                                if (ItemInventoryRet.UnitOfMeasure1.Price1 != null)
                                {
                                        double Price11451 = (double)ItemInventoryRet.UnitOfMeasure1.Price1.GetValue();
                                }
                                //Get value of Price2
                                if (ItemInventoryRet.UnitOfMeasure1.Price2 != null)
                                {
                                        double Price21452 = (double)ItemInventoryRet.UnitOfMeasure1.Price2.GetValue();
                                }
                                //Get value of Price3
                                if (ItemInventoryRet.UnitOfMeasure1.Price3 != null)
                                {
                                        double Price31453 = (double)ItemInventoryRet.UnitOfMeasure1.Price3.GetValue();
                                }
                                //Get value of Price4
                                if (ItemInventoryRet.UnitOfMeasure1.Price4 != null)
                                {
                                        double Price41454 = (double)ItemInventoryRet.UnitOfMeasure1.Price4.GetValue();
                                }
                                //Get value of Price5
                                if (ItemInventoryRet.UnitOfMeasure1.Price5 != null)
                                {
                                        double Price51455 = (double)ItemInventoryRet.UnitOfMeasure1.Price5.GetValue();
                                }
                                //Get value of UnitOfMeasure
                                if (ItemInventoryRet.UnitOfMeasure1.UnitOfMeasure != null)
                                {
                                        string UnitOfMeasure1456 = (string)ItemInventoryRet.UnitOfMeasure1.UnitOfMeasure.GetValue();
                                }
                                //Get value of UPC
                                if (ItemInventoryRet.UnitOfMeasure1.UPC != null)
                                {
                                        string UPC1457 = (string)ItemInventoryRet.UnitOfMeasure1.UPC.GetValue();
                                }
                        }
                        if (ItemInventoryRet.UnitOfMeasure2 != null)
                        {
                                //Get value of ALU
                                if (ItemInventoryRet.UnitOfMeasure2.ALU != null)
                                {
                                        string ALU1458 = (string)ItemInventoryRet.UnitOfMeasure2.ALU.GetValue();
                                }
                                //Get value of MSRP
                                if (ItemInventoryRet.UnitOfMeasure2.MSRP != null)
                                {
                                        double MSRP1459 = (double)ItemInventoryRet.UnitOfMeasure2.MSRP.GetValue();
                                }
                                //Get value of NumberOfBaseUnits
                                if (ItemInventoryRet.UnitOfMeasure2.NumberOfBaseUnits != null)
                                {
                                        int NumberOfBaseUnits1460 = (int)ItemInventoryRet.UnitOfMeasure2.NumberOfBaseUnits.GetValue();
                                }
                                //Get value of Price1
                                if (ItemInventoryRet.UnitOfMeasure2.Price1 != null)
                                {
                                        double Price11461 = (double)ItemInventoryRet.UnitOfMeasure2.Price1.GetValue();
                                }
                                //Get value of Price2
                                if (ItemInventoryRet.UnitOfMeasure2.Price2 != null)
                                {
                                        double Price21462 = (double)ItemInventoryRet.UnitOfMeasure2.Price2.GetValue();
                                }
                                //Get value of Price3
                                if (ItemInventoryRet.UnitOfMeasure2.Price3 != null)
                                {
                                        double Price31463 = (double)ItemInventoryRet.UnitOfMeasure2.Price3.GetValue();
                                }
                                //Get value of Price4
                                if (ItemInventoryRet.UnitOfMeasure2.Price4 != null)
                                {
                                        double Price41464 = (double)ItemInventoryRet.UnitOfMeasure2.Price4.GetValue();
                                }
                                //Get value of Price5
                                if (ItemInventoryRet.UnitOfMeasure2.Price5 != null)
                                {
                                        double Price51465 = (double)ItemInventoryRet.UnitOfMeasure2.Price5.GetValue();
                                }
                                //Get value of UnitOfMeasure
                                if (ItemInventoryRet.UnitOfMeasure2.UnitOfMeasure != null)
                                {
                                        string UnitOfMeasure1466 = (string)ItemInventoryRet.UnitOfMeasure2.UnitOfMeasure.GetValue();
                                }
                                //Get value of UPC
                                if (ItemInventoryRet.UnitOfMeasure2.UPC != null)
                                {
                                        string UPC1467 = (string)ItemInventoryRet.UnitOfMeasure2.UPC.GetValue();
                                }
                        }
                        if (ItemInventoryRet.UnitOfMeasure3 != null)
                        {
                                //Get value of ALU
                                if (ItemInventoryRet.UnitOfMeasure3.ALU != null)
                                {
                                        string ALU1468 = (string)ItemInventoryRet.UnitOfMeasure3.ALU.GetValue();
                                }
                                //Get value of MSRP
                                if (ItemInventoryRet.UnitOfMeasure3.MSRP != null)
                                {
                                        double MSRP1469 = (double)ItemInventoryRet.UnitOfMeasure3.MSRP.GetValue();
                                }
                                //Get value of NumberOfBaseUnits
                                if (ItemInventoryRet.UnitOfMeasure3.NumberOfBaseUnits != null)
                                {
                                        int NumberOfBaseUnits1470 = (int)ItemInventoryRet.UnitOfMeasure3.NumberOfBaseUnits.GetValue();
                                }
                                //Get value of Price1
                                if (ItemInventoryRet.UnitOfMeasure3.Price1 != null)
                                {
                                        double Price11471 = (double)ItemInventoryRet.UnitOfMeasure3.Price1.GetValue();
                                }
                                //Get value of Price2
                                if (ItemInventoryRet.UnitOfMeasure3.Price2 != null)
                                {
                                        double Price21472 = (double)ItemInventoryRet.UnitOfMeasure3.Price2.GetValue();
                                }
                                //Get value of Price3
                                if (ItemInventoryRet.UnitOfMeasure3.Price3 != null)
                                {
                                        double Price31473 = (double)ItemInventoryRet.UnitOfMeasure3.Price3.GetValue();
                                }
                                //Get value of Price4
                                if (ItemInventoryRet.UnitOfMeasure3.Price4 != null)
                                {
                                        double Price41474 = (double)ItemInventoryRet.UnitOfMeasure3.Price4.GetValue();
                                }
                                //Get value of Price5
                                if (ItemInventoryRet.UnitOfMeasure3.Price5 != null)
                                {
                                        double Price51475 = (double)ItemInventoryRet.UnitOfMeasure3.Price5.GetValue();
                                }
                                //Get value of UnitOfMeasure
                                if (ItemInventoryRet.UnitOfMeasure3.UnitOfMeasure != null)
                                {
                                        string UnitOfMeasure1476 = (string)ItemInventoryRet.UnitOfMeasure3.UnitOfMeasure.GetValue();
                                }
                                //Get value of UPC
                                if (ItemInventoryRet.UnitOfMeasure3.UPC != null)
                                {
                                        string UPC1477 = (string)ItemInventoryRet.UnitOfMeasure3.UPC.GetValue();
                                }
                        }
                        if (ItemInventoryRet.VendorInfo2 != null)
                        {
                                //Get value of ALU
                                if (ItemInventoryRet.VendorInfo2.ALU != null)
                                {
                                        string ALU1478 = (string)ItemInventoryRet.VendorInfo2.ALU.GetValue();
                                }
                                //Get value of OrderCost
                                if (ItemInventoryRet.VendorInfo2.OrderCost != null)
                                {
                                        double OrderCost1479 = (double)ItemInventoryRet.VendorInfo2.OrderCost.GetValue();
                                }
                                //Get value of UPC
                                if (ItemInventoryRet.VendorInfo2.UPC != null)
                                {
                                        string UPC1480 = (string)ItemInventoryRet.VendorInfo2.UPC.GetValue();
                                }
                                //Get value of VendorListID
                                string VendorListID1481 = (string)ItemInventoryRet.VendorInfo2.VendorListID.GetValue();
                        }
                        if (ItemInventoryRet.VendorInfo3 != null)
                        {
                                //Get value of ALU
                                if (ItemInventoryRet.VendorInfo3.ALU != null)
                                {
                                        string ALU1482 = (string)ItemInventoryRet.VendorInfo3.ALU.GetValue();
                                }
                                //Get value of OrderCost
                                if (ItemInventoryRet.VendorInfo3.OrderCost != null)
                                {
                                        double OrderCost1483 = (double)ItemInventoryRet.VendorInfo3.OrderCost.GetValue();
                                }
                                //Get value of UPC
                                if (ItemInventoryRet.VendorInfo3.UPC != null)
                                {
                                        string UPC1484 = (string)ItemInventoryRet.VendorInfo3.UPC.GetValue();
                                }
                                //Get value of VendorListID
                                string VendorListID1485 = (string)ItemInventoryRet.VendorInfo3.VendorListID.GetValue();
                        }
                        if (ItemInventoryRet.VendorInfo4 != null)
                        {
                                //Get value of ALU
                                if (ItemInventoryRet.VendorInfo4.ALU != null)
                                {
                                        string ALU1486 = (string)ItemInventoryRet.VendorInfo4.ALU.GetValue();
                                }
                                //Get value of OrderCost
                                if (ItemInventoryRet.VendorInfo4.OrderCost != null)
                                {
                                        double OrderCost1487 = (double)ItemInventoryRet.VendorInfo4.OrderCost.GetValue();
                                }
                                //Get value of UPC
                                if (ItemInventoryRet.VendorInfo4.UPC != null)
                                {
                                        string UPC1488 = (string)ItemInventoryRet.VendorInfo4.UPC.GetValue();
                                }
                                //Get value of VendorListID
                                string VendorListID1489 = (string)ItemInventoryRet.VendorInfo4.VendorListID.GetValue();
                        }
                        if (ItemInventoryRet.VendorInfo5 != null)
                        {
                                //Get value of ALU
                                if (ItemInventoryRet.VendorInfo5.ALU != null)
                                {
                                        string ALU1490 = (string)ItemInventoryRet.VendorInfo5.ALU.GetValue();
                                }
                                //Get value of OrderCost
                                if (ItemInventoryRet.VendorInfo5.OrderCost != null)
                                {
                                        double OrderCost1491 = (double)ItemInventoryRet.VendorInfo5.OrderCost.GetValue();
                                }
                                //Get value of UPC
                                if (ItemInventoryRet.VendorInfo5.UPC != null)
                                {
                                        string UPC1492 = (string)ItemInventoryRet.VendorInfo5.UPC.GetValue();
                                }
                                //Get value of VendorListID
                                string VendorListID1493 = (string)ItemInventoryRet.VendorInfo5.VendorListID.GetValue();
                        }
                        if (ItemInventoryRet.DataExtRetList != null)
                        {
                                for (int i1494 = 0; i1494 < ItemInventoryRet.DataExtRetList.Count; i1494++)
                                {
                                        IDataExtRet DataExtRet = ItemInventoryRet.DataExtRetList.GetAt(i1494);
                                        //Get value of OwnerID
                                        string OwnerID1495 = (string)DataExtRet.OwnerID.GetValue();
                                        //Get value of DataExtName
                                        string DataExtName1496 = (string)DataExtRet.DataExtName.GetValue();
                                        //Get value of DataExtType
                                        ENDataExtType DataExtType1497 = (ENDataExtType)DataExtRet.DataExtType.GetValue();
                                        //Get value of DataExtValue
                                        string DataExtValue1498 = (string)DataExtRet.DataExtValue.GetValue();
                                }
                        }
                        //Get value of IsEcommerce
                        if (ItemInventoryRet.IsEcommerce != null)
                        {
                                bool IsEcommerce1499 = (bool)ItemInventoryRet.IsEcommerce.GetValue();
                        }
                        //Get value of OnlineStoreNames
                        if (ItemInventoryRet.OnlineStoreNames != null)
                        {
                                string OnlineStoreNames1500 = (string)ItemInventoryRet.OnlineStoreNames.GetValue();
                        }
                }




        }
}