|
|||||||||||
|
|
Last Updated: 6/28/98
Transactions are the most complicated part of QuickBooks - but they are also where most of the significant data is. A transaction is created and posted whenever something happens in QuickBooks that affects fields in other record type(s). Posting is the activity that updates the other record type. Most tranactions are created through the Activities menu - although some are created internally by QuickBooks. All transactions are posted at the time they created - except purchase orders and estimates, which hold information used to create other transactions at a later date. Each transaction also a header (TranDoc) and 2 or more transaction lines (TranLine). Transaction documents contain header information that applies to the transaction as a whole - but no postable transaction data. Each transaction line typically contains a single dollar amount to be posted to a single account - as well as other fields that may (for example) update inventory item quantities or payroll year to date information, depending on the transaction type. Even though QuickBooks uses 24 different types of transactions, it stores them all in the same set of records. This is a flexible and powerful technique - but can difficult to understand. Some fields - such as dDate, sTranType, and kDoc exist in every transaction line. Other fields - such as kAcct and mAmount exist about 99% of the time. Most of the fields exist for some transaction types and not for others. A few fields have different meanings in different transaction types. |
Transaction Types
Transaction Documents (TranDoc)
Transaction Lines (TranLine)
Memorized Transaction Documents (MemDoc)
Back to QBooks Office Overview
|
The following table lists each of the 24 transaction types. Most transactions are entered manually, but some - such as YtdAdjst and LiaAdjst are mainly entered automatically by QuickBooks. The specific menu item used to access each type of transaction is also listed. There are often other ways of accessing transactions through registers that are not listed here. |
Tran Type |
QuickBooks Long Name |
QuickBooks Abbrev |
Description |
| Journal | Journal |
GENJRNL |
Debit or credit entry (general journal). Accessed through the Activities / Make Journal Entry menu or the register of any asset, liability, or equity type account. Journal entries are the simplest type of transactions in that they only involve dates, accounts, and dollar amounts. All of the other types of transactions use the same fields as journal transactions - but they add other fields with data specific to that type of transaction. |
| Transfer | Transfer |
TRANSFR |
Transfer from one account to another. Accessed through the Activities / Transfer Money menu. QuickBooks has this type of transaction primarily for importing data from Quicken. It is often unused. |
| Check | Check |
CHK |
Check drawn on a bank account. Accessed through the Activities / Write Checks menu or the register of a bank type account. |
| Deposit | Deposit |
DEP |
Deposit to a bank account. Accessed through the Activities / Make Deposits menu or the register of a bank type account. |
| CashSale | Cash Sale |
RCPT |
Cash sale (receipt). Accessed through the Activities / Enter Cash Sales menu. |
| Estimate | Estimate |
EST |
Estimate to a customer. Accessed through the Activities / Create Estimates menu. Dollar amounts and inventory quantities in estimates are never posted to accounts. Later, if and when the estimate is turned into a sale - the appropriate amounts will be posted. |
| CustInvc | Invoice |
INV |
Invoice to a customer. Accessed through the Activities / Create Invoices menu. Invoices are the most complex type of transaction. Several transaction line fields (see TranLine below) are only used for invoices. |
| CustChrg | Statement Charge |
STMTCHG |
Statement charge (usually interest) billed to a customer. Accessed through the Activities / Assess Finance Charges menu or the register of the customer or the accounts receivable register. |
| CustPymt | Payment |
PMT |
Payment from a customer. Accessed through the Activities / Receive Payments menu. |
| CustCred | Credit Memo |
CREDMEM |
Credit memo for a customer. Accessed through the Activities / Create Credit Memos / Refunds menu. |
| InvAdjst | Inventory Adjustment |
INV ADJ |
Inventory adjustment. Accessed through the Activities / Adjust Qty/Value on Hand menu. |
| PurchOrd | Purchase Order |
PURCHORD |
Purchase Order to a vendor. Accessed through the Activities / Create Purchase Orders menu. Dollar amounts and inventory quantities in purchase orders are never posted to accounts. Later, if and when the items in the purchase order are received or billed - the appropriate amounts will be posted. |
| ItemRcpt | Item Receipt |
ITEM RCP |
Receipt of an item that has been ordered - where no bill has been received from the vendor yet. Accessed through the Activities / Inventory / Receive Items menu. After the associated bill is later entered, the type of this transaction will change to VendBill. |
| VendBill | Bill |
BILL |
Bill from a vendor. Accessed through the Activities / Enter Bills menu or the register of the accounts payable type account. |
| VendPymt | Bill Payment |
BILLPMT |
Payment to a vendor by other than credit card. Accessed through the Activities / Pay Bills menu. |
| VendCard | Bill CCard |
BILLPMT |
Payment to a vendor by credit card. Accessed through the Activities / Pay Bills menu. |
| VendCred | Bill Credit |
BILLCRED |
Credit from a vendor. Accessed through the Activities / Enter Bills menu. |
| CardChrg | Credit Card (charge) |
CC |
General credit card charge. Accessed through the Activities / Enter Credit Card Charges menu or the register of a credit card type account. |
| CardRfnd | CCard Refund |
CC CRED |
General credit card refund or credit. Accessed through the Activities / Enter Credit Card Charges menu or the register of a credit card type account. |
| TaxPymt | Sales Tax Payment |
TAXPMT |
Sales tax payment. Accessed through the Activities / Pay Sales Tax menu. |
| Paycheck | Paycheck |
PAY CHK |
Payroll check to an employee. Accessed through the Activities / Payroll / Pay Employees... menu. |
| LiabPymt | Payroll Liability Check |
LIAB CHK |
Check for payroll taxes or other payroll liability. Accessed through the Activities / Payroll / Pay Liabilities/Taxes... menu. |
| YtdAdjst | YTD Adjustment |
YTD ADJ |
Year to Date Payroll Adjustment. Accessed through the Activities / Set Up YTD Amounts... menu. QuickBooks also automatically generates entries of this type that are not visible in any reports. |
| LiaAdjst | Liability Adjustment |
LIAB ADJ |
Payroll Liability Adjustment. Accessed through the Activities / Adjust Liabilities... menu. QuickBooks also automatically generates entries if this type that are not visible in any reports. |
Contents of this page
QBooks Office Overview
|
Transaction documents contain the 'header' fields for each transaction. These are fields that appear only once in each document - and are not repeated for each line. For example, a sales invoice transaction (type Invoice) will have fields that specify the the customer, address, invoice number, etc. that belong to the customer as a whole. Transaction lines (TranLine below) are the individual line items typically listed in the lower part of a printed document. |
Fields in record type: TranDoc |
Ver |
Field Name |
Type |
Prop |
IIF Name |
Description |
456 |
nKey |
Long |
PKey |
- |
Unique transaction document record identifier This is always identical to the nKey of first transaction line belonging to this doc. QBooks Office code artificially generates this key (as well as the nKey for for TranLines) - see field nOrigKey for the actual value stored in the QB file. |
456 |
dDate |
Date |
Req |
DATE |
Date of transaction This date will match field dDate in all TranLines belonging to this TranDoc. |
456 |
sTranType |
S8 |
Req |
TRNSTYPE |
Type of transaction. See list of possible values at beginning of this record section. |
456 |
nTranLineCnt |
Long |
Req |
- |
Total count of tran lines for this doc. |
456 |
kFirstTran |
Long |
FKeyReq |
- |
Key of first tran line for this doc. The first transaction line usually has a different set of fields than subsequent transactions - because it contains the totals. This will always exactly match the nKey field of a record in table TranLine. |
456 |
nFormTemplate |
Long |
OptDft0 |
- |
ID of form template used. The actual form templates are not exported - but this can indicate that a customized form is being used. Users can delete and rearrange positions of fields and enable custom fields. |
456 |
sDocNum |
S11 |
Opt |
INVTITLE |
Main document identifier, such as the check number or invoice number as printed on the document. |
456 |
sAddr1 |
S41 |
Opt |
ADDR1 |
Address line. This line and the other address lines are typically copied from the customer or vendor record when the document is created - although they can be modified. |
456 |
sAddr2 |
S41 |
Opt |
ADDR2 |
Address line |
456 |
sAddr3 |
S41 |
Opt |
ADDR3 |
Address line |
456 |
sAddr4 |
S41 |
Opt |
ADDR4 |
Address line |
456 |
sAddr5 |
S41 |
Opt |
ADDR5 |
Address line |
456 |
sCompAddr1 |
S41 |
Opt |
SADDR1 |
Shipping address line |
456 |
sCompAddr2 |
S41 |
Opt |
SADDR2 |
Shipping address line |
456 |
sCompAddr5 |
S41 |
Opt |
SADDR5 |
Shipping address line |
456 |
sCompAddr3 |
S41 |
Opt |
SADDR3 |
Shipping address line |
456 |
sCompAddr4 |
S41 |
Opt |
SADDR4 |
Shipping address line |
456 |
sDocNum2 |
S11 |
Opt |
PONUM |
Auxiliary document number, such as customer's PO number. |
456 |
kTerms |
Long |
FKeyOpt |
TERMS |
Key of payment terms. If this exists, it will always exactly match the nKey field of a record in table Terms. |
456 |
kEmployee |
Long |
FKeyOpt |
REP |
Key of sales rep for invoice. If this exists, it will always exactly match the nKey field of a record in table Employee. |
456 |
kShipMeth |
Long |
FKeyOpt |
SHIPVIA |
Key of shipping method used. If this exists, it will always exactly match the nKey field of a record in table ShipVia. |
456 |
sFob |
S13 |
Opt |
FOB |
Shipping location for which customer pays shipping charges. Freeform text. |
456 |
kCustMessage |
Long |
FKeyOpt |
- |
Key of customer message used in this doc. If this exists, it will exactly match the nKey field of a record in table CustMessage. |
456 |
sDocMessage |
S99 |
Opt |
INVMEMO |
Message to vendor or customer. Free form text. |
456 |
sCustomField1 |
S30 |
Opt |
- |
1st user customizable field |
-56 |
sCustomField2 |
S30 |
Opt |
- |
2nd user customizable field |
-56 |
sCustomField3 |
S30 |
Opt |
- |
3rd user customizable field |
-56 |
sCustomField4 |
S30 |
Opt |
- |
4th user customizable field |
-56 |
sCustomField5 |
S30 |
Opt |
- |
5th user customizable field |
-56 |
sCustomField6 |
S30 |
Opt |
- |
6th user customizable field |
-56 |
sCustomField7 |
S30 |
Opt |
- |
7th user customizable field |
-56 |
sCustomField8 |
S30 |
Opt |
- |
8th user customizable field |
?56 |
dLast |
Date |
Opt |
- |
Last date of payroll period. Used in PayCheck type transactions only. |
?56 |
dFirst |
Date |
Opt |
- |
First date of payroll period. Used in PayCheck type transactions only. |
?56 |
rSickHours |
Doub |
OptDft0 |
- |
Number of sick hours accumulated during this payroll period. Used in PayCheck type transactions only. |
?56 |
rVacHours |
Doub |
OptDft0 |
- |
Number of vacation hours accumulated during this payroll period. Used in PayCheck type transactions only. |
456 |
nOrigKey |
Long |
Req |
TRNSID |
Original key (TRNSID) of this TranDoc as stored in the QB file. This is mainly of interest to IIF developers. Possibly useful for modifying existing transactions. |
Contents of this page
QBooks Office Overview
|
Transaction lines are the individual line items for each of document. Most transaction lines are used to post a dollar amount to a specific account. It could also add or subtract inventory quantities to what's currently in stock, on order, etc. or update A/R, A/P, or payroll information. Transaction lines also exist that do not appear in the user interface. All documents include a 'main' transaction line that does not correspond to a visible line item in the document. Most transactions use only a small subset of the fields listed below. Some fields (nKey, dDate, sTranType, kDoc) exist in every transaction. Some (kAcct, mAmount) almost always exist - but there may be exceptions. Other fields (bToSend, bItemValueAdjust, mWageBase, mYearToDate, ...) may be used in only 1 or 2 types of transactions. A typical transaction will have 7 to 10 fields. |
Fields in record type: TranLine |
Ver |
Field Name |
Type |
Prop |
IIF Name |
Description |
456 |
nKey |
Long |
PKey |
- |
Unique transaction line record identifier. |
456 |
dDate |
Date |
Req |
DATE |
Date on which transaction occurred This will always be identical for the transaction document and all transaction lines that belong to it. For multiple transactions occuring on the same day, order can be determined using the nKey field. |
456 |
sTranType |
S8 |
Req |
TRNSTYPE |
Type of transaction. See list of possible values at beginning of TranDoc record section. |
456 |
kDoc |
Long |
FKeyReq |
- |
Tran doc this tran line belongs to. QB guarantees that the total of all amounts for all transaction lines with the same kDoc number is $0.00. It is impossible for the user to enter multiple transaction lines that do not balance. |
456 |
nLine |
Long |
Req |
SPLID |
Relative line number of this line in doc. Line 0 (same as bDocMain) typically has a different set of fields than the other lines because it contains composite data for the entire document. |
456 |
bDocMain |
Bool |
OptDftF |
- |
Main transaction line for document. This line may have a different set of fields. It acts as an extension of the document and often has totals from other lines - depending on the type of transaction. |
456 |
sDocNum |
S11 |
Opt |
DOCNUM |
Document identifier (check #, invoice #, etc.). Often redundant. |
456 |
kAcct |
Long |
FKeyOpt |
ACCNT |
Key of main account to be debited or credited. The account is not debited or credited if flag bNoPost is true. This flag is used in estimates and purchase orders to mark 'inert' transactions. |
456 |
sAcctType |
S12 |
Opt |
- |
Type of account for kAcct One of: "Bank", "AcctRec", "OthCurrAsset", "FixedAsset", "OthAsset", "AcctPay", "CredCard", "OthCurrLiab", "LongTermLiab", "Equity", "Income", "COGS", "Expense", "OthIncome", "OthExpense", "NonPosting". |
456 |
mAmount |
Curr |
Opt |
AMOUNT |
Dollar amount of tran line. Negative if account is credited - regardless of the type of the account. |
456 |
bNoPost |
Bool |
OptDftF |
- |
T if not to be posted. Applies to PurchOrd, Estimate only. |
456 |
kEntity |
Long |
FKeyOpt |
NAME |
Key of associated Customer, Vendor, Employee, or OtherName |
456 |
sEntityType |
S9 |
Opt |
- |
Type of main entity. One of CustJob, Vendor, Employee, OtherName |
456 |
kEntity2 |
Long |
FKeyOpt |
- |
Key of entity from main doc tran line. This is often useful to know which other CustJob, Vendor, Employee, or OtherName is involved. |
456 |
sEntity2Type |
S9 |
Opt |
- |
Type of secondary entity. One of CustJob, Vendor, Employee, OtherName |
456 |
kClass |
Long |
FKeyOpt |
CLASS |
Key of associated class |
456 |
kItem |
Long |
FKeyOpt |
INVITEM |
Key of inventory item <<< ?types |
456 |
sItemType |
S11 |
Opt |
- |
Type of kItem. One of <<< |
456 |
rItemCount |
Doub |
Opt |
QNTY |
Count of items. For main transaction lines (bDocMain = T), this is the total item count for all line transactions in the document. |
456 |
rUnitPrice |
Doub |
Opt |
PRICE |
Either wholesale cost or retail price per unit - depending on transaction type. For purchases, this is the wholesale cost. For sales / invoices, this is the retail price. |
456 |
mDebitCOGS |
Curr |
Opt |
- |
Amount to credit inventory and debit COGS. Transaction lines that move inventory dollars from the inventory asset account to the cost of goods account are not stored separately. Whenever this occurs, the dollar amount of the transfer will be in this field - attached to the transaction line that initiated the transfer. |
456 |
kAcctAsset |
Long |
Opt |
- |
Inventory asset account to credit |
456 |
kAcctCOGS |
Long |
Opt |
- |
Inventory COGS account to debit |
456 |
bItemValueAdjust |
Bool |
OptDftF |
VALDAJ |
T if mAmount is an inventory value adjustment - as opposed to an inventory count adjustment. Only used with transaction type InvAdjst. |
456 |
rCountMisc |
Doub |
Opt |
- |
Miscellaneous count Meaning depends on transaction type. For example, on a Purchase Order main line, it's the total item count received so far. On other than a main line, it's the count of that item that has not yet been received. |
456 |
dDue |
Date |
Opt |
DUEDATE |
Exact meaning varies with tran type - but generally the date due. Used mainly with bills and invoices. |
456 |
dShip |
Date |
Opt |
SHIPDATE |
Exact meaning varies with tran type - but generally the date shipped or last shipped. For receivable and payable transactions - this is usually the date paid. |
456 |
bPaid |
Bool |
OptDftF |
PAID |
T if document has been paid in full. Invoices, vendor bills, and sales tax payments only. Does not exist if the invoice, vendor bill, or tax payment has only been partially paid. |
456 |
mBalanceDue |
Curr |
Opt |
- |
Partial amount due on a bill or invoice. If bPaid is False and this field exists, the amount in this field is what is still owed on the bill or invoice. |
456 |
bReceived |
Bool |
OptDftF |
- |
T if line item has been received or (if main of PurchOrd) all items have been received. |
456 |
kPayMeth |
Long |
FKeyOpt |
PAYMETH |
Key of customer payment method |
456 |
bCleared |
Bool |
OptDftF |
CLEAR |
T if check has cleared bank. This sometimes also occurs in other transaction types. In these cases, we don't know if it has meaning or contains random uninitialized data. |
456 |
bTaxable |
Bool |
OptDftF |
TAXABLE |
T if sales tax is applicable for this line item. This will be true even in purchase orders where sales tax is not being paid if the item itself is taxable - which should be ignored. |
456 |
bAutoTax |
Bool |
OptDftF |
EXTRA |
T if this is an automatically generated sales tax item - using the rate for the tax item at the time generated. If the transaction line in which this occurs has no mAmount field - the sales tax was not charged and this line should be ignored. |
456 |
bToPrint |
Bool |
OptDftF |
TOPRINT |
T if document is in print queue - waiting to be printed |
456 |
bToSend |
Bool |
OptDftF |
- |
T if line item is awaiting online transmittal |
456 |
kPayItem |
Long |
FKeyOpt |
PAYITEM |
Key of payroll item used in calculation. Payroll only. |
456 |
sPayItemType |
S13 |
Opt |
- |
Type of pay item for kPayItem. One of ... |
456 |
mWageBase |
Curr |
Opt |
WAGEBASE |
Current wages or earnings used in calculation. Payroll only. |
456 |
mYearToDate |
Curr |
Opt |
YEAR- |
YTD amount used in calculation. Payroll only. |
456 |
sMemo |
Memo |
Opt |
MEMO |
Memo text. This can be either data the user entered, or data entered by QuickBooks. If entered by QuickBooks, matching the exact text in code can be useful for determining why the transaction was created - such as for opening balances or condensed transactions. |
456 |
dCustomDate |
Date |
Opt |
SERVICE- |
Single user defined date field |
456 |
sCustomField1 |
S30 |
Opt |
- |
1st user defined string field |
456 |
sCustomField2 |
S30 |
Opt |
- |
2nd user defined string field |
-56 |
sCustomField3 |
S30 |
Opt |
- |
3rd user defined string field |
-56 |
sCustomField4 |
S30 |
Opt |
- |
4th user defined string field |
-56 |
sCustomField5 |
S30 |
Opt |
- |
5th user defined string field |
-56 |
sCustomField6 |
S30 |
Opt |
- |
6th user defined string field |
456 |
kNextTran |
Long |
FKeyOpt |
EXTRA |
Key of the transaction that follows this. If this field doesn't exist, this is the last transaction in the chain. |
456 |
nOrigKey |
Long |
Req |
TRNSID |
Original key (reference) from this record in the QuickBooks file. This field was added in case it is required in IIF import files. |
Contents of this page
QBooks Office Overview
|
Memorized transaction documents are clones of previously entered documents that may be reused in the future. There are strictly a data entry convenience and have no effect or relationship with transactions or other record types currently in the file.
Each memorized transaction document also contains a set of transaction lines. We do not currently extract them - although we could if there is sufficient demand. |
Fields in record type: MemDoc |
Ver |
Field Name |
Type |
Prop |
IIF Name |
Description |
45- |
nKey |
Long |
PKey |
- |
Unique memorized document record identifier |
45- |
sName |
S31 |
Req |
- |
Name of this memorized document. Normally the name of the recipient of the transaction. |
45- |
kAcctSource |
Long |
FKeyOpt |
- |
Key of account used as the source of funds for this transaction. Normally, a bank account. |
45- |
sTranType |
S8 |
Opt |
- |
Type of transaction. See list of transaction types. This field is optional (unlike occurrences of sTranType in other records). |
45- |
mAmount |
Curr |
Opt |
- |
Total dollar amount of memorized transaction. |
45- |
dNext |
Date |
Opt |
- |
Scheduled date of the next transaction |
45- |
dSubsequent |
Date |
Opt |
- |
Scheduled data of transaction following the next transaction. |
45- |
nNumbRemaining |
Long |
Opt |
- |
Count of documents not generated yet. Applies only to documents regenerated on a regular basis - such as loan payments. |
45- |
sRemindFreq |
S13 |
Opt |
- |
How often user should be reminded. One of "Daily", "Weekly", "Every2Weeks", "TwiceMonthly", "Every4Weeks", "Monthly", "Quarterly", "TwiceAnnually", or "Annually". |
45- |
nDaysInAdvance |
Long |
Opt |
- |
Count of days in advance to enter this document |
45- |
bInGroup |
Bool |
OptDftF |
- |
T if this is a component of a group. When a memorized transaction is part of a group, QB enters all transactions as a single operation. |
45- |
bIsGroup |
Bool |
OptDftF |
- |
T if this is a group (header) for memorized transactions |
45- |
bAutoEnter |
Bool |
OptDftF |
- |
T if this should be automatically entered as a transaction by QB when the transaction is due. |