QuickBooks Integrator 2020 macOS Edition

Questions / Feedback?

SalesReceiptItem Type

A single sales receipt line item.

Remarks

This type of line item is used by the SalesReceipt class.

Fields

aggregate
String

Contains an XML aggregate of the line item. If the line item has not been modified since receiving a response from QuickBooks, the exact LineRet aggregate that QuickBooks returned will be contained in this XML aggregate. However, if you have made changes to the this line item's properties the Aggregate property will re-generate the line item XML with the new data.

If you set the other line item properties and then query the Aggregate, a LineRet aggregate will be generated from the currently set properties.

You may set this property with raw xml. So long as you do not modify any other properties (forcing the line item to regenerate based on new changes), the xml will be sent as-is to the QuickBooks request processor. It is essential that you properly format the XML that you place in this property. When setting this property manually, the class will send exactly what you have set. You must ensure your xml is appropriate for the action you are attempting. For instance, if you are Adding an Invoice, you must ensure the outer tags are "InvoiceLineAdd". If Modifying an Invoice, the outer tags must be "InvoiceLineMod".

If you do not expressly set the Aggregate field with your own custom XML, all of this will be taken care of you automatically by the class.

amount
String

Line item property: the total amount of this item.

This property represents the total amount of a transaction line. If Rate, Cost and/or Quantity are specified the Amount will be automatically computed by QuickBooks.

Whether Rate or Cost is used will depend on the transaction type. Rate is available for CreditMemo, Estimate, Invoice, PurchaseOrder, SalesOrder, and SalesReceipt transactions while Cost is available for Bill, CCCharge, CCCredit, Check, ItemReceipt, and VendorCredit transactions.

The amount should be formatted as a string in dollars.

classId
String

Line item property: Reference to the class of the item.

A reference to the class of this item.

Id/Name Reference Properties

This property is used to reference an object that is already done within QuickBooks. This may be done with its Id (this property) or its full Name, for which a corresponding property is defined.

Using the Id is recommended when feasible, as the Id is guaranteed to never change once defined.

Setting the value of this property will set the corresponding Name property to an empty string.

className_
String

Line item property: Reference to the class of the item.

Name/Id Reference Properties

This property is used to reference an object that is already done within QuickBooks. This may be done with its full Name (this property) or its Id, for which a corresponding property is defined. If Name is used, it must contain the full name of the object referred to, as generated by QuickBooks. For hierarchically defined objects, such as Customers, this includes the names of parent objects, and the full name can be determined by reading the FullName special field.

Setting the value of this property will set the corresponding Id property to an empty string.

description_
String

Line item property: Description of item.

A string description of the Item specified by ItemName or ItemId.

groupId
String

Reference to a group of line items.

Line item groups represent sets of items that are grouped together. A line item group is a predefined shortcut within QuickBooks. For example, a "Cheeseburger Meal" might consist of a cheeseburger, an order of french fries, and a soft drink. To include an item group in a transaction one should simply set the value of ItemGroup, and optionally, of ItemQuantity. QuickBooks will automatically expand the group into its constituent items. This will send an ItemGroup instead of a regular Item on for this index.

When an ItemGroup is returned from QuickBooks it contains xml aggregates of all of the items in the group you specified. You may access the group's regular properties (total Amount, Quantity, and Description), but the line items returned are not accessible with this object. However, you may parse the returned line items by passing the contents of the Aggregate property to the LineItemGroups class. You may use the LineItemGroups class to view or change the contents of the line items, and then pass the xml aggregate generated by the class back to the Aggregate field to use in an Update transaction.

groupName
String

Reference to a group of line items.

Line item groups represent sets of items that are grouped together. A line item group is a predefined shortcut within QuickBooks. For example, a "Cheeseburger Meal" might consist of a cheeseburger, an order of french fries, and a soft drink. To include an item group in a transaction one should simply set the value of ItemGroup, and optionally, of ItemQuantity. QuickBooks will automatically expand the group into its constituent items. This will send an ItemGroup instead of a regular Item on for this index.

When an ItemGroup is returned from QuickBooks it contains xml aggregates of all of the items in the group you specified. You may access the group's regular properties (total Amount, Quantity, and Description), but the line items returned are not accessible with this object. However, you may parse the returned line items by passing the contents of the Aggregate property to the LineItemGroups class. You may use the LineItemGroups class to view or change the contents of the line items, and then pass the xml aggregate generated by the class back to the Aggregate field to use in an Update transaction.

itemId
String

Line item property: Reference to the kind of item.

Line items represent goods or services bought in a QuickBooks transaction.

Each line item is represented by a number of properties, each prefixed by Item (see the list of properties for individual classs for details). Properties such as Quantity and Description are always present; some properties are found in only certain types of transactions.

Item is a reference to a kind of item, predefined within QuickBooks. Generally items defined within QuickBooks have default values for Description, etc., and if only Item is set when adding a record to QuickBooks, the other properties will be set automatically.

This class is used to create a single item. However, any InQB class may be set with an unlimited number of these items. For example:


 Invoice.ItemCount = 3

 LineItems.ItemName = "Wingnut"
 LineItems.Quantity = 8
 Invoice.ItemAggregate[0] = LineItems.GetAggregate()

 LineItems.ItemName = "Shovel"
 LineItems.Quantity = 1
 Invoice.ItemAggregate[1] = LineItems.GetAggregate()

 LineItems.ItemName = "Mower blade"
 LineItems.Quantity = 1
 Invoice.ItemAggregate[2] = LineItems.GetAggregate()

Items may also be grouped into ItemGroups, using the LineItemGroups class.

itemName
String

Line item property: Reference to the kind of item.

Line items represent goods or services bought in a QuickBooks transaction.

Each line item is represented by a number of properties, each prefixed by Item (see the list of properties for individual classs for details). Properties such as Quantity and Description are always present; some properties are found in only certain types of transactions.

Item is a reference to a kind of item, predefined within QuickBooks. Generally items defined within QuickBooks have default values for Description, etc., and if only Item is set when adding a record to QuickBooks, the other properties will be set automatically.

This class is used to create a single item. However, any InQB class may be set with an unlimited number of these items. For example:


 Invoice.ItemCount = 3

 LineItems.ItemName = "Wingnut"
 LineItems.Quantity = 8
 Invoice.ItemAggregate[0] = LineItems.GetAggregate()

 LineItems.ItemName = "Shovel"
 LineItems.Quantity = 1
 Invoice.ItemAggregate[1] = LineItems.GetAggregate()

 LineItems.ItemName = "Mower blade"
 LineItems.Quantity = 1
 Invoice.ItemAggregate[2] = LineItems.GetAggregate()

Items may also be grouped into ItemGroups, using the LineItemGroups class.

lineId
String

Identification number of the transaction line, used for Updates.

If you need to add a new transaction line in a transaction Update request, you can do so by setting the LineId to -1.

other1
String

Standard QuickBooks Custom Field available for transaction line items.

The Other1 and Other2 custom fields are available for immediate use: you don't need to enable these in the transaction template to be able to access them via SDK. (However, those Other1 and Other2 fields and their values are viewable and printable in QuickBooks only if the transaction template has these enabled!). QBXMLVersion 6.0 or higher is required to use this property.

other2
String

Standard QuickBooks Custom Field available for transaction line items.

The Other1 and Other2 custom fields are available for immediate use: you don't need to enable these in the transaction template to be able to access them via SDK. (However, those Other1 and Other2 fields and their values are viewable and printable in QuickBooks only if the transaction template has these enabled!). QBXMLVersion 6.0 or higher is required to use this property.

overrideAccountId
String

An account which will override the default account for the line item. QBXMLVersion must be 2.0 or higher to use this configuration setting.

overrideAccountName
String

An account which will override the default account for the line item. QBXMLVersion must be 2.0 or higher to use this configuration setting.

priceLevelId
String

Line Item property: Used to specify custom pricing for specific customers.

Id for the PriceLevel selected for this transaction.

If PriceLevelId and/or PriceLevelName are specified, then Amount will be calculated automatically and should not be specified.

Note that PriceLevelId and PriceLevelName, OR Rate OR RatePercent may be specified. PriceLevelId and PriceLevelName are ONLY available for QBXMLVersions 4.0 and above.

You can use price levels to specify custom pricing for specific customers. Once you create a price level for a customer, QuickBooks will automatically use the custom price in new invoices, sales receipts, sales orders or credit memos for that customer. You can override this automatic feature, however, when you create the invoices, sales receipts, etc.)

The user can now specify a price level on line items in the following supported sales transactions: invoices, sales receipts, credit memos, and sales orders.

Notice that the response data for the affected sales transaction does not list the price level that was used. The response simply lists the Rate, which was set using the price level.

priceLevelName
String

Line Item property: Specify custom pricing for specific customers.

Id for the PriceLevel selected for this transaction.

If PriceLevelId and/or PriceLevelName are specified, then Amount will be calculated automatically and should not be specified.

Note that PriceLevelId and PriceLevelName, OR Rate OR RatePercent may be specified. PriceLevelId and PriceLevelName are ONLY available for QBXMLVersions 4.0 and above.

You can use price levels to specify custom pricing for specific customers. Once you create a price level for a customer, QuickBooks will automatically use the custom price in new invoices, sales receipts, sales orders or credit memos for that customer. You can override this automatic feature, however, when you create the invoices, sales receipts, etc.)

The user can now specify a price level on line items in the following supported sales transactions: invoices, sales receipts, credit memos, and sales orders.

Notice that the response data for the affected sales transaction does not list the price level that was used. The response simply lists the Rate, which was set using the price level.

quantity
String

Line item property: Quantity of item or item group.

The quantity of the Item specified in this line.

If Quantity and only one of Cost, Rate, or Amount are specified, QuickBooks will automatically calculate the other.

This property is a String type in order to allow setting fractional quantities. Setting this property with non-numeric data will cause an error. Correct usage of this property is shown below:


  class.Quantity = "3.5"

Leave this property blank and no quantity will be sent to QuickBooks.

rate
String

Unit rate of item.

The unit rate charged for this item.

If Amount is specified, then Rate will be calculated automatically and should not be specified.

The amount should be formatted as a string in dollars.

ratePercent
String

Line item property: A markup or discount percentage.

If RatePercent is specified instead of Rate, then this line item represents a percentage markup or discount, to be applied to the previous Item or Item group.

RatePercent should be formatted as a positive or negative integer; a positive value indicates a markup.

Only one of RatePercent and Rate may be specified. If RatePercent is set, then Rate will be set to its default.

serviceDate
String

Line item property: Date of service.

For Items that represent a service, ServiceDate refers to the date of service. ServiceDate is only applicable for the CreditMemo, Invoice, PurchaseOrder, and SalesReceipt classs.

The standard formatting for dates is YYYY-MM-DD; i.e., September 2, 2002 is formatted as 2002-09-02. When getting the value of a date property, the date will always be in this format.

When setting the value of a date property, the formats MM-DD-YY, MM-DD-YYYY, MM/DD/YY, and MM/DD/YYYY are also acceptable. Dates in these formats will be automatically parsed and stored in YYYY-MM-DD format.

taxCodeId
String

Line item property: Sales tax information for this item.

This is a reference to a sales tax code predefined within QuickBooks.

By default, two standard TaxCodes exist: "TAX", or Taxable Sales, and "NON", or Non-Taxable Sales. The QuickBooks user may also define custom tax codes.

Id/Name Reference Properties

This property is used to reference an object that is already done within QuickBooks. This may be done with its Id (this property) or its full Name, for which a corresponding property is defined.

Using the Id is recommended when feasible, as the Id is guaranteed to never change once defined.

Setting the value of this property will set the corresponding Name property to an empty string.

taxCodeName
String

Line item property: Sales tax information for this item.

This is a reference to a sales tax code predefined within QuickBooks.

By default, two standard TaxCodes exist: "TAX", or Taxable Sales, and "NON", or Non-Taxable Sales. The QuickBooks user may also define custom tax codes.

Name/Id Reference Properties

This property is used to reference an object that is already done within QuickBooks. This may be done with its full Name (this property) or its Id, for which a corresponding property is defined. If Name is used, it must contain the full name of the object referred to, as generated by QuickBooks. For hierarchically defined objects, such as Customers, this includes the names of parent objects, and the full name can be determined by reading the FullName special field.

Setting the value of this property will set the corresponding Id property to an empty string.

unitOfMeasure
String

Unit of measure describing the Quantity.

In a transaction line item, the name of the unit of measure selected from within the item's available units. If the company file is enabled only for single unit of measure per item, this must be the base unit!

This property is only available for QBXMLVersion 7.0 and higher.

Constructors

public init()

Copyright (c) 2021 /n software inc. - All rights reserved.
QuickBooks Integrator 2020 macOS Edition - Version 20.0 [Build 7941]