conductor-node 0.4.0 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -2
- package/dist/src/BaseClient.d.ts +1 -1
- package/dist/src/BaseClient.js +4 -4
- package/dist/src/qbd/ClientQBD.d.ts +103 -48
- package/dist/src/qbd/ClientQBD.js +111 -184
- package/dist/src/qbd/qbdTypes.d.ts +886 -749
- package/package.json +1 -1
|
@@ -1,22 +1,3 @@
|
|
|
1
|
-
interface ParentRef {
|
|
2
|
-
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
3
|
-
ListID?: string;
|
|
4
|
-
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
5
|
-
FullName?: string;
|
|
6
|
-
}
|
|
7
|
-
declare type AccountType = "AccountsPayable" | "AccountsReceivable" | "Bank" | "CostOfGoodsSold" | "CreditCard" | "Equity" | "Expense" | "FixedAsset" | "Income" | "LongTermLiability" | "NonPosting" | "OtherAsset" | "OtherCurrentAsset" | "OtherCurrentLiability" | "OtherExpense" | "OtherIncome";
|
|
8
|
-
interface SalesTaxCodeRef {
|
|
9
|
-
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
10
|
-
ListID?: string;
|
|
11
|
-
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
12
|
-
FullName?: string;
|
|
13
|
-
}
|
|
14
|
-
interface CurrencyRef {
|
|
15
|
-
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
16
|
-
ListID?: string;
|
|
17
|
-
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
18
|
-
FullName?: string;
|
|
19
|
-
}
|
|
20
1
|
interface AccountAdd {
|
|
21
2
|
/** The case-insensitive name of a list object, not including the names of its ancestors. `Name` must be unique, unless it is the `Name` of a “hierarchical” list object. List objects in different hierarchies can have duplicate names because their `FullNames` will still be unique. For example, two objects could both have the `Name` kitchen, but they could have unique `FullNames`, such as Job12:kitchen and Baker:kitchen.
|
|
22
3
|
|
|
@@ -62,111 +43,20 @@ export interface AccountAddRq {
|
|
|
62
43
|
Notice that if you want to return custom data or private data extensions, you must specify the `DataExtRet` element and you must supply the `OwnerID` set to either a value of 0 (custom data) or the GUID for the private data. */
|
|
63
44
|
IncludeRetElement?: string[] | string;
|
|
64
45
|
}
|
|
65
|
-
declare type SpecialAccountType = "AccountsPayable" | "AccountsReceivable" | "CondenseItemAdjustmentExpenses" | "CostOfGoodsSold" | "DirectDepositLiabilities" | "Estimates" | "ExchangeGainLoss" | "InventoryAssets" | "ItemReceiptAccount" | "OpeningBalanceEquity" | "PayrollExpenses" | "PayrollLiabilities" | "PettyCash" | "PurchaseOrders" | "ReconciliationDifferences" | "RetainedEarnings" | "SalesOrders" | "SalesTaxPayable" | "UncategorizedExpenses" | "UncategorizedIncome" | "UndepositedFunds";
|
|
66
|
-
interface TaxLineInfoRet {
|
|
67
|
-
/** An internal representation of the tax line associated with this account. */
|
|
68
|
-
TaxLineID: number;
|
|
69
|
-
/** The name of the tax line associated with this account, as it appears on the tax form. */
|
|
70
|
-
TaxLineName?: string;
|
|
71
|
-
}
|
|
72
|
-
declare type CashFlowClassification = "Financing" | "Investing" | "None" | "NotApplicable" | "Operating";
|
|
73
|
-
declare type DataExtType = "AMTTYPE" | "DATETIMETYPE" | "INTTYPE" | "PERCENTTYPE" | "PRICETYPE" | "QUANTYPE" | "STR255TYPE" | "STR1024TYPE";
|
|
74
|
-
interface DataExtRet {
|
|
75
|
-
/** `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. )
|
|
76
|
-
|
|
77
|
-
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.)
|
|
78
|
-
|
|
79
|
-
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. */
|
|
80
|
-
OwnerID?: string;
|
|
81
|
-
/** 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. */
|
|
82
|
-
DataExtName: string;
|
|
83
|
-
/** The field’s data type, which corresponds to a qbXML data type. In an `IDataExtDefAdd` request object, if this is a custom field, `DataExtType` must be `detSTR255TYPE`. */
|
|
84
|
-
DataExtType: DataExtType;
|
|
85
|
-
/** 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`. */
|
|
86
|
-
DataExtValue: string;
|
|
87
|
-
}
|
|
88
|
-
interface AccountRet {
|
|
89
|
-
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
90
|
-
ListID: string;
|
|
91
|
-
/** Time the object was created. */
|
|
92
|
-
TimeCreated: string;
|
|
93
|
-
/** Time the object was last modified. */
|
|
94
|
-
TimeModified: string;
|
|
95
|
-
/** A number that the server generates and assigns to this object. Every time the object is changed, the server will change its `EditSequence` value. When you try to modify a list object, you must provide its `EditSequence`. The server compares the `EditSequence` you provide with the `EditSequence` in memory to make sure you are dealing with the latest copy of the object. If you are not, the server will reject the request and return an error. Because `EditSequence` is only used to check whether two objects match, there is no reason to interpret its value. */
|
|
96
|
-
EditSequence: string;
|
|
97
|
-
/** The case-insensitive name of a list object, not including the names of its ancestors. `Name` must be unique, unless it is the `Name` of a “hierarchical” list object. List objects in different hierarchies can have duplicate names because their `FullNames` will still be unique. For example, two objects could both have the `Name` kitchen, but they could have unique `FullNames`, such as Job12:kitchen and Baker:kitchen.
|
|
98
|
-
|
|
99
|
-
For built-in currencies, `Name` is the internationally accepted currency name and is not editable. */
|
|
100
|
-
Name: string;
|
|
101
|
-
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
102
|
-
FullName: string;
|
|
103
|
-
/** If `IsActive` is true, this object is currently enabled for use by QuickBooks. The default value is true. */
|
|
104
|
-
IsActive?: boolean;
|
|
105
|
-
/** A reference to the list object that is one level above this one. For example, an inventory item with the `FullName` of `GermanCars`:Mercedes-Benz:`CL500I99AA` might have a parent object with the `FullName` of `GermanCars`:Mercedes-Benz. In a request, if a `ParentRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. */
|
|
106
|
-
ParentRef?: ParentRef;
|
|
107
|
-
/** The number of ancestors. For example, The customer job with `Name` = carpets and `FullName` = Jones:Building2:carpets would have a sublevel of 2. */
|
|
108
|
-
Sublevel: number;
|
|
109
|
-
/** The type of QuickBooks account. You cannot create or modify a non-posting account through the SDK, because QuickBooks creates these accounts behind the scenes. This means that you cannot send an `AccountAdd` request with an `AccountType` of `NonPosting`. */
|
|
110
|
-
AccountType: AccountType;
|
|
111
|
-
/** If `SpecialAccountType` returns a value, then QuickBooks automatically created this account when it was needed. Some special accounts cannot be overridden, because QuickBooks uses them exclusively for special purposes. */
|
|
112
|
-
SpecialAccountType?: SpecialAccountType;
|
|
113
|
-
/** Indicates whether the account is used for tax. */
|
|
114
|
-
IsTaxAccount?: boolean;
|
|
115
|
-
/** Account numbers appear in the QuickBooks chart of accounts, Account fields, and reports and graphs. If the `IsUsingAccountNumber` preference is false (that is, if the QuickBooks user has the account numbers Preference turned off), you can still set account numbers through the SDK, but the numbers will not be visible in the user interface. */
|
|
116
|
-
AccountNumber?: string;
|
|
117
|
-
/** The bank account number or an identifying note about the account. If a `BankNumber` exists in a QuickBooks company file, it will only be returned to applications that have been granted permission to access sensitive data and that are using SDK v2.0 or greater. */
|
|
118
|
-
BankNumber?: string;
|
|
119
|
-
/** A descriptive text field. */
|
|
120
|
-
Desc?: string;
|
|
121
|
-
/** Current balance of this account only (versus `TotalBalance`). Income accounts and balance sheet accounts do not necessarily have balances. */
|
|
122
|
-
Balance?: string;
|
|
123
|
-
/** The balance for this object and all its subordinate objects. For example, the `TotalBalance` for XYZ Bank would be the total of the balances of all its subaccounts (checking, savings, and so on). If XYZ Bank did not have any subaccounts, `TotalBalance` and `Balance` would be the same. */
|
|
124
|
-
TotalBalance?: string;
|
|
125
|
-
/** Each item on a sales form is assigned a sales-tax code that indicates whether the item is taxable or non-taxable, and why. Two general codes, which can be modified but not deleted, appear on the sales-tax code list by default:
|
|
126
|
-
|
|
127
|
-
Non-taxable (`Name` = NON; `Desc` = Non-Taxable; `IsTaxable` = false) Taxable (`Name` = TAX; `Desc` = Taxable; `IsTaxable` = true)
|
|
128
|
-
|
|
129
|
-
A sales-tax code can be deleted only if it is no longer associated with any customer, item, or transaction. If the “Do You Charge Sales Tax?” preference within QuickBooks is set to No, QuickBooks will assign the default non-taxable sales-tax code to all sales.
|
|
130
|
-
|
|
131
|
-
A `SalesTaxCodeRef` aggregate refers to a sales-tax code on the list. In a request, if a `SalesTaxCodeRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. In a Customer message, `SalesTaxCodeRef` refers to the sales-tax code that will be used for items related to this customer. In an `ItemInventory` message, `SalesTaxCodeRef` refers to the type of sales tax that will be charged for this item, if it is a taxable item and if sales tax is set up within QuickBooks. */
|
|
132
|
-
SalesTaxCodeRef?: SalesTaxCodeRef;
|
|
133
|
-
/** If the QuickBooks user has associated a tax form with this company file, they can also associate each account in the company file with a line of that tax form. (To check which tax form, if any, is associated with this company file, do a `CompanyQuery` and check the returned `TaxForm` value.) */
|
|
134
|
-
TaxLineInfoRet?: TaxLineInfoRet;
|
|
135
|
-
/** Indicates how this account is classified for cash flow reporting. If the value is `cfcNone`, the account has not been classified. If the value is `cfcNotApplicable`, the account does not qualify to be classified. (For example, a bank account that tracks cash transactions is not part of a cash flow report.) */
|
|
136
|
-
CashFlowClassification?: CashFlowClassification;
|
|
137
|
-
/** The currency object contains all of the information needed by QuickBooks to display and use. For built-in currencies, the name and currency code values are internationally accepted values and thus are not editable. The comma format is editable, as is the `IsActive` status. For user-defined currencies, every value in the object is editable including name and currency code.
|
|
138
|
-
|
|
139
|
-
When used with `PriceLevels`, the `CurrencyRef` should only be used with “per item” price levels. */
|
|
140
|
-
CurrencyRef?: CurrencyRef;
|
|
141
|
-
/** A list of `IDataExtRet` objects, each of which represents a field that has been added to QuickBooks as a data extension. */
|
|
142
|
-
DataExtRet?: DataExtRet | DataExtRet[];
|
|
143
|
-
}
|
|
144
|
-
interface ErrorRecovery {
|
|
145
|
-
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
146
|
-
ListID?: string;
|
|
147
|
-
/** Refers to the owner of a data extension:
|
|
148
|
-
|
|
149
|
-
If `OwnerID` is 0, this is a public data extension, also known as a custom field. Custom fields appear in the QuickBooks UI. If `OwnerID` is a GUID, for example {6B063959-81B0-4622-85D6-F548C8CCB517}, this field is a private data extension defined by an integrated application. Private data extensions do not appear in the QuickBooks UI.
|
|
150
|
-
|
|
151
|
-
Note that `OwnerID` values are not case-sensitive, meaning that if you enter an `OwnerID` value with lower-case letters, the value will be saved and returned with upper-case letters.
|
|
152
|
-
|
|
153
|
-
When you share a private 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. */
|
|
154
|
-
OwnerID?: string;
|
|
155
|
-
/** QuickBooks generates a unique `TxnID` for each transaction that is added to QuickBooks. A `TxnID` returned from a request can be used to refer to the transaction in subsequent requests.
|
|
156
|
-
|
|
157
|
-
Notice that you cannot supply the `TxnID` of a `TimeTracking` transaction to `TransactionQueryRq` requests. If you do, you get an error stating that no such record could be found, even though the transaction is in QuickBooks. This behavior reflects the behavior in the QuicKBooks UI in the Find window. */
|
|
158
|
-
TxnID?: string;
|
|
159
|
-
/** An identifying number for this transaction. */
|
|
160
|
-
TxnNumber?: number;
|
|
161
|
-
/** A number that the server generates and assigns to this object. Every time the object is changed, the server will change its `EditSequence` value. When you try to modify a list object, you must provide its `EditSequence`. The server compares the `EditSequence` you provide with the `EditSequence` in memory to make sure you are dealing with the latest copy of the object. If you are not, the server will reject the request and return an error. Because `EditSequence` is only used to check whether two objects match, there is no reason to interpret its value. */
|
|
162
|
-
EditSequence?: string;
|
|
163
|
-
/** Allows for the attachment of a user defined GUID value. */
|
|
164
|
-
ExternalGUID?: string;
|
|
165
|
-
}
|
|
166
46
|
export interface AccountAddRs {
|
|
167
47
|
AccountRet?: AccountRet;
|
|
168
48
|
ErrorRecovery?: ErrorRecovery;
|
|
169
49
|
}
|
|
50
|
+
interface AccountFilter {
|
|
51
|
+
/** One or more `ListID` values. Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
52
|
+
ListID?: string[] | string;
|
|
53
|
+
/** A list of one or more `FullName` values. `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
54
|
+
FullName?: string[] | string;
|
|
55
|
+
/** Allows you to filter for data that relates to the specified object and its descendants. */
|
|
56
|
+
ListIDWithChildren?: string;
|
|
57
|
+
/** Allows you to filter for data that relates to the specified object and its descendants. For names that do not have children, `FullNameWithChildren` is exactly the same as `FullName`. */
|
|
58
|
+
FullNameWithChildren?: string;
|
|
59
|
+
}
|
|
170
60
|
interface AccountMod {
|
|
171
61
|
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
172
62
|
ListID: string;
|
|
@@ -220,29 +110,6 @@ export interface AccountModRs {
|
|
|
220
110
|
AccountRet?: AccountRet;
|
|
221
111
|
ErrorRecovery?: ErrorRecovery;
|
|
222
112
|
}
|
|
223
|
-
/** @default: ActiveOnly */
|
|
224
|
-
declare type ActiveStatus = "ActiveOnly" | "All" | "InactiveOnly";
|
|
225
|
-
declare type MatchCriterion = "Contains" | "EndsWith" | "StartsWith";
|
|
226
|
-
interface NameFilter {
|
|
227
|
-
/** The criterion to match. */
|
|
228
|
-
MatchCriterion: MatchCriterion;
|
|
229
|
-
/** The string to match. */
|
|
230
|
-
Name: string;
|
|
231
|
-
}
|
|
232
|
-
interface NameRangeFilter {
|
|
233
|
-
/** The first name or item in the search range. If `FromName` is omitted, the range will begin with first name on the list. */
|
|
234
|
-
FromName?: string;
|
|
235
|
-
/** The final name or item in the search range. If `ToName` is omitted, the range will end with last name on the list. */
|
|
236
|
-
ToName?: string;
|
|
237
|
-
}
|
|
238
|
-
interface CurrencyFilter {
|
|
239
|
-
/** One or more `ListID` values. Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`.
|
|
240
|
-
|
|
241
|
-
A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
242
|
-
ListID?: string[] | string;
|
|
243
|
-
/** A list of one or more `FullName` values. `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
244
|
-
FullName?: string[] | string;
|
|
245
|
-
}
|
|
246
113
|
export interface AccountQueryRq {
|
|
247
114
|
/** One or more `ListID` values. Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`.
|
|
248
115
|
|
|
@@ -284,7 +151,7 @@ export interface AccountQueryRq {
|
|
|
284
151
|
|
|
285
152
|
Notice that if you want to return custom data or private data extensions, you must specify the `DataExtRet` element and you must supply the `OwnerID` set to either a value of 0 (custom data) or the GUID for the private data. */
|
|
286
153
|
IncludeRetElement?: string[] | string;
|
|
287
|
-
/** Zero or more `OwnerID` values. `OwnerID` refers to the owner of a data extension: If `OwnerID` is 0, this is a public data extension, also known as a custom field. Custom fields appear in the QuickBooks UI. If `OwnerID` is a GUID, for example {6B063959-81B0-4622-85D6-F548C8CCB517}
|
|
154
|
+
/** Zero or more `OwnerID` values. `OwnerID` refers to the owner of a data extension: If `OwnerID` is 0, this is a public data extension, also known as a custom field. Custom fields appear in the QuickBooks UI. If `OwnerID` is a GUID, for example `{6B063959-81B0-4622-85D6-F548C8CCB517}`, this field is a private data extension defined by an integrated application. Private data extensions do not appear in the QuickBooks UI.
|
|
288
155
|
|
|
289
156
|
Note that `OwnerID` values are not case-sensitive, meaning that if you enter an `OwnerID` value with lower-case letters, the value will be saved and returned with upper-case letters.
|
|
290
157
|
|
|
@@ -294,12 +161,97 @@ export interface AccountQueryRq {
|
|
|
294
161
|
export interface AccountQueryRs {
|
|
295
162
|
AccountRet?: AccountRet | AccountRet[];
|
|
296
163
|
}
|
|
297
|
-
interface
|
|
164
|
+
interface AccountRef {
|
|
298
165
|
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
299
166
|
ListID?: string;
|
|
300
167
|
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
301
168
|
FullName?: string;
|
|
302
169
|
}
|
|
170
|
+
interface AccountRet {
|
|
171
|
+
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
172
|
+
ListID: string;
|
|
173
|
+
/** Time the object was created. */
|
|
174
|
+
TimeCreated: string;
|
|
175
|
+
/** Time the object was last modified. */
|
|
176
|
+
TimeModified: string;
|
|
177
|
+
/** A number that the server generates and assigns to this object. Every time the object is changed, the server will change its `EditSequence` value. When you try to modify a list object, you must provide its `EditSequence`. The server compares the `EditSequence` you provide with the `EditSequence` in memory to make sure you are dealing with the latest copy of the object. If you are not, the server will reject the request and return an error. Because `EditSequence` is only used to check whether two objects match, there is no reason to interpret its value. */
|
|
178
|
+
EditSequence: string;
|
|
179
|
+
/** The case-insensitive name of a list object, not including the names of its ancestors. `Name` must be unique, unless it is the `Name` of a “hierarchical” list object. List objects in different hierarchies can have duplicate names because their `FullNames` will still be unique. For example, two objects could both have the `Name` kitchen, but they could have unique `FullNames`, such as Job12:kitchen and Baker:kitchen.
|
|
180
|
+
|
|
181
|
+
For built-in currencies, `Name` is the internationally accepted currency name and is not editable. */
|
|
182
|
+
Name: string;
|
|
183
|
+
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
184
|
+
FullName: string;
|
|
185
|
+
/** If `IsActive` is true, this object is currently enabled for use by QuickBooks. The default value is true. */
|
|
186
|
+
IsActive?: boolean;
|
|
187
|
+
/** A reference to the list object that is one level above this one. For example, an inventory item with the `FullName` of `GermanCars`:Mercedes-Benz:`CL500I99AA` might have a parent object with the `FullName` of `GermanCars`:Mercedes-Benz. In a request, if a `ParentRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. */
|
|
188
|
+
ParentRef?: ParentRef;
|
|
189
|
+
/** The number of ancestors. For example, The customer job with `Name` = carpets and `FullName` = Jones:Building2:carpets would have a sublevel of 2. */
|
|
190
|
+
Sublevel: number;
|
|
191
|
+
/** The type of QuickBooks account. You cannot create or modify a non-posting account through the SDK, because QuickBooks creates these accounts behind the scenes. This means that you cannot send an `AccountAdd` request with an `AccountType` of `NonPosting`. */
|
|
192
|
+
AccountType: AccountType;
|
|
193
|
+
/** If `SpecialAccountType` returns a value, then QuickBooks automatically created this account when it was needed. Some special accounts cannot be overridden, because QuickBooks uses them exclusively for special purposes. */
|
|
194
|
+
SpecialAccountType?: SpecialAccountType;
|
|
195
|
+
/** Indicates whether the account is used for tax. */
|
|
196
|
+
IsTaxAccount?: boolean;
|
|
197
|
+
/** Account numbers appear in the QuickBooks chart of accounts, Account fields, and reports and graphs. If the `IsUsingAccountNumber` preference is false (that is, if the QuickBooks user has the account numbers Preference turned off), you can still set account numbers through the SDK, but the numbers will not be visible in the user interface. */
|
|
198
|
+
AccountNumber?: string;
|
|
199
|
+
/** The bank account number or an identifying note about the account. If a `BankNumber` exists in a QuickBooks company file, it will only be returned to applications that have been granted permission to access sensitive data and that are using SDK v2.0 or greater. */
|
|
200
|
+
BankNumber?: string;
|
|
201
|
+
/** A descriptive text field. */
|
|
202
|
+
Desc?: string;
|
|
203
|
+
/** Current balance of this account only (versus `TotalBalance`). Income accounts and balance sheet accounts do not necessarily have balances. */
|
|
204
|
+
Balance?: string;
|
|
205
|
+
/** The balance for this object and all its subordinate objects. For example, the `TotalBalance` for XYZ Bank would be the total of the balances of all its subaccounts (checking, savings, and so on). If XYZ Bank did not have any subaccounts, `TotalBalance` and `Balance` would be the same. */
|
|
206
|
+
TotalBalance?: string;
|
|
207
|
+
/** Each item on a sales form is assigned a sales-tax code that indicates whether the item is taxable or non-taxable, and why. Two general codes, which can be modified but not deleted, appear on the sales-tax code list by default:
|
|
208
|
+
|
|
209
|
+
Non-taxable (`Name` = NON; `Desc` = Non-Taxable; `IsTaxable` = false) Taxable (`Name` = TAX; `Desc` = Taxable; `IsTaxable` = true)
|
|
210
|
+
|
|
211
|
+
A sales-tax code can be deleted only if it is no longer associated with any customer, item, or transaction. If the “Do You Charge Sales Tax?” preference within QuickBooks is set to No, QuickBooks will assign the default non-taxable sales-tax code to all sales.
|
|
212
|
+
|
|
213
|
+
A `SalesTaxCodeRef` aggregate refers to a sales-tax code on the list. In a request, if a `SalesTaxCodeRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. In a Customer message, `SalesTaxCodeRef` refers to the sales-tax code that will be used for items related to this customer. In an `ItemInventory` message, `SalesTaxCodeRef` refers to the type of sales tax that will be charged for this item, if it is a taxable item and if sales tax is set up within QuickBooks. */
|
|
214
|
+
SalesTaxCodeRef?: SalesTaxCodeRef;
|
|
215
|
+
/** If the QuickBooks user has associated a tax form with this company file, they can also associate each account in the company file with a line of that tax form. (To check which tax form, if any, is associated with this company file, do a `CompanyQuery` and check the returned `TaxForm` value.) */
|
|
216
|
+
TaxLineInfoRet?: TaxLineInfoRet;
|
|
217
|
+
/** Indicates how this account is classified for cash flow reporting. If the value is `cfcNone`, the account has not been classified. If the value is `cfcNotApplicable`, the account does not qualify to be classified. (For example, a bank account that tracks cash transactions is not part of a cash flow report.) */
|
|
218
|
+
CashFlowClassification?: CashFlowClassification;
|
|
219
|
+
/** The currency object contains all of the information needed by QuickBooks to display and use. For built-in currencies, the name and currency code values are internationally accepted values and thus are not editable. The comma format is editable, as is the `IsActive` status. For user-defined currencies, every value in the object is editable including name and currency code.
|
|
220
|
+
|
|
221
|
+
When used with `PriceLevels`, the `CurrencyRef` should only be used with “per item” price levels. */
|
|
222
|
+
CurrencyRef?: CurrencyRef;
|
|
223
|
+
/** A list of `IDataExtRet` objects, each of which represents a field that has been added to QuickBooks as a data extension. */
|
|
224
|
+
DataExtRet?: DataExtRet | DataExtRet[];
|
|
225
|
+
}
|
|
226
|
+
declare type AccountType = "AccountsPayable" | "AccountsReceivable" | "Bank" | "CostOfGoodsSold" | "CreditCard" | "Equity" | "Expense" | "FixedAsset" | "Income" | "LongTermLiability" | "NonPosting" | "OtherAsset" | "OtherCurrentAsset" | "OtherCurrentLiability" | "OtherExpense" | "OtherIncome";
|
|
227
|
+
declare type AccrualPeriod = "BeginningOfYear" | "EveryHourOnPaycheck" | "EveryPaycheck";
|
|
228
|
+
/** @default: ActiveOnly */
|
|
229
|
+
declare type ActiveStatus = "ActiveOnly" | "All" | "InactiveOnly";
|
|
230
|
+
interface AdditionalContactRef {
|
|
231
|
+
/** The name of the contact. */
|
|
232
|
+
ContactName: string;
|
|
233
|
+
/** The value of the contact field. */
|
|
234
|
+
ContactValue: string;
|
|
235
|
+
}
|
|
236
|
+
interface AdditionalNotes {
|
|
237
|
+
/** In a `BillAddress` or `ShipAddress` aggregate, the `Note` field value is written at the bottom of the address in the form in which it appears, such as the invoice form. */
|
|
238
|
+
Note: string;
|
|
239
|
+
}
|
|
240
|
+
interface AdditionalNotesMod {
|
|
241
|
+
/** The ID of the note. */
|
|
242
|
+
NoteID: number;
|
|
243
|
+
/** In a `BillAddress` or `ShipAddress` aggregate, the `Note` field value is written at the bottom of the address in the form in which it appears, such as the invoice form. */
|
|
244
|
+
Note: string;
|
|
245
|
+
}
|
|
246
|
+
interface AdditionalNotesRet {
|
|
247
|
+
/** The ID of the note. */
|
|
248
|
+
NoteID: number;
|
|
249
|
+
/** The date the note was updated. */
|
|
250
|
+
Date: string;
|
|
251
|
+
/** In a `BillAddress` or `ShipAddress` aggregate, the `Note` field value is written at the bottom of the address in the form in which it appears, such as the invoice form. */
|
|
252
|
+
Note: string;
|
|
253
|
+
}
|
|
254
|
+
declare type BillableStatus = "Billable" | "HasBeenBilled" | "NotBillable";
|
|
303
255
|
interface BillAddress {
|
|
304
256
|
/** The first line of an address. */
|
|
305
257
|
Addr1?: string;
|
|
@@ -322,7 +274,7 @@ interface BillAddress {
|
|
|
322
274
|
/** In a `BillAddress` or `ShipAddress` aggregate, the `Note` field value is written at the bottom of the address in the form in which it appears, such as the invoice form. */
|
|
323
275
|
Note?: string;
|
|
324
276
|
}
|
|
325
|
-
interface
|
|
277
|
+
interface BillAddressBlock {
|
|
326
278
|
/** The first line of an address. */
|
|
327
279
|
Addr1?: string;
|
|
328
280
|
/** The second line of an address (if a second line is needed). */
|
|
@@ -333,48 +285,29 @@ interface ShipAddress {
|
|
|
333
285
|
Addr4?: string;
|
|
334
286
|
/** The fifth line of an address (if a fifth line is needed). */
|
|
335
287
|
Addr5?: string;
|
|
336
|
-
/** The city name in an address. */
|
|
337
|
-
City?: string;
|
|
338
|
-
/** The state name in an address. */
|
|
339
|
-
State?: string;
|
|
340
|
-
/** The postal code in an address. */
|
|
341
|
-
PostalCode?: string;
|
|
342
|
-
/** The country name in an address, or, in returned Host information (`HostRet` or `HostInfo`), the country for which this edition of QuickBooks was designed. (Possible values are US, CA, UK, and AU.) */
|
|
343
|
-
Country?: string;
|
|
344
|
-
/** In a `BillAddress` or `ShipAddress` aggregate, the `Note` field value is written at the bottom of the address in the form in which it appears, such as the invoice form. */
|
|
345
|
-
Note?: string;
|
|
346
288
|
}
|
|
347
|
-
interface
|
|
348
|
-
/**
|
|
349
|
-
|
|
350
|
-
/** The
|
|
351
|
-
|
|
352
|
-
/** The second line of an address (if a second line is needed). */
|
|
353
|
-
Addr2?: string;
|
|
354
|
-
/** The third line of an address (if a third line is needed). */
|
|
355
|
-
Addr3?: string;
|
|
356
|
-
/** The fourth line of an address (if a fourth line is needed). */
|
|
357
|
-
Addr4?: string;
|
|
358
|
-
/** The fifth line of an address (if a fifth line is needed). */
|
|
359
|
-
Addr5?: string;
|
|
360
|
-
/** The city name in an address. */
|
|
361
|
-
City?: string;
|
|
362
|
-
/** The state name in an address. */
|
|
363
|
-
State?: string;
|
|
364
|
-
/** The postal code in an address. */
|
|
365
|
-
PostalCode?: string;
|
|
366
|
-
/** The country name in an address, or, in returned Host information (`HostRet` or `HostInfo`), the country for which this edition of QuickBooks was designed. (Possible values are US, CA, UK, and AU.) */
|
|
367
|
-
Country?: string;
|
|
368
|
-
/** In a `BillAddress` or `ShipAddress` aggregate, the `Note` field value is written at the bottom of the address in the form in which it appears, such as the invoice form. */
|
|
369
|
-
Note?: string;
|
|
370
|
-
/** Flag that address is the default ship to address. */
|
|
371
|
-
DefaultShipTo?: boolean;
|
|
289
|
+
interface BillingRateRef {
|
|
290
|
+
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
291
|
+
ListID?: string;
|
|
292
|
+
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
293
|
+
FullName?: string;
|
|
372
294
|
}
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
295
|
+
declare type CashFlowClassification = "Financing" | "Investing" | "None" | "NotApplicable" | "Operating";
|
|
296
|
+
interface ClassFilter {
|
|
297
|
+
/** One or more `ListID` values. Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
298
|
+
ListID?: string[] | string;
|
|
299
|
+
/** A list of one or more `FullName` values. `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
300
|
+
FullName?: string[] | string;
|
|
301
|
+
/** Allows you to filter for data that relates to the specified object and its descendants. */
|
|
302
|
+
ListIDWithChildren?: string;
|
|
303
|
+
/** Allows you to filter for data that relates to the specified object and its descendants. For names that do not have children, `FullNameWithChildren` is exactly the same as `FullName`. */
|
|
304
|
+
FullNameWithChildren?: string;
|
|
305
|
+
}
|
|
306
|
+
interface ClassRef {
|
|
307
|
+
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
308
|
+
ListID?: string;
|
|
309
|
+
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
310
|
+
FullName?: string;
|
|
378
311
|
}
|
|
379
312
|
interface Contacts {
|
|
380
313
|
/** A formal reference, such as Mr. or Dr., that precedes a name. */
|
|
@@ -390,37 +323,47 @@ interface Contacts {
|
|
|
390
323
|
/** List of additional contacts. */
|
|
391
324
|
AdditionalContactRef?: AdditionalContactRef | AdditionalContactRef[];
|
|
392
325
|
}
|
|
393
|
-
interface
|
|
394
|
-
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
395
|
-
ListID?: string;
|
|
396
|
-
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
397
|
-
FullName?: string;
|
|
398
|
-
}
|
|
399
|
-
interface TermsRef {
|
|
400
|
-
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
401
|
-
ListID?: string;
|
|
402
|
-
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
403
|
-
FullName?: string;
|
|
404
|
-
}
|
|
405
|
-
interface SalesRepRef {
|
|
406
|
-
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
407
|
-
ListID?: string;
|
|
408
|
-
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
409
|
-
FullName?: string;
|
|
410
|
-
}
|
|
411
|
-
interface ItemSalesTaxRef {
|
|
326
|
+
interface ContactsMod {
|
|
412
327
|
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
413
|
-
ListID
|
|
414
|
-
/**
|
|
415
|
-
|
|
328
|
+
ListID: string;
|
|
329
|
+
/** A number that the server generates and assigns to this object. Every time the object is changed, the server will change its `EditSequence` value. When you try to modify a list object, you must provide its `EditSequence`. The server compares the `EditSequence` you provide with the `EditSequence` in memory to make sure you are dealing with the latest copy of the object. If you are not, the server will reject the request and return an error. Because `EditSequence` is only used to check whether two objects match, there is no reason to interpret its value. */
|
|
330
|
+
EditSequence: string;
|
|
331
|
+
/** A formal reference, such as Mr. or Dr., that precedes a name. */
|
|
332
|
+
Salutation?: string;
|
|
333
|
+
/** The first name of a customer, vendor, employee, or person on the “other names” list. */
|
|
334
|
+
FirstName: string;
|
|
335
|
+
/** The middle name of a customer, vendor, employee, or person on the “other names” list. */
|
|
336
|
+
MiddleName?: string;
|
|
337
|
+
/** The last name of a customer, vendor, employee, or person on the “other names” list. */
|
|
338
|
+
LastName?: string;
|
|
339
|
+
/** The job title of a customer, vendor, employee, or person on the “other names” list. */
|
|
340
|
+
JobTitle?: string;
|
|
341
|
+
/** List of additional contacts. */
|
|
342
|
+
AdditionalContactRef?: AdditionalContactRef | AdditionalContactRef[];
|
|
416
343
|
}
|
|
417
|
-
|
|
418
|
-
declare type SalesTaxCountry = "Australia" | "Canada" | "UK" | "US";
|
|
419
|
-
interface PreferredPaymentMethodRef {
|
|
344
|
+
interface ContactsRet {
|
|
420
345
|
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
421
|
-
ListID
|
|
422
|
-
/**
|
|
423
|
-
|
|
346
|
+
ListID: string;
|
|
347
|
+
/** Time the object was created. */
|
|
348
|
+
TimeCreated: string;
|
|
349
|
+
/** Time the object was last modified. */
|
|
350
|
+
TimeModified: string;
|
|
351
|
+
/** A number that the server generates and assigns to this object. Every time the object is changed, the server will change its `EditSequence` value. When you try to modify a list object, you must provide its `EditSequence`. The server compares the `EditSequence` you provide with the `EditSequence` in memory to make sure you are dealing with the latest copy of the object. If you are not, the server will reject the request and return an error. Because `EditSequence` is only used to check whether two objects match, there is no reason to interpret its value. */
|
|
352
|
+
EditSequence: string;
|
|
353
|
+
/** The name of a contact person for a customer or vendor. */
|
|
354
|
+
Contact?: string;
|
|
355
|
+
/** A formal reference, such as Mr. or Dr., that precedes a name. */
|
|
356
|
+
Salutation?: string;
|
|
357
|
+
/** The first name of a customer, vendor, employee, or person on the “other names” list. */
|
|
358
|
+
FirstName: string;
|
|
359
|
+
/** The middle name of a customer, vendor, employee, or person on the “other names” list. */
|
|
360
|
+
MiddleName?: string;
|
|
361
|
+
/** The last name of a customer, vendor, employee, or person on the “other names” list. */
|
|
362
|
+
LastName?: string;
|
|
363
|
+
/** The job title of a customer, vendor, employee, or person on the “other names” list. */
|
|
364
|
+
JobTitle?: string;
|
|
365
|
+
/** List of additional contacts. */
|
|
366
|
+
AdditionalContactRef?: AdditionalContactRef | AdditionalContactRef[];
|
|
424
367
|
}
|
|
425
368
|
interface CreditCardInfo {
|
|
426
369
|
/** Credit-card number for this customer or this payment. Beginning with qbXML spec 6.0 and QuickBooks 2007, you must mask the credit card number with lower case “x” and no dashes. For example, xxxxxxxxxxxx1234. */
|
|
@@ -436,21 +379,15 @@ interface CreditCardInfo {
|
|
|
436
379
|
/** The postal code associated with the address for this credit card. */
|
|
437
380
|
CreditCardPostalCode?: string;
|
|
438
381
|
}
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
ListID?: string;
|
|
444
|
-
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
445
|
-
FullName?: string;
|
|
446
|
-
}
|
|
447
|
-
interface AdditionalNotes {
|
|
448
|
-
/** In a `BillAddress` or `ShipAddress` aggregate, the `Note` field value is written at the bottom of the address in the form in which it appears, such as the invoice form. */
|
|
449
|
-
Note: string;
|
|
382
|
+
interface CurrencyFilter {
|
|
383
|
+
/** One or more `ListID` values. Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`.
|
|
384
|
+
|
|
385
|
+
A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
386
|
+
ListID?: string[] | string;
|
|
387
|
+
/** A list of one or more `FullName` values. `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
388
|
+
FullName?: string[] | string;
|
|
450
389
|
}
|
|
451
|
-
|
|
452
|
-
declare type PreferredDeliveryMethod = "Email" | "Fax" | "None";
|
|
453
|
-
interface PriceLevelRef {
|
|
390
|
+
interface CurrencyRef {
|
|
454
391
|
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
455
392
|
ListID?: string;
|
|
456
393
|
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
@@ -559,83 +496,23 @@ export interface CustomerAddRq {
|
|
|
559
496
|
/** You use this if you want to limit the data that will be returned in the response. In this list, you specify the name of each top-level element or aggregate that you want to be returned in the response to the request. You cannot specify fields within an aggregate, for example, you cannot specify a `City` within an Address: you must specify Address and will get the entire address. The names specified in the list are not parsed, so you must be especially careful to supply valid names, properly cased. No error is returned in the status code if you specify an invalid name. Notice that if you want to return custom data or private data extensions, you must specify the `DataExtRet` element and you must supply the `OwnerID` set to either a value of 0 (custom data) or the GUID for the private data. */
|
|
560
497
|
IncludeRetElement?: string[] | string;
|
|
561
498
|
}
|
|
562
|
-
interface
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
/** The second line of an address (if a second line is needed). */
|
|
566
|
-
Addr2?: string;
|
|
567
|
-
/** The third line of an address (if a third line is needed). */
|
|
568
|
-
Addr3?: string;
|
|
569
|
-
/** The fourth line of an address (if a fourth line is needed). */
|
|
570
|
-
Addr4?: string;
|
|
571
|
-
/** The fifth line of an address (if a fifth line is needed). */
|
|
572
|
-
Addr5?: string;
|
|
573
|
-
}
|
|
574
|
-
interface ShipAddressBlock {
|
|
575
|
-
/** The first line of an address. */
|
|
576
|
-
Addr1?: string;
|
|
577
|
-
/** The second line of an address (if a second line is needed). */
|
|
578
|
-
Addr2?: string;
|
|
579
|
-
/** The third line of an address (if a third line is needed). */
|
|
580
|
-
Addr3?: string;
|
|
581
|
-
/** The fourth line of an address (if a fourth line is needed). */
|
|
582
|
-
Addr4?: string;
|
|
583
|
-
/** The fifth line of an address (if a fifth line is needed). */
|
|
584
|
-
Addr5?: string;
|
|
585
|
-
}
|
|
586
|
-
interface ContactsRet {
|
|
587
|
-
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
588
|
-
ListID: string;
|
|
589
|
-
/** Time the object was created. */
|
|
590
|
-
TimeCreated: string;
|
|
591
|
-
/** Time the object was last modified. */
|
|
592
|
-
TimeModified: string;
|
|
593
|
-
/** A number that the server generates and assigns to this object. Every time the object is changed, the server will change its `EditSequence` value. When you try to modify a list object, you must provide its `EditSequence`. The server compares the `EditSequence` you provide with the `EditSequence` in memory to make sure you are dealing with the latest copy of the object. If you are not, the server will reject the request and return an error. Because `EditSequence` is only used to check whether two objects match, there is no reason to interpret its value. */
|
|
594
|
-
EditSequence: string;
|
|
595
|
-
/** The name of a contact person for a customer or vendor. */
|
|
596
|
-
Contact?: string;
|
|
597
|
-
/** A formal reference, such as Mr. or Dr., that precedes a name. */
|
|
598
|
-
Salutation?: string;
|
|
599
|
-
/** The first name of a customer, vendor, employee, or person on the “other names” list. */
|
|
600
|
-
FirstName: string;
|
|
601
|
-
/** The middle name of a customer, vendor, employee, or person on the “other names” list. */
|
|
602
|
-
MiddleName?: string;
|
|
603
|
-
/** The last name of a customer, vendor, employee, or person on the “other names” list. */
|
|
604
|
-
LastName?: string;
|
|
605
|
-
/** The job title of a customer, vendor, employee, or person on the “other names” list. */
|
|
606
|
-
JobTitle?: string;
|
|
607
|
-
/** List of additional contacts. */
|
|
608
|
-
AdditionalContactRef?: AdditionalContactRef | AdditionalContactRef[];
|
|
609
|
-
}
|
|
610
|
-
interface AdditionalNotesRet {
|
|
611
|
-
/** The ID of the note. */
|
|
612
|
-
NoteID: number;
|
|
613
|
-
/** The date the note was updated. */
|
|
614
|
-
Date: string;
|
|
615
|
-
/** In a `BillAddress` or `ShipAddress` aggregate, the `Note` field value is written at the bottom of the address in the form in which it appears, such as the invoice form. */
|
|
616
|
-
Note: string;
|
|
499
|
+
export interface CustomerAddRs {
|
|
500
|
+
CustomerRet?: CustomerRet;
|
|
501
|
+
ErrorRecovery?: ErrorRecovery;
|
|
617
502
|
}
|
|
618
|
-
interface
|
|
503
|
+
interface CustomerMod {
|
|
619
504
|
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
620
505
|
ListID: string;
|
|
621
|
-
/** Time the object was created. */
|
|
622
|
-
TimeCreated: string;
|
|
623
|
-
/** Time the object was last modified. */
|
|
624
|
-
TimeModified: string;
|
|
625
506
|
/** A number that the server generates and assigns to this object. Every time the object is changed, the server will change its `EditSequence` value. When you try to modify a list object, you must provide its `EditSequence`. The server compares the `EditSequence` you provide with the `EditSequence` in memory to make sure you are dealing with the latest copy of the object. If you are not, the server will reject the request and return an error. Because `EditSequence` is only used to check whether two objects match, there is no reason to interpret its value. */
|
|
626
507
|
EditSequence: string;
|
|
627
508
|
/** The case-insensitive name of a list object, not including the names of its ancestors. `Name` must be unique, unless it is the `Name` of a “hierarchical” list object. List objects in different hierarchies can have duplicate names because their `FullNames` will still be unique. For example, two objects could both have the `Name` kitchen, but they could have unique `FullNames`, such as Job12:kitchen and Baker:kitchen. For built-in currencies, `Name` is the internationally accepted currency name and is not editable. */
|
|
628
|
-
Name
|
|
629
|
-
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
630
|
-
FullName: string;
|
|
509
|
+
Name?: string;
|
|
631
510
|
/** If `IsActive` is true, this object is currently enabled for use by QuickBooks. The default value is true. */
|
|
632
511
|
IsActive?: boolean;
|
|
633
512
|
/** Classes can be used to separate transactions into meaningful categories. (For example, transactions could be classified according to department, business location, or type of work.) In QuickBooks, class tracking is off by default. A `ClassRef` aggregate refers to one of these named classes. For example, in a `TimeTracking` message, `ClassRef` refers to the QuickBooks class into which the timed activity falls. If a `ClassRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. In an `InvoiceAdd` request, if you specify a `ClassRef` for the whole invoice, that same `ClassRef` is automatically used in the line items. If you want to clear that (that is, have NO `ClassRef` for the line item, you can clear it in the line item by simply not specifying it in the line item. */
|
|
634
513
|
ClassRef?: ClassRef;
|
|
635
514
|
/** A reference to the list object that is one level above this one. For example, an inventory item with the `FullName` of `GermanCars`:Mercedes-Benz:`CL500I99AA` might have a parent object with the `FullName` of `GermanCars`:Mercedes-Benz.In a request, if a `ParentRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. */
|
|
636
515
|
ParentRef?: ParentRef;
|
|
637
|
-
/** The number of ancestors. For example, The customer job with `Name` = carpets and `FullName` = Jones:Building2:carpets would have a sublevel of 2. */
|
|
638
|
-
Sublevel: number;
|
|
639
516
|
/** The name of the QuickBooks user’s business, as specified in QuickBooks. `CompanyName` and Address are used on invoices, checks, and other forms. (`LegalCompanyName` and `LegalAddress`, on the other hand, are used on a company’s tax forms and pay stubs.) */
|
|
640
517
|
CompanyName?: string;
|
|
641
518
|
/** A formal reference, such as Mr. or Dr., that precedes a name. */
|
|
@@ -650,12 +527,8 @@ interface CustomerRet {
|
|
|
650
527
|
JobTitle?: string;
|
|
651
528
|
/** Whatever address you specify in this aggregate must not result in an address greater than 5 lines, otherwise you’ll get a runtime error, because QuickBooks doesn’t support addresses more than 5 lines. There are two ways to specify an address within this aggregate: Using `Addr1` through `Addr3` along with the other possible aggregate elements, such as `City`, `State`, Postalcode.Using `Addr1`, `Addr2`, `Addr3`, `Addr4`, and `Addr5` to fully specify the address. If you use this so called “address block” approach, you cannot use any other address elements, such as `City`, `State`, etc. (Note: this approach is not valid for `EmployeeAdd`/Mod/Query) If you use the address block approach above, the lines `Addr1`…`Addr5` are each printed as a separate line on the transaction, and the values are returned in the Ret object under the aggregate `ShipAddressBlock` or `BillAddressBlock`. */
|
|
652
529
|
BillAddress?: BillAddress;
|
|
653
|
-
/** The address expressed as an address block of `Addr1` through `Addr5`, depending on the number of lines in the original request that created the address. */
|
|
654
|
-
BillAddressBlock?: BillAddressBlock;
|
|
655
530
|
/** Whatever address you specify in this aggregate must not result in an address greater than 5 lines, otherwise you’ll get a runtime error, because QuickBooks doesn’t support addresses more than 5 lines. There are two ways to specify an address within this aggregate: Using `Addr1` through `Addr3` along with the other possible aggregate elements, such as `City`, `State`, Postalcode.Using `Addr1`, `Addr2`, `Addr3`, `Addr4`, and `Addr5` to fully specify the address. If you use this so called “address block” approach, you cannot use any other address elements, such as `City`, `State`, etc. (Note: this approach is not valid for `EmployeeAdd`/Mod/Query) If you use the address block approach above, the lines `Addr1`…`Addr5` are each printed as a separate line on the transaction, and the values are returned in the Ret object under the aggregate `ShipAddressBlock` or `BillAddressBlock`. */
|
|
656
531
|
ShipAddress?: ShipAddress;
|
|
657
|
-
/** The address expressed as an address block of `Addr1` through `Addr5`, depending on the number of lines in the original request that created the address. */
|
|
658
|
-
ShipAddressBlock?: ShipAddressBlock;
|
|
659
532
|
/** List of ship to addresses. */
|
|
660
533
|
ShipToAddress?: ShipToAddress | ShipToAddress[];
|
|
661
534
|
/** The telephone number. */
|
|
@@ -675,17 +548,13 @@ interface CustomerRet {
|
|
|
675
548
|
/** List of additional contacts. */
|
|
676
549
|
AdditionalContactRef?: AdditionalContactRef | AdditionalContactRef[];
|
|
677
550
|
/** A list of contact records. */
|
|
678
|
-
|
|
551
|
+
ContactsMod?: ContactsMod | ContactsMod[];
|
|
679
552
|
/** Customer types allow business owners to categorize customers in ways that are meaningful for their businesses. For example, a customer type might indicate which industry a customer represents, or which part of the country a customer is in. A `CustomerTypeRef` aggregate refers to one of the types on the `CustomerType` list. In a request, if a `CustomerTypeRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. */
|
|
680
553
|
CustomerTypeRef?: CustomerTypeRef;
|
|
681
554
|
/** Refers to the payment terms associated with this entity. (This will be an item on the `DateDrivenTerms` or `StandardTerms` list.) If a `TermsRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. */
|
|
682
555
|
TermsRef?: TermsRef;
|
|
683
556
|
/** A sales representative must be on the Employee, Vendor, or Other Names list within QuickBooks. Sales representative’s names and initials appear on the Rep drop-down list on QuickBooks sales forms. A `SalesRepRef` refers to a person on the `SalesRep` list. In a request, if a `SalesRepRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. */
|
|
684
557
|
SalesRepRef?: SalesRepRef;
|
|
685
|
-
/** A positive number indicates money owed by the customer. Compare with `TotalBalance`. */
|
|
686
|
-
Balance?: string;
|
|
687
|
-
/** Total balance for this customer, including all this customer’s jobs (subcustomers). A positive number indicates money that the customer owes. If a customer does not have any subcustomers, `TotalBalance` and `Balance` are the same. */
|
|
688
|
-
TotalBalance?: string;
|
|
689
558
|
/** Each item on a sales form is assigned a sales-tax code that indicates whether the item is taxable or non-taxable, and why. Two general codes, which can be modified but not deleted, appear on the sales-tax code list by default:Non-taxable (`Name` = NON; `Desc` = Non-Taxable; `IsTaxable` = false)Taxable (`Name` = TAX; `Desc` = Taxable; `IsTaxable` = true) A sales-tax code can be deleted only if it is no longer associated with any customer, item, or transaction. If the “Do You Charge Sales Tax?” preference within QuickBooks is set to No, QuickBooks will assign the default non-taxable sales-tax code to all sales. A `SalesTaxCodeRef` aggregate refers to a sales-tax code on the list. In a request, if a `SalesTaxCodeRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. In a Customer message, `SalesTaxCodeRef` refers to the sales-tax code that will be used for items related to this customer. In an `ItemInventory` message, `SalesTaxCodeRef` refers to the type of sales tax that will be charged for this item, if it is a taxable item and if sales tax is set up within QuickBooks. */
|
|
690
559
|
SalesTaxCodeRef?: SalesTaxCodeRef;
|
|
691
560
|
/** A sales-tax item is used to calculate a single sales tax that is collected at a specified rate and paid to a single agency. (Compare with the `ItemSalesTaxGroupAdd` message.) An `ItemSalesTaxRef` aggregate refers to an item on this list. In a request, if an `ItemSalesTaxRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. Taxes can be reflected in transaction line items The following information refers to invoices specifically, but it also applies to sales receipts. Generally its best to assign a tax item or tax group item to an invoice and allow QuickBooks to apply the same tax to all taxable items on the invoice. However in some situations multiple tax combinations are required, so this method doesn’t work. In this case one must use techniques to apply the taxes in the invoice itself as line items. Using lines to apply taxes isn’t always straight forward. When applying taxes as line items, only single tax items can be used, tax groups can only be used for the entire invoice. If you have multiple taxes which apply to all taxable items, and one or more other taxes that only apply to some of the items on an invoice its better to use a tax group which applies to the entire invoice for the taxes which applies to all taxable items and then apply the other taxes in the invoice itself. One applies a tax or tax group to an entire invoice by using the `ItemSalesTaxRef` aggregate. One can use subtotals to apply a single tax line to multiple items in an invoice, but the tax is only applied automatically for the first tax line after the subtotal line. Any other tax lines which need to be applied to the subtotal line must supply their own amount. If you don’t supply an amount the amount comes out as zero and the tax line is useless. When one does supply an amount, the amount of tax on the subtotal also shows up in the rate column for that tax line. There isn’t any way for the rate to show up as anything other than the amount of the tax. If you have a complicated tax situation where no single tax applies to all taxable items on the invoice, you must choose a zero percent tax to apply for the entire invoice. It is recommended to name such a tax item “Tax Calculated On Invoice” so that it’s clear that the tax is not being applied by QuickBooks on the entire invoice. */
|
|
@@ -717,61 +586,83 @@ interface CustomerRet {
|
|
|
717
586
|
/** Not supported. */
|
|
718
587
|
Notes?: string;
|
|
719
588
|
/** List of notes. */
|
|
720
|
-
|
|
589
|
+
AdditionalNotesMod?: AdditionalNotesMod | AdditionalNotesMod[];
|
|
721
590
|
/** Preference for how invoices are delivered. */
|
|
722
591
|
PreferredDeliveryMethod?: PreferredDeliveryMethod;
|
|
723
592
|
/** 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` for the item, which was set using the price level. */
|
|
724
593
|
PriceLevelRef?: PriceLevelRef;
|
|
725
|
-
/** Allows for the attachment of a user defined GUID value. */
|
|
726
|
-
ExternalGUID?: string;
|
|
727
594
|
/** The tax registration number used in CA and UK. */
|
|
728
595
|
TaxRegistrationNumber?: string;
|
|
729
596
|
/** The currency object contains all of the information needed by QuickBooks to display and use. For built-in currencies, the name and currency code values are internationally accepted values and thus are not editable. The comma format is editable, as is the `IsActive` status. For user-defined currencies, every value in the object is editable including name and currency code. When used with `PriceLevels`, the `CurrencyRef` should only be used with “per item” price levels. */
|
|
730
597
|
CurrencyRef?: CurrencyRef;
|
|
731
|
-
/** A list of `IDataExtRet` objects, each of which represents a field that has been added to QuickBooks as a data extension. */
|
|
732
|
-
DataExtRet?: DataExtRet | DataExtRet[];
|
|
733
598
|
}
|
|
734
|
-
export interface
|
|
599
|
+
export interface CustomerModRq {
|
|
600
|
+
CustomerMod: CustomerMod;
|
|
601
|
+
/** You use this if you want to limit the data that will be returned in the response. In this list, you specify the name of each top-level element or aggregate that you want to be returned in the response to the request. You cannot specify fields within an aggregate, for example, you cannot specify a `City` within an Address: you must specify Address and will get the entire address. The names specified in the list are not parsed, so you must be especially careful to supply valid names, properly cased. No error is returned in the status code if you specify an invalid name. Notice that if you want to return custom data or private data extensions, you must specify the `DataExtRet` element and you must supply the `OwnerID` set to either a value of 0 (custom data) or the GUID for the private data. */
|
|
602
|
+
IncludeRetElement?: string[] | string;
|
|
603
|
+
}
|
|
604
|
+
export interface CustomerModRs {
|
|
735
605
|
CustomerRet?: CustomerRet;
|
|
736
606
|
ErrorRecovery?: ErrorRecovery;
|
|
737
607
|
}
|
|
738
|
-
interface
|
|
739
|
-
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
740
|
-
ListID
|
|
741
|
-
/** A
|
|
742
|
-
|
|
743
|
-
/**
|
|
744
|
-
|
|
745
|
-
/**
|
|
746
|
-
|
|
747
|
-
/** The
|
|
748
|
-
|
|
749
|
-
/**
|
|
750
|
-
|
|
751
|
-
/**
|
|
752
|
-
|
|
753
|
-
/**
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
/**
|
|
758
|
-
|
|
759
|
-
/**
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
/**
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
608
|
+
export interface CustomerQueryRq {
|
|
609
|
+
/** One or more `ListID` values. Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
610
|
+
ListID?: string[] | string;
|
|
611
|
+
/** A list of one or more `FullName` values. `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
612
|
+
FullName?: string[] | string;
|
|
613
|
+
/** Limits the number of objects that a query returns. (To get a count of how many objects could possibly be returned, use the `metaData` query attribute.) If you include a `MaxReturned` value, it must be at least 1. */
|
|
614
|
+
MaxReturned?: number;
|
|
615
|
+
/** Used in filters to select list objects based on whether or not they are currently enabled for use by QuickBooks. The default value is `asActiveOnly`, which selects only list objects that are active. */
|
|
616
|
+
ActiveStatus?: ActiveStatus;
|
|
617
|
+
/** Selects objects modified on or after this date. See the note below regarding QBFC usage.For desktop versions of QuickBooks, the `FromModifiedDate` and `ToModifiedDate` must be between 1970-01-01 and 2038-01-19T03:14:07 (2038-01-18T19:14:07-08:00 PST). (The time portion of the field was not supported in qbXML version 1.0 or 1.1.) Also, for desktop versions of QuickBooks, if `FromModifiedDate` includes a date but not a time (for example, if you set `FromModifiedDate` to 2003-02-14), the time is assumed to be zero (2003-02-14T00:00:00). If you omit `FromModifiedDate`, it will be set to 1970-01-01T00:00:00 (1969-12-31T16:00:00-08:00 PST).For QBOE, the `FromModifiedDate` and `ToModifiedDate` must be between 1900-01-01T00:00:00 and 9999-12-31T00:00:00. If `FromModifiedDate` includes a date but not a time (for example, if you set `FromModifiedDate` to 2003-02-14), the time is assumed to be zero (2003-02-14T00:00:00). If you omit `FromModifiedDate`, it will be set to 1900-01-01T00:00:00.`Note`: When specifying this in QBFC, you need to supply the parameter `asDateOnly`, which is a Boolean. If `asDateOnly` is true, the date value will be represented as a date only (without a time). If `asDateOnly` is false, the date value will be represented as date and time, padded with zeros if necessary, and set to the beginning of the day if no time is provided. The `asDateOnly` parameter is especially useful in the `ToModifiedDate` field of a query: If `asDateOnly` is set to true in the `ToModifiedDate` field of a query, then the query includes elements modified up to the end of the day. If `asDateOnly` is false, the query includes elements modified up to the specified time (or up to the beginning of the day if no time is included). */
|
|
618
|
+
FromModifiedDate?: string;
|
|
619
|
+
/** Selects objects modified on or before this date. See the note below on QBFC usage.For desktop versions of QuickBooks, the `ToModifiedDate` and `FromModifiedDate` must be between 01/01/1970 and 2038-01-19T03:14:07 (2038-01-18T19:14:07-08:00 PST). (Note that the time portion of the field was not supported in qbXML version 1.0 or 1.1.) If `ToModifiedDate` includes a date but not a time (for example, if you set `ToModifiedDate` to 2003-02-14), the time is assumed to be the end of the day (2003-02-14T23:59:59). If you omit `ToModifiedDate` altogether, it will be set to 2038-01-19T03:14:07 (2038-01-18T19:14:07-08:00 PST).For QBOE, the `ToModifiedDate` and `FromModifiedDate` must be between 01/01/1900 and 9999-12-31T00:00:00. If `ToModifiedDate` includes a date but not a time (for example, if you set `ToModifiedDate` to 2003-02-14), the time is assumed to be the end of the day (2003-02-14T23:59:59). If you omit `ToModifiedDate` altogether, it will be set to 9999-12-31T00:00:00.`Note`: When specifying this in QBFC, you need to supply the parameter `asDateOnly`, which is a Boolean. If `asDateOnly` is true, the date value will be represented as a date only (without a time). If `asDateOnly` is false, the date value will be represented as date and time, padded with zeros if necessary, and set to the beginning of the day if no time is provided. The `asDateOnly` parameter is especially useful in the `ToModifiedDate` field of a query: If `asDateOnly` is set to true in the `ToModifiedDate` field of a query, then the query includes elements modified up to the end of the day. If `asDateOnly` is false, the query includes elements modified up to the specified time (or up to the beginning of the day if no time is included). */
|
|
620
|
+
ToModifiedDate?: string;
|
|
621
|
+
/** Filters according to the object’s `Name`. */
|
|
622
|
+
NameFilter?: NameFilter;
|
|
623
|
+
/** Filters according to the object’s `Name`. */
|
|
624
|
+
NameRangeFilter?: NameRangeFilter;
|
|
625
|
+
/** Filters according to total balance. Total balance includes the balance for all subaccounts; for example, a customer’s `TotalBalance` would include all the jobs for that customer. */
|
|
626
|
+
TotalBalanceFilter?: TotalBalanceFilter;
|
|
627
|
+
/** Filters by the specified currency. */
|
|
628
|
+
CurrencyFilter?: CurrencyFilter;
|
|
629
|
+
/** Filter according to class. */
|
|
630
|
+
ClassFilter?: ClassFilter;
|
|
631
|
+
/** You use this if you want to limit the data that will be returned in the response. In this list, you specify the name of each top-level element or aggregate that you want to be returned in the response to the request. You cannot specify fields within an aggregate, for example, you cannot specify a `City` within an Address: you must specify Address and will get the entire address. The names specified in the list are not parsed, so you must be especially careful to supply valid names, properly cased. No error is returned in the status code if you specify an invalid name. Notice that if you want to return custom data or private data extensions, you must specify the `DataExtRet` element and you must supply the `OwnerID` set to either a value of 0 (custom data) or the GUID for the private data. */
|
|
632
|
+
IncludeRetElement?: string[] | string;
|
|
633
|
+
/** Zero or more `OwnerID` values. `OwnerID` refers to the owner of a data extension:If `OwnerID` is 0, this is a public data extension, also known as a custom field. Custom fields appear in the QuickBooks UI.If `OwnerID` is a GUID, for example `{6B063959-81B0-4622-85D6-F548C8CCB517}`, this field is a private data extension defined by an integrated application. Private data extensions do not appear in the QuickBooks UI. Note that `OwnerID` values are not case-sensitive, meaning that if you enter an `OwnerID` value with lower-case letters, the value will be saved and returned with upper-case letters. When you share a private 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. */
|
|
634
|
+
OwnerID?: string[] | string;
|
|
635
|
+
}
|
|
636
|
+
export interface CustomerQueryRs {
|
|
637
|
+
CustomerRet?: CustomerRet | CustomerRet[];
|
|
638
|
+
}
|
|
639
|
+
interface CustomerRef {
|
|
640
|
+
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
641
|
+
ListID?: string;
|
|
642
|
+
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
643
|
+
FullName?: string;
|
|
644
|
+
}
|
|
645
|
+
interface CustomerRet {
|
|
646
|
+
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
647
|
+
ListID: string;
|
|
648
|
+
/** Time the object was created. */
|
|
649
|
+
TimeCreated: string;
|
|
650
|
+
/** Time the object was last modified. */
|
|
651
|
+
TimeModified: string;
|
|
652
|
+
/** A number that the server generates and assigns to this object. Every time the object is changed, the server will change its `EditSequence` value. When you try to modify a list object, you must provide its `EditSequence`. The server compares the `EditSequence` you provide with the `EditSequence` in memory to make sure you are dealing with the latest copy of the object. If you are not, the server will reject the request and return an error. Because `EditSequence` is only used to check whether two objects match, there is no reason to interpret its value. */
|
|
653
|
+
EditSequence: string;
|
|
767
654
|
/** The case-insensitive name of a list object, not including the names of its ancestors. `Name` must be unique, unless it is the `Name` of a “hierarchical” list object. List objects in different hierarchies can have duplicate names because their `FullNames` will still be unique. For example, two objects could both have the `Name` kitchen, but they could have unique `FullNames`, such as Job12:kitchen and Baker:kitchen. For built-in currencies, `Name` is the internationally accepted currency name and is not editable. */
|
|
768
|
-
Name
|
|
655
|
+
Name: string;
|
|
656
|
+
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
657
|
+
FullName: string;
|
|
769
658
|
/** If `IsActive` is true, this object is currently enabled for use by QuickBooks. The default value is true. */
|
|
770
659
|
IsActive?: boolean;
|
|
771
660
|
/** Classes can be used to separate transactions into meaningful categories. (For example, transactions could be classified according to department, business location, or type of work.) In QuickBooks, class tracking is off by default. A `ClassRef` aggregate refers to one of these named classes. For example, in a `TimeTracking` message, `ClassRef` refers to the QuickBooks class into which the timed activity falls. If a `ClassRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. In an `InvoiceAdd` request, if you specify a `ClassRef` for the whole invoice, that same `ClassRef` is automatically used in the line items. If you want to clear that (that is, have NO `ClassRef` for the line item, you can clear it in the line item by simply not specifying it in the line item. */
|
|
772
661
|
ClassRef?: ClassRef;
|
|
773
662
|
/** A reference to the list object that is one level above this one. For example, an inventory item with the `FullName` of `GermanCars`:Mercedes-Benz:`CL500I99AA` might have a parent object with the `FullName` of `GermanCars`:Mercedes-Benz.In a request, if a `ParentRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. */
|
|
774
663
|
ParentRef?: ParentRef;
|
|
664
|
+
/** The number of ancestors. For example, The customer job with `Name` = carpets and `FullName` = Jones:Building2:carpets would have a sublevel of 2. */
|
|
665
|
+
Sublevel: number;
|
|
775
666
|
/** The name of the QuickBooks user’s business, as specified in QuickBooks. `CompanyName` and Address are used on invoices, checks, and other forms. (`LegalCompanyName` and `LegalAddress`, on the other hand, are used on a company’s tax forms and pay stubs.) */
|
|
776
667
|
CompanyName?: string;
|
|
777
668
|
/** A formal reference, such as Mr. or Dr., that precedes a name. */
|
|
@@ -786,8 +677,12 @@ interface CustomerMod {
|
|
|
786
677
|
JobTitle?: string;
|
|
787
678
|
/** Whatever address you specify in this aggregate must not result in an address greater than 5 lines, otherwise you’ll get a runtime error, because QuickBooks doesn’t support addresses more than 5 lines. There are two ways to specify an address within this aggregate: Using `Addr1` through `Addr3` along with the other possible aggregate elements, such as `City`, `State`, Postalcode.Using `Addr1`, `Addr2`, `Addr3`, `Addr4`, and `Addr5` to fully specify the address. If you use this so called “address block” approach, you cannot use any other address elements, such as `City`, `State`, etc. (Note: this approach is not valid for `EmployeeAdd`/Mod/Query) If you use the address block approach above, the lines `Addr1`…`Addr5` are each printed as a separate line on the transaction, and the values are returned in the Ret object under the aggregate `ShipAddressBlock` or `BillAddressBlock`. */
|
|
788
679
|
BillAddress?: BillAddress;
|
|
680
|
+
/** The address expressed as an address block of `Addr1` through `Addr5`, depending on the number of lines in the original request that created the address. */
|
|
681
|
+
BillAddressBlock?: BillAddressBlock;
|
|
789
682
|
/** Whatever address you specify in this aggregate must not result in an address greater than 5 lines, otherwise you’ll get a runtime error, because QuickBooks doesn’t support addresses more than 5 lines. There are two ways to specify an address within this aggregate: Using `Addr1` through `Addr3` along with the other possible aggregate elements, such as `City`, `State`, Postalcode.Using `Addr1`, `Addr2`, `Addr3`, `Addr4`, and `Addr5` to fully specify the address. If you use this so called “address block” approach, you cannot use any other address elements, such as `City`, `State`, etc. (Note: this approach is not valid for `EmployeeAdd`/Mod/Query) If you use the address block approach above, the lines `Addr1`…`Addr5` are each printed as a separate line on the transaction, and the values are returned in the Ret object under the aggregate `ShipAddressBlock` or `BillAddressBlock`. */
|
|
790
683
|
ShipAddress?: ShipAddress;
|
|
684
|
+
/** The address expressed as an address block of `Addr1` through `Addr5`, depending on the number of lines in the original request that created the address. */
|
|
685
|
+
ShipAddressBlock?: ShipAddressBlock;
|
|
791
686
|
/** List of ship to addresses. */
|
|
792
687
|
ShipToAddress?: ShipToAddress | ShipToAddress[];
|
|
793
688
|
/** The telephone number. */
|
|
@@ -807,13 +702,17 @@ interface CustomerMod {
|
|
|
807
702
|
/** List of additional contacts. */
|
|
808
703
|
AdditionalContactRef?: AdditionalContactRef | AdditionalContactRef[];
|
|
809
704
|
/** A list of contact records. */
|
|
810
|
-
|
|
705
|
+
ContactsRet?: ContactsRet | ContactsRet[];
|
|
811
706
|
/** Customer types allow business owners to categorize customers in ways that are meaningful for their businesses. For example, a customer type might indicate which industry a customer represents, or which part of the country a customer is in. A `CustomerTypeRef` aggregate refers to one of the types on the `CustomerType` list. In a request, if a `CustomerTypeRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. */
|
|
812
707
|
CustomerTypeRef?: CustomerTypeRef;
|
|
813
708
|
/** Refers to the payment terms associated with this entity. (This will be an item on the `DateDrivenTerms` or `StandardTerms` list.) If a `TermsRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. */
|
|
814
709
|
TermsRef?: TermsRef;
|
|
815
710
|
/** A sales representative must be on the Employee, Vendor, or Other Names list within QuickBooks. Sales representative’s names and initials appear on the Rep drop-down list on QuickBooks sales forms. A `SalesRepRef` refers to a person on the `SalesRep` list. In a request, if a `SalesRepRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. */
|
|
816
711
|
SalesRepRef?: SalesRepRef;
|
|
712
|
+
/** A positive number indicates money owed by the customer. Compare with `TotalBalance`. */
|
|
713
|
+
Balance?: string;
|
|
714
|
+
/** Total balance for this customer, including all this customer’s jobs (subcustomers). A positive number indicates money that the customer owes. If a customer does not have any subcustomers, `TotalBalance` and `Balance` are the same. */
|
|
715
|
+
TotalBalance?: string;
|
|
817
716
|
/** Each item on a sales form is assigned a sales-tax code that indicates whether the item is taxable or non-taxable, and why. Two general codes, which can be modified but not deleted, appear on the sales-tax code list by default:Non-taxable (`Name` = NON; `Desc` = Non-Taxable; `IsTaxable` = false)Taxable (`Name` = TAX; `Desc` = Taxable; `IsTaxable` = true) A sales-tax code can be deleted only if it is no longer associated with any customer, item, or transaction. If the “Do You Charge Sales Tax?” preference within QuickBooks is set to No, QuickBooks will assign the default non-taxable sales-tax code to all sales. A `SalesTaxCodeRef` aggregate refers to a sales-tax code on the list. In a request, if a `SalesTaxCodeRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. In a Customer message, `SalesTaxCodeRef` refers to the sales-tax code that will be used for items related to this customer. In an `ItemInventory` message, `SalesTaxCodeRef` refers to the type of sales tax that will be charged for this item, if it is a taxable item and if sales tax is set up within QuickBooks. */
|
|
818
717
|
SalesTaxCodeRef?: SalesTaxCodeRef;
|
|
819
718
|
/** A sales-tax item is used to calculate a single sales tax that is collected at a specified rate and paid to a single agency. (Compare with the `ItemSalesTaxGroupAdd` message.) An `ItemSalesTaxRef` aggregate refers to an item on this list. In a request, if an `ItemSalesTaxRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. Taxes can be reflected in transaction line items The following information refers to invoices specifically, but it also applies to sales receipts. Generally its best to assign a tax item or tax group item to an invoice and allow QuickBooks to apply the same tax to all taxable items on the invoice. However in some situations multiple tax combinations are required, so this method doesn’t work. In this case one must use techniques to apply the taxes in the invoice itself as line items. Using lines to apply taxes isn’t always straight forward. When applying taxes as line items, only single tax items can be used, tax groups can only be used for the entire invoice. If you have multiple taxes which apply to all taxable items, and one or more other taxes that only apply to some of the items on an invoice its better to use a tax group which applies to the entire invoice for the taxes which applies to all taxable items and then apply the other taxes in the invoice itself. One applies a tax or tax group to an entire invoice by using the `ItemSalesTaxRef` aggregate. One can use subtotals to apply a single tax line to multiple items in an invoice, but the tax is only applied automatically for the first tax line after the subtotal line. Any other tax lines which need to be applied to the subtotal line must supply their own amount. If you don’t supply an amount the amount comes out as zero and the tax line is useless. When one does supply an amount, the amount of tax on the subtotal also shows up in the rate column for that tax line. There isn’t any way for the rate to show up as anything other than the amount of the tax. If you have a complicated tax situation where no single tax applies to all taxable items on the invoice, you must choose a zero percent tax to apply for the entire invoice. It is recommended to name such a tax item “Tax Calculated On Invoice” so that it’s clear that the tax is not being applied by QuickBooks on the entire invoice. */
|
|
@@ -845,139 +744,43 @@ interface CustomerMod {
|
|
|
845
744
|
/** Not supported. */
|
|
846
745
|
Notes?: string;
|
|
847
746
|
/** List of notes. */
|
|
848
|
-
|
|
747
|
+
AdditionalNotesRet?: AdditionalNotesRet | AdditionalNotesRet[];
|
|
849
748
|
/** Preference for how invoices are delivered. */
|
|
850
749
|
PreferredDeliveryMethod?: PreferredDeliveryMethod;
|
|
851
750
|
/** 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` for the item, which was set using the price level. */
|
|
852
751
|
PriceLevelRef?: PriceLevelRef;
|
|
752
|
+
/** Allows for the attachment of a user defined GUID value. */
|
|
753
|
+
ExternalGUID?: string;
|
|
853
754
|
/** The tax registration number used in CA and UK. */
|
|
854
755
|
TaxRegistrationNumber?: string;
|
|
855
756
|
/** The currency object contains all of the information needed by QuickBooks to display and use. For built-in currencies, the name and currency code values are internationally accepted values and thus are not editable. The comma format is editable, as is the `IsActive` status. For user-defined currencies, every value in the object is editable including name and currency code. When used with `PriceLevels`, the `CurrencyRef` should only be used with “per item” price levels. */
|
|
856
757
|
CurrencyRef?: CurrencyRef;
|
|
758
|
+
/** A list of `IDataExtRet` objects, each of which represents a field that has been added to QuickBooks as a data extension. */
|
|
759
|
+
DataExtRet?: DataExtRet | DataExtRet[];
|
|
857
760
|
}
|
|
858
|
-
|
|
859
|
-
CustomerMod: CustomerMod;
|
|
860
|
-
/** You use this if you want to limit the data that will be returned in the response. In this list, you specify the name of each top-level element or aggregate that you want to be returned in the response to the request. You cannot specify fields within an aggregate, for example, you cannot specify a `City` within an Address: you must specify Address and will get the entire address. The names specified in the list are not parsed, so you must be especially careful to supply valid names, properly cased. No error is returned in the status code if you specify an invalid name. Notice that if you want to return custom data or private data extensions, you must specify the `DataExtRet` element and you must supply the `OwnerID` set to either a value of 0 (custom data) or the GUID for the private data. */
|
|
861
|
-
IncludeRetElement?: string[] | string;
|
|
862
|
-
}
|
|
863
|
-
export interface CustomerModRs {
|
|
864
|
-
CustomerRet?: CustomerRet;
|
|
865
|
-
ErrorRecovery?: ErrorRecovery;
|
|
866
|
-
}
|
|
867
|
-
declare type Operator = "Equal" | "GreaterThan" | "GreaterThanEqual" | "LessThan" | "LessThanEqual";
|
|
868
|
-
interface TotalBalanceFilter {
|
|
869
|
-
/** Indicates whether to filter for amounts that are less than, equal to or less than, exactly equal to, greater than, or equal to or greater than the given `Amount`. */
|
|
870
|
-
Operator: Operator;
|
|
871
|
-
/** The monetary amount to which `Operator` refers. */
|
|
872
|
-
Amount: string;
|
|
873
|
-
}
|
|
874
|
-
interface ClassFilter {
|
|
875
|
-
/** One or more `ListID` values. Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
876
|
-
ListID?: string[] | string;
|
|
877
|
-
/** A list of one or more `FullName` values. `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
878
|
-
FullName?: string[] | string;
|
|
879
|
-
/** Allows you to filter for data that relates to the specified object and its descendants. */
|
|
880
|
-
ListIDWithChildren?: string;
|
|
881
|
-
/** Allows you to filter for data that relates to the specified object and its descendants. For names that do not have children, `FullNameWithChildren` is exactly the same as `FullName`. */
|
|
882
|
-
FullNameWithChildren?: string;
|
|
883
|
-
}
|
|
884
|
-
export interface CustomerQueryRq {
|
|
885
|
-
/** One or more `ListID` values. Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
886
|
-
ListID?: string[] | string;
|
|
887
|
-
/** A list of one or more `FullName` values. `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
888
|
-
FullName?: string[] | string;
|
|
889
|
-
/** Limits the number of objects that a query returns. (To get a count of how many objects could possibly be returned, use the `metaData` query attribute.) If you include a `MaxReturned` value, it must be at least 1. */
|
|
890
|
-
MaxReturned?: number;
|
|
891
|
-
/** Used in filters to select list objects based on whether or not they are currently enabled for use by QuickBooks. The default value is `asActiveOnly`, which selects only list objects that are active. */
|
|
892
|
-
ActiveStatus?: ActiveStatus;
|
|
893
|
-
/** Selects objects modified on or after this date. See the note below regarding QBFC usage.For desktop versions of QuickBooks, the `FromModifiedDate` and `ToModifiedDate` must be between 1970-01-01 and 2038-01-19T03:14:07 (2038-01-18T19:14:07-08:00 PST). (The time portion of the field was not supported in qbXML version 1.0 or 1.1.) Also, for desktop versions of QuickBooks, if `FromModifiedDate` includes a date but not a time (for example, if you set `FromModifiedDate` to 2003-02-14), the time is assumed to be zero (2003-02-14T00:00:00). If you omit `FromModifiedDate`, it will be set to 1970-01-01T00:00:00 (1969-12-31T16:00:00-08:00 PST).For QBOE, the `FromModifiedDate` and `ToModifiedDate` must be between 1900-01-01T00:00:00 and 9999-12-31T00:00:00. If `FromModifiedDate` includes a date but not a time (for example, if you set `FromModifiedDate` to 2003-02-14), the time is assumed to be zero (2003-02-14T00:00:00). If you omit `FromModifiedDate`, it will be set to 1900-01-01T00:00:00.`Note`: When specifying this in QBFC, you need to supply the parameter `asDateOnly`, which is a Boolean. If `asDateOnly` is true, the date value will be represented as a date only (without a time). If `asDateOnly` is false, the date value will be represented as date and time, padded with zeros if necessary, and set to the beginning of the day if no time is provided. The `asDateOnly` parameter is especially useful in the `ToModifiedDate` field of a query: If `asDateOnly` is set to true in the `ToModifiedDate` field of a query, then the query includes elements modified up to the end of the day. If `asDateOnly` is false, the query includes elements modified up to the specified time (or up to the beginning of the day if no time is included). */
|
|
894
|
-
FromModifiedDate?: string;
|
|
895
|
-
/** Selects objects modified on or before this date. See the note below on QBFC usage.For desktop versions of QuickBooks, the `ToModifiedDate` and `FromModifiedDate` must be between 01/01/1970 and 2038-01-19T03:14:07 (2038-01-18T19:14:07-08:00 PST). (Note that the time portion of the field was not supported in qbXML version 1.0 or 1.1.) If `ToModifiedDate` includes a date but not a time (for example, if you set `ToModifiedDate` to 2003-02-14), the time is assumed to be the end of the day (2003-02-14T23:59:59). If you omit `ToModifiedDate` altogether, it will be set to 2038-01-19T03:14:07 (2038-01-18T19:14:07-08:00 PST).For QBOE, the `ToModifiedDate` and `FromModifiedDate` must be between 01/01/1900 and 9999-12-31T00:00:00. If `ToModifiedDate` includes a date but not a time (for example, if you set `ToModifiedDate` to 2003-02-14), the time is assumed to be the end of the day (2003-02-14T23:59:59). If you omit `ToModifiedDate` altogether, it will be set to 9999-12-31T00:00:00.`Note`: When specifying this in QBFC, you need to supply the parameter `asDateOnly`, which is a Boolean. If `asDateOnly` is true, the date value will be represented as a date only (without a time). If `asDateOnly` is false, the date value will be represented as date and time, padded with zeros if necessary, and set to the beginning of the day if no time is provided. The `asDateOnly` parameter is especially useful in the `ToModifiedDate` field of a query: If `asDateOnly` is set to true in the `ToModifiedDate` field of a query, then the query includes elements modified up to the end of the day. If `asDateOnly` is false, the query includes elements modified up to the specified time (or up to the beginning of the day if no time is included). */
|
|
896
|
-
ToModifiedDate?: string;
|
|
897
|
-
/** Filters according to the object’s `Name`. */
|
|
898
|
-
NameFilter?: NameFilter;
|
|
899
|
-
/** Filters according to the object’s `Name`. */
|
|
900
|
-
NameRangeFilter?: NameRangeFilter;
|
|
901
|
-
/** Filters according to total balance. Total balance includes the balance for all subaccounts; for example, a customer’s `TotalBalance` would include all the jobs for that customer. */
|
|
902
|
-
TotalBalanceFilter?: TotalBalanceFilter;
|
|
903
|
-
/** Filters by the specified currency. */
|
|
904
|
-
CurrencyFilter?: CurrencyFilter;
|
|
905
|
-
/** Filter according to class. */
|
|
906
|
-
ClassFilter?: ClassFilter;
|
|
907
|
-
/** You use this if you want to limit the data that will be returned in the response. In this list, you specify the name of each top-level element or aggregate that you want to be returned in the response to the request. You cannot specify fields within an aggregate, for example, you cannot specify a `City` within an Address: you must specify Address and will get the entire address. The names specified in the list are not parsed, so you must be especially careful to supply valid names, properly cased. No error is returned in the status code if you specify an invalid name. Notice that if you want to return custom data or private data extensions, you must specify the `DataExtRet` element and you must supply the `OwnerID` set to either a value of 0 (custom data) or the GUID for the private data. */
|
|
908
|
-
IncludeRetElement?: string[] | string;
|
|
909
|
-
/** Zero or more `OwnerID` values. `OwnerID` refers to the owner of a data extension:If `OwnerID` is 0, this is a public data extension, also known as a custom field. Custom fields appear in the QuickBooks UI.If `OwnerID` is a GUID, for example {6B063959-81B0-4622-85D6-F548C8CCB517}, this field is a private data extension defined by an integrated application. Private data extensions do not appear in the QuickBooks UI. Note that `OwnerID` values are not case-sensitive, meaning that if you enter an `OwnerID` value with lower-case letters, the value will be saved and returned with upper-case letters. When you share a private 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. */
|
|
910
|
-
OwnerID?: string[] | string;
|
|
911
|
-
}
|
|
912
|
-
export interface CustomerQueryRs {
|
|
913
|
-
CustomerRet?: CustomerRet | CustomerRet[];
|
|
914
|
-
}
|
|
915
|
-
interface SupervisorRef {
|
|
761
|
+
interface CustomerTypeRef {
|
|
916
762
|
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
917
763
|
ListID?: string;
|
|
918
764
|
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
919
765
|
FullName?: string;
|
|
920
766
|
}
|
|
921
|
-
interface
|
|
922
|
-
/**
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
/**
|
|
929
|
-
|
|
930
|
-
/** The
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
interface PrimaryContact {
|
|
935
|
-
/** The name of the contact. */
|
|
936
|
-
ContactName: string;
|
|
937
|
-
/** The value of the contact field. */
|
|
938
|
-
ContactValue: string;
|
|
939
|
-
/** Relationship of emergency contact information to the employee. */
|
|
940
|
-
Relation?: Relation;
|
|
941
|
-
}
|
|
942
|
-
interface SecondaryContact {
|
|
943
|
-
/** The name of the contact. */
|
|
944
|
-
ContactName: string;
|
|
945
|
-
/** The value of the contact field. */
|
|
946
|
-
ContactValue: string;
|
|
947
|
-
/** Relationship of emergency contact information to the employee. */
|
|
948
|
-
Relation?: Relation;
|
|
949
|
-
}
|
|
950
|
-
interface EmergencyContacts {
|
|
951
|
-
/** Primary emergency contact information for the employee. */
|
|
952
|
-
PrimaryContact?: PrimaryContact;
|
|
953
|
-
/** Secondary emergency contact information for the employee. */
|
|
954
|
-
SecondaryContact?: SecondaryContact;
|
|
767
|
+
interface DataExtRet {
|
|
768
|
+
/** `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. )
|
|
769
|
+
|
|
770
|
+
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.)
|
|
771
|
+
|
|
772
|
+
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. */
|
|
773
|
+
OwnerID?: string;
|
|
774
|
+
/** 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. */
|
|
775
|
+
DataExtName: string;
|
|
776
|
+
/** The field’s data type, which corresponds to a qbXML data type. In an `IDataExtDefAdd` request object, if this is a custom field, `DataExtType` must be `detSTR255TYPE`. */
|
|
777
|
+
DataExtType: DataExtType;
|
|
778
|
+
/** 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`. */
|
|
779
|
+
DataExtValue: string;
|
|
955
780
|
}
|
|
956
|
-
|
|
957
|
-
declare type
|
|
958
|
-
declare type PartOrFullTime = "FullTime" | "PartTime";
|
|
959
|
-
declare type Exempt = "Exempt" | "NonExempt";
|
|
960
|
-
declare type KeyEmployee = "No" | "Yes";
|
|
961
|
-
declare type Gender = "Female" | "Male";
|
|
962
|
-
declare type USCitizen = "No" | "Yes";
|
|
963
|
-
declare type Ethnicity = "AmericianIndian" | "Asian" | "Black" | "Hawaiian" | "Hispanic" | "TwoOrMoreRaces" | "White";
|
|
781
|
+
declare type DataExtType = "AMTTYPE" | "DATETIMETYPE" | "INTTYPE" | "PERCENTTYPE" | "PRICETYPE" | "QUANTYPE" | "STR255TYPE" | "STR1024TYPE";
|
|
782
|
+
declare type DateMacro = "All" | "LastCalendarQuarter" | "LastCalendarQuarterToDate" | "LastCalendarYear" | "LastCalendarYearToDate" | "LastFiscalQuarter" | "LastFiscalQuarterToDate" | "LastFiscalYear" | "LastFiscalYearToDate" | "LastMonth" | "LastMonthToDate" | "LastWeek" | "LastWeekToDate" | "NextCalendarQuarter" | "NextCalendarYear" | "NextFiscalQuarter" | "NextFiscalYear" | "NextFourWeeks" | "NextMonth" | "NextWeek" | "ThisCalendarQuarter" | "ThisCalendarQuarterToDate" | "ThisCalendarYear" | "ThisCalendarYearToDate" | "ThisFiscalQuarter" | "ThisFiscalQuarterToDate" | "ThisFiscalYear" | "ThisFiscalYearToDate" | "ThisMonth" | "ThisMonthToDate" | "ThisWeek" | "ThisWeekToDate" | "Today" | "Yesterday";
|
|
964
783
|
declare type Disabled = "No" | "Yes";
|
|
965
|
-
declare type OnFile = "No" | "Yes";
|
|
966
|
-
declare type USVeteran = "No" | "Yes";
|
|
967
|
-
declare type MilitaryStatus = "Active" | "Reserve";
|
|
968
|
-
interface BillingRateRef {
|
|
969
|
-
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
970
|
-
ListID?: string;
|
|
971
|
-
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
972
|
-
FullName?: string;
|
|
973
|
-
}
|
|
974
|
-
declare type PayPeriod = "Biweekly" | "Daily" | "Monthly" | "Quarterly" | "Semimonthly" | "Weekly" | "Yearly";
|
|
975
|
-
interface PayrollItemWageRef {
|
|
976
|
-
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
977
|
-
ListID?: string;
|
|
978
|
-
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
979
|
-
FullName?: string;
|
|
980
|
-
}
|
|
981
784
|
interface Earnings {
|
|
982
785
|
/** Each payroll wage item describes and names a payment scheme, for example, Regular Pay or Overtime Pay. A `PayrollItemWageRef` aggregate refers to one of these wage items. In a request, if a `PayrollItemWageRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. Within QuickBooks, a timesheet can specify a payroll wage item only if the following criteria are met: The name on the timesheet (which corresponds to the `EntityRef` in the `TimeTracking` object) is on the QuickBooks Employee list, and The “Use time data to create paychecks” preference is turned on in the QuickBooks Payroll Info window that provides detailed employee information employee. */
|
|
983
786
|
PayrollItemWageRef: PayrollItemWageRef;
|
|
@@ -986,57 +789,11 @@ interface Earnings {
|
|
|
986
789
|
/** Indicates the price of something as a percent. */
|
|
987
790
|
RatePercent?: string;
|
|
988
791
|
}
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
/**
|
|
993
|
-
|
|
994
|
-
/** Indicates how an employee accrues time off. If you include a blank `AccrualPeriod` element in an `EmployeeMod` message, you’ll receive an error. The default value is whatever the QuickBooks user has set in the QuickBooks Employee Preferences. */
|
|
995
|
-
AccrualPeriod?: AccrualPeriod;
|
|
996
|
-
/** The number of hours that the employee will accrue per accrual period. The default value is whatever the QuickBooks user has set in the QuickBooks Employee Preferences. */
|
|
997
|
-
HoursAccrued?: string;
|
|
998
|
-
/** The maximum number of hours that the employee can accrue. (QuickBooks itself does not enforce this limit, however. `HoursAvailable` can be greater than `MaximumHours`.) The default value is whatever the QuickBooks user has set in the QuickBooks Employee Preferences. */
|
|
999
|
-
MaximumHours?: string;
|
|
1000
|
-
/** Indicates whether or not the hours accrued resets to zero at the beginning of the new year. If you include a blank `IsResettingHoursEachNewYear` element in an `EmployeeMod` message, you’ll receive an error. */
|
|
1001
|
-
IsResettingHoursEachNewYear?: boolean;
|
|
1002
|
-
/** When used in the `SickHours` or `VacationHours` aggregates, refers to the number of sick leave or vacation hours used in the current year. */
|
|
1003
|
-
HoursUsed?: string;
|
|
1004
|
-
/** When used in the `SickHours` or `VacationHours` aggregates, refers to the date on which sick leave or vacation hours in the current year began to accrue. */
|
|
1005
|
-
AccrualStartDate?: string;
|
|
1006
|
-
}
|
|
1007
|
-
interface VacationHours {
|
|
1008
|
-
/** The total number of hours currently available for the employee to use. If this value is empty, it will default to 0. */
|
|
1009
|
-
HoursAvailable?: string;
|
|
1010
|
-
/** Indicates how an employee accrues time off. If you include a blank `AccrualPeriod` element in an `EmployeeMod` message, you’ll receive an error. The default value is whatever the QuickBooks user has set in the QuickBooks Employee Preferences. */
|
|
1011
|
-
AccrualPeriod?: AccrualPeriod;
|
|
1012
|
-
/** The number of hours that the employee will accrue per accrual period. The default value is whatever the QuickBooks user has set in the QuickBooks Employee Preferences. */
|
|
1013
|
-
HoursAccrued?: string;
|
|
1014
|
-
/** The maximum number of hours that the employee can accrue. (QuickBooks itself does not enforce this limit, however. `HoursAvailable` can be greater than `MaximumHours`.) The default value is whatever the QuickBooks user has set in the QuickBooks Employee Preferences. */
|
|
1015
|
-
MaximumHours?: string;
|
|
1016
|
-
/** Indicates whether or not the hours accrued resets to zero at the beginning of the new year. If you include a blank `IsResettingHoursEachNewYear` element in an `EmployeeMod` message, you’ll receive an error. */
|
|
1017
|
-
IsResettingHoursEachNewYear?: boolean;
|
|
1018
|
-
/** When used in the `SickHours` or `VacationHours` aggregates, refers to the number of sick leave or vacation hours used in the current year. */
|
|
1019
|
-
HoursUsed?: string;
|
|
1020
|
-
/** When used in the `SickHours` or `VacationHours` aggregates, refers to the date on which sick leave or vacation hours in the current year began to accrue. */
|
|
1021
|
-
AccrualStartDate?: string;
|
|
1022
|
-
}
|
|
1023
|
-
interface EmployeePayrollInfo {
|
|
1024
|
-
/** Indicates how often employees are paid. If you include a blank `PayPeriod` element in an `EmployeeMod` message, you’ll receive an error. The default value is whatever the QuickBooks user has set in the QuickBooks Employee Preferences. */
|
|
1025
|
-
PayPeriod?: PayPeriod;
|
|
1026
|
-
/** Classes can be used to separate transactions into meaningful categories. (For example, transactions could be classified according to department, business location, or type of work.) In QuickBooks, class tracking is off by default. A `ClassRef` aggregate refers to one of these named classes. For example, in a `TimeTracking` message, `ClassRef` refers to the QuickBooks class into which the timed activity falls. If a `ClassRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. In an `InvoiceAdd` request, if you specify a `ClassRef` for the whole invoice, that same `ClassRef` is automatically used in the line items. If you want to clear that (that is, have NO `ClassRef` for the line item, you can clear it in the line item by simply not specifying it in the line item. */
|
|
1027
|
-
ClassRef?: ClassRef;
|
|
1028
|
-
/** If `ClearEarnings` is set to true, the earnings will be deleted for this employee. */
|
|
1029
|
-
ClearEarnings?: boolean;
|
|
1030
|
-
/** A list of `IEarnings` aggregate objects. If an `EmployeeMod` request does not include any `IEarnings` objects, the earnings table for that employee will not change. If `EmployeeMod` includes at least one `IEarnings` object, all existing earnings information will be deleted for that employee, and all the earnings information in the -Mod request will be added. (To delete all the earnings information, set the `ClearEarnings` field to true in an `EmployeeMod` request.) */
|
|
1031
|
-
Earnings?: Earnings | Earnings[];
|
|
1032
|
-
/** Indicates whether or not paychecks are generated from time-tracking data. If you include a blank `IsUsingTimeDataToCreatePaychecks` element in an `EmployeeMod` message, you’ll receive an error. */
|
|
1033
|
-
IsUsingTimeDataToCreatePaychecks?: boolean;
|
|
1034
|
-
/** Indicates whether time data is used to create paychecks for this employee. */
|
|
1035
|
-
UseTimeDataToCreatePaychecks?: UseTimeDataToCreatePaychecks;
|
|
1036
|
-
/** Describes how “sick time” is accrued for this employee, along with how many sick hours the employee has accrued. */
|
|
1037
|
-
SickHours?: SickHours;
|
|
1038
|
-
/** Describes how vacation time is accrued for this employee, along with how many vacation hours the employee has accrued. */
|
|
1039
|
-
VacationHours?: VacationHours;
|
|
792
|
+
interface EmergencyContacts {
|
|
793
|
+
/** Primary emergency contact information for the employee. */
|
|
794
|
+
PrimaryContact?: PrimaryContact;
|
|
795
|
+
/** Secondary emergency contact information for the employee. */
|
|
796
|
+
SecondaryContact?: SecondaryContact;
|
|
1040
797
|
}
|
|
1041
798
|
interface EmployeeAdd {
|
|
1042
799
|
/** If `IsActive` is true, this object is currently enabled for use by QuickBooks. The default value is true. */
|
|
@@ -1132,22 +889,32 @@ interface EmployeeAdd {
|
|
|
1132
889
|
/** Allows for the attachment of a user defined GUID value. */
|
|
1133
890
|
ExternalGUID?: string;
|
|
1134
891
|
}
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
|
|
892
|
+
interface EmployeeAddress {
|
|
893
|
+
/** The first line of an address. */
|
|
894
|
+
Addr1?: string;
|
|
895
|
+
/** The second line of an address (if a second line is needed). */
|
|
896
|
+
Addr2?: string;
|
|
897
|
+
/** The city name in an address. */
|
|
898
|
+
City?: string;
|
|
899
|
+
/** When it appears in the `EmployeeAddress` aggregate, the `State` element acts like an ENUMTYPE with the following possible values: None, AA (military), AE (military), AK, AL, AP (military), AR, AZ, CA, CO, CT, DC, DE, FL, GA, HI, IA, ID, IL, IN, KS, KY, LA, MA, MD, ME, MI, MN, MO, MS, MT, NC, ND, NE, NH, NJ, NM, NV, NY, OH, OK, OR, PA, PR, RI, SC, SD, TN, TX, UT, VA, VT, WA, WI, WV, and WY. */
|
|
900
|
+
State?: string;
|
|
901
|
+
/** The postal code in an address. */
|
|
902
|
+
PostalCode?: string;
|
|
903
|
+
}
|
|
904
|
+
export interface EmployeeAddRq {
|
|
905
|
+
EmployeeAdd: EmployeeAdd;
|
|
906
|
+
/** You use this if you want to limit the data that will be returned in the response. In this list, you specify the name of each top-level element or aggregate that you want to be returned in the response to the request. You cannot specify fields within an aggregate, for example, you cannot specify a `City` within an Address: you must specify Address and will get the entire address. The names specified in the list are not parsed, so you must be especially careful to supply valid names, properly cased. No error is returned in the status code if you specify an invalid name. Notice that if you want to return custom data or private data extensions, you must specify the `DataExtRet` element and you must supply the `OwnerID` set to either a value of 0 (custom data) or the GUID for the private data. */
|
|
1138
907
|
IncludeRetElement?: string[] | string;
|
|
1139
908
|
}
|
|
1140
|
-
interface
|
|
909
|
+
export interface EmployeeAddRs {
|
|
910
|
+
EmployeeRet?: EmployeeRet;
|
|
911
|
+
ErrorRecovery?: ErrorRecovery;
|
|
912
|
+
}
|
|
913
|
+
interface EmployeeMod {
|
|
1141
914
|
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
1142
915
|
ListID: string;
|
|
1143
|
-
/** Time the object was created. */
|
|
1144
|
-
TimeCreated: string;
|
|
1145
|
-
/** Time the object was last modified. */
|
|
1146
|
-
TimeModified: string;
|
|
1147
916
|
/** A number that the server generates and assigns to this object. Every time the object is changed, the server will change its `EditSequence` value. When you try to modify a list object, you must provide its `EditSequence`. The server compares the `EditSequence` you provide with the `EditSequence` in memory to make sure you are dealing with the latest copy of the object. If you are not, the server will reject the request and return an error. Because `EditSequence` is only used to check whether two objects match, there is no reason to interpret its value. */
|
|
1148
917
|
EditSequence: string;
|
|
1149
|
-
/** A concatenation of `FirstName`, `MiddleName`, and `LastName`. */
|
|
1150
|
-
Name: string;
|
|
1151
918
|
/** If `IsActive` is true, this object is currently enabled for use by QuickBooks. The default value is true. */
|
|
1152
919
|
IsActive?: boolean;
|
|
1153
920
|
/** A formal reference, such as Mr. or Dr., that precedes a name. */
|
|
@@ -1184,8 +951,6 @@ interface EmployeeRet {
|
|
|
1184
951
|
AltPhone?: string;
|
|
1185
952
|
/** Fax number. */
|
|
1186
953
|
Fax?: string;
|
|
1187
|
-
/** Social security number. When you add an `SSN` value to an employee record, it does not have to include dashes; for example, either 123-45-6789 or 123456789 would be valid. */
|
|
1188
|
-
SSN?: string;
|
|
1189
954
|
/** E-mail address. */
|
|
1190
955
|
Email?: string;
|
|
1191
956
|
/** List of additional contacts. */
|
|
@@ -1200,8 +965,6 @@ interface EmployeeRet {
|
|
|
1200
965
|
Exempt?: Exempt;
|
|
1201
966
|
/** Is employee a key or critical employee. */
|
|
1202
967
|
KeyEmployee?: KeyEmployee;
|
|
1203
|
-
/** The gender of this employee. */
|
|
1204
|
-
Gender?: Gender;
|
|
1205
968
|
/** An employee’s date of hire. */
|
|
1206
969
|
HiredDate?: string;
|
|
1207
970
|
/** Original hire date the employee was hired. */
|
|
@@ -1233,20 +996,39 @@ interface EmployeeRet {
|
|
|
1233
996
|
/** Additional information. */
|
|
1234
997
|
Notes?: string;
|
|
1235
998
|
/** List of notes. */
|
|
1236
|
-
|
|
999
|
+
AdditionalNotesMod?: AdditionalNotesMod | AdditionalNotesMod[];
|
|
1237
1000
|
/** Billing rates are used to override the service item rate in a time transaction (`TimeTrackingAdd`) based on the employee or vendor performing the work. Billing rates are assigned to an employee or a vendor to specify overrides to service items. */
|
|
1238
1001
|
BillingRateRef?: BillingRateRef;
|
|
1239
1002
|
/** Pay information for this employee. */
|
|
1240
|
-
|
|
1241
|
-
/** Allows for the attachment of a user defined GUID value. */
|
|
1242
|
-
ExternalGUID?: string;
|
|
1243
|
-
/** A list of `IDataExtRet` objects, each of which represents a field that has been added to QuickBooks as a data extension. */
|
|
1244
|
-
DataExtRet?: DataExtRet | DataExtRet[];
|
|
1003
|
+
EmployeePayrollInfoMod?: EmployeePayrollInfoMod;
|
|
1245
1004
|
}
|
|
1246
|
-
export interface
|
|
1005
|
+
export interface EmployeeModRq {
|
|
1006
|
+
EmployeeMod: EmployeeMod;
|
|
1007
|
+
/** You use this if you want to limit the data that will be returned in the response. In this list, you specify the name of each top-level element or aggregate that you want to be returned in the response to the request. You cannot specify fields within an aggregate, for example, you cannot specify a `City` within an Address: you must specify Address and will get the entire address. The names specified in the list are not parsed, so you must be especially careful to supply valid names, properly cased. No error is returned in the status code if you specify an invalid name. Notice that if you want to return custom data or private data extensions, you must specify the `DataExtRet` element and you must supply the `OwnerID` set to either a value of 0 (custom data) or the GUID for the private data. */
|
|
1008
|
+
IncludeRetElement?: string[] | string;
|
|
1009
|
+
}
|
|
1010
|
+
export interface EmployeeModRs {
|
|
1247
1011
|
EmployeeRet?: EmployeeRet;
|
|
1248
1012
|
ErrorRecovery?: ErrorRecovery;
|
|
1249
1013
|
}
|
|
1014
|
+
interface EmployeePayrollInfo {
|
|
1015
|
+
/** Indicates how often employees are paid. If you include a blank `PayPeriod` element in an `EmployeeMod` message, you’ll receive an error. The default value is whatever the QuickBooks user has set in the QuickBooks Employee Preferences. */
|
|
1016
|
+
PayPeriod?: PayPeriod;
|
|
1017
|
+
/** Classes can be used to separate transactions into meaningful categories. (For example, transactions could be classified according to department, business location, or type of work.) In QuickBooks, class tracking is off by default. A `ClassRef` aggregate refers to one of these named classes. For example, in a `TimeTracking` message, `ClassRef` refers to the QuickBooks class into which the timed activity falls. If a `ClassRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. In an `InvoiceAdd` request, if you specify a `ClassRef` for the whole invoice, that same `ClassRef` is automatically used in the line items. If you want to clear that (that is, have NO `ClassRef` for the line item, you can clear it in the line item by simply not specifying it in the line item. */
|
|
1018
|
+
ClassRef?: ClassRef;
|
|
1019
|
+
/** If `ClearEarnings` is set to true, the earnings will be deleted for this employee. */
|
|
1020
|
+
ClearEarnings?: boolean;
|
|
1021
|
+
/** A list of `IEarnings` aggregate objects. If an `EmployeeMod` request does not include any `IEarnings` objects, the earnings table for that employee will not change. If `EmployeeMod` includes at least one `IEarnings` object, all existing earnings information will be deleted for that employee, and all the earnings information in the -Mod request will be added. (To delete all the earnings information, set the `ClearEarnings` field to true in an `EmployeeMod` request.) */
|
|
1022
|
+
Earnings?: Earnings | Earnings[];
|
|
1023
|
+
/** Indicates whether or not paychecks are generated from time-tracking data. If you include a blank `IsUsingTimeDataToCreatePaychecks` element in an `EmployeeMod` message, you’ll receive an error. */
|
|
1024
|
+
IsUsingTimeDataToCreatePaychecks?: boolean;
|
|
1025
|
+
/** Indicates whether time data is used to create paychecks for this employee. */
|
|
1026
|
+
UseTimeDataToCreatePaychecks?: UseTimeDataToCreatePaychecks;
|
|
1027
|
+
/** Describes how “sick time” is accrued for this employee, along with how many sick hours the employee has accrued. */
|
|
1028
|
+
SickHours?: SickHours;
|
|
1029
|
+
/** Describes how vacation time is accrued for this employee, along with how many vacation hours the employee has accrued. */
|
|
1030
|
+
VacationHours?: VacationHours;
|
|
1031
|
+
}
|
|
1250
1032
|
interface EmployeePayrollInfoMod {
|
|
1251
1033
|
/** Indicates how often employees are paid. If you include a blank `PayPeriod` element in an `EmployeeMod` message, you’ll receive an error. The default value is whatever the QuickBooks user has set in the QuickBooks Employee Preferences. */
|
|
1252
1034
|
PayPeriod?: PayPeriod;
|
|
@@ -1265,11 +1047,42 @@ interface EmployeePayrollInfoMod {
|
|
|
1265
1047
|
/** Describes how vacation time is accrued for this employee, along with how many vacation hours the employee has accrued. */
|
|
1266
1048
|
VacationHours?: VacationHours;
|
|
1267
1049
|
}
|
|
1268
|
-
interface
|
|
1050
|
+
export interface EmployeeQueryRq {
|
|
1051
|
+
/** One or more `ListID` values. Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
1052
|
+
ListID?: string[] | string;
|
|
1053
|
+
/** A list of one or more `FullName` values. `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
1054
|
+
FullName?: string[] | string;
|
|
1055
|
+
/** Limits the number of objects that a query returns. (To get a count of how many objects could possibly be returned, use the `metaData` query attribute.) If you include a `MaxReturned` value, it must be at least 1. */
|
|
1056
|
+
MaxReturned?: number;
|
|
1057
|
+
/** Used in filters to select list objects based on whether or not they are currently enabled for use by QuickBooks. The default value is `asActiveOnly`, which selects only list objects that are active. */
|
|
1058
|
+
ActiveStatus?: ActiveStatus;
|
|
1059
|
+
/** Selects objects modified on or after this date. See the note below regarding QBFC usage.For desktop versions of QuickBooks, the `FromModifiedDate` and `ToModifiedDate` must be between 1970-01-01 and 2038-01-19T03:14:07 (2038-01-18T19:14:07-08:00 PST). (The time portion of the field was not supported in qbXML version 1.0 or 1.1.) Also, for desktop versions of QuickBooks, if `FromModifiedDate` includes a date but not a time (for example, if you set `FromModifiedDate` to 2003-02-14), the time is assumed to be zero (2003-02-14T00:00:00). If you omit `FromModifiedDate`, it will be set to 1970-01-01T00:00:00 (1969-12-31T16:00:00-08:00 PST).For QBOE, the `FromModifiedDate` and `ToModifiedDate` must be between 1900-01-01T00:00:00 and 9999-12-31T00:00:00. If `FromModifiedDate` includes a date but not a time (for example, if you set `FromModifiedDate` to 2003-02-14), the time is assumed to be zero (2003-02-14T00:00:00). If you omit `FromModifiedDate`, it will be set to 1900-01-01T00:00:00.`Note`: When specifying this in QBFC, you need to supply the parameter `asDateOnly`, which is a Boolean. If `asDateOnly` is true, the date value will be represented as a date only (without a time). If `asDateOnly` is false, the date value will be represented as date and time, padded with zeros if necessary, and set to the beginning of the day if no time is provided. The `asDateOnly` parameter is especially useful in the `ToModifiedDate` field of a query: If `asDateOnly` is set to true in the `ToModifiedDate` field of a query, then the query includes elements modified up to the end of the day. If `asDateOnly` is false, the query includes elements modified up to the specified time (or up to the beginning of the day if no time is included). */
|
|
1060
|
+
FromModifiedDate?: string;
|
|
1061
|
+
/** Selects objects modified on or before this date. See the note below on QBFC usage.For desktop versions of QuickBooks, the `ToModifiedDate` and `FromModifiedDate` must be between 01/01/1970 and 2038-01-19T03:14:07 (2038-01-18T19:14:07-08:00 PST). (Note that the time portion of the field was not supported in qbXML version 1.0 or 1.1.) If `ToModifiedDate` includes a date but not a time (for example, if you set `ToModifiedDate` to 2003-02-14), the time is assumed to be the end of the day (2003-02-14T23:59:59). If you omit `ToModifiedDate` altogether, it will be set to 2038-01-19T03:14:07 (2038-01-18T19:14:07-08:00 PST).For QBOE, the `ToModifiedDate` and `FromModifiedDate` must be between 01/01/1900 and 9999-12-31T00:00:00. If `ToModifiedDate` includes a date but not a time (for example, if you set `ToModifiedDate` to 2003-02-14), the time is assumed to be the end of the day (2003-02-14T23:59:59). If you omit `ToModifiedDate` altogether, it will be set to 9999-12-31T00:00:00.`Note`: When specifying this in QBFC, you need to supply the parameter `asDateOnly`, which is a Boolean. If `asDateOnly` is true, the date value will be represented as a date only (without a time). If `asDateOnly` is false, the date value will be represented as date and time, padded with zeros if necessary, and set to the beginning of the day if no time is provided. The `asDateOnly` parameter is especially useful in the `ToModifiedDate` field of a query: If `asDateOnly` is set to true in the `ToModifiedDate` field of a query, then the query includes elements modified up to the end of the day. If `asDateOnly` is false, the query includes elements modified up to the specified time (or up to the beginning of the day if no time is included). */
|
|
1062
|
+
ToModifiedDate?: string;
|
|
1063
|
+
/** Filters according to the object’s `Name`. */
|
|
1064
|
+
NameFilter?: NameFilter;
|
|
1065
|
+
/** Filters according to the object’s `Name`. */
|
|
1066
|
+
NameRangeFilter?: NameRangeFilter;
|
|
1067
|
+
/** You use this if you want to limit the data that will be returned in the response. In this list, you specify the name of each top-level element or aggregate that you want to be returned in the response to the request. You cannot specify fields within an aggregate, for example, you cannot specify a `City` within an Address: you must specify Address and will get the entire address. The names specified in the list are not parsed, so you must be especially careful to supply valid names, properly cased. No error is returned in the status code if you specify an invalid name. Notice that if you want to return custom data or private data extensions, you must specify the `DataExtRet` element and you must supply the `OwnerID` set to either a value of 0 (custom data) or the GUID for the private data. */
|
|
1068
|
+
IncludeRetElement?: string[] | string;
|
|
1069
|
+
/** Zero or more `OwnerID` values. `OwnerID` refers to the owner of a data extension:If `OwnerID` is 0, this is a public data extension, also known as a custom field. Custom fields appear in the QuickBooks UI.If `OwnerID` is a GUID, for example `{6B063959-81B0-4622-85D6-F548C8CCB517}`, this field is a private data extension defined by an integrated application. Private data extensions do not appear in the QuickBooks UI. Note that `OwnerID` values are not case-sensitive, meaning that if you enter an `OwnerID` value with lower-case letters, the value will be saved and returned with upper-case letters. When you share a private 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. */
|
|
1070
|
+
OwnerID?: string[] | string;
|
|
1071
|
+
}
|
|
1072
|
+
export interface EmployeeQueryRs {
|
|
1073
|
+
EmployeeRet?: EmployeeRet | EmployeeRet[];
|
|
1074
|
+
}
|
|
1075
|
+
interface EmployeeRet {
|
|
1269
1076
|
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
1270
1077
|
ListID: string;
|
|
1078
|
+
/** Time the object was created. */
|
|
1079
|
+
TimeCreated: string;
|
|
1080
|
+
/** Time the object was last modified. */
|
|
1081
|
+
TimeModified: string;
|
|
1271
1082
|
/** A number that the server generates and assigns to this object. Every time the object is changed, the server will change its `EditSequence` value. When you try to modify a list object, you must provide its `EditSequence`. The server compares the `EditSequence` you provide with the `EditSequence` in memory to make sure you are dealing with the latest copy of the object. If you are not, the server will reject the request and return an error. Because `EditSequence` is only used to check whether two objects match, there is no reason to interpret its value. */
|
|
1272
1083
|
EditSequence: string;
|
|
1084
|
+
/** A concatenation of `FirstName`, `MiddleName`, and `LastName`. */
|
|
1085
|
+
Name: string;
|
|
1273
1086
|
/** If `IsActive` is true, this object is currently enabled for use by QuickBooks. The default value is true. */
|
|
1274
1087
|
IsActive?: boolean;
|
|
1275
1088
|
/** A formal reference, such as Mr. or Dr., that precedes a name. */
|
|
@@ -1306,6 +1119,8 @@ interface EmployeeMod {
|
|
|
1306
1119
|
AltPhone?: string;
|
|
1307
1120
|
/** Fax number. */
|
|
1308
1121
|
Fax?: string;
|
|
1122
|
+
/** Social security number. When you add an `SSN` value to an employee record, it does not have to include dashes; for example, either 123-45-6789 or 123456789 would be valid. */
|
|
1123
|
+
SSN?: string;
|
|
1309
1124
|
/** E-mail address. */
|
|
1310
1125
|
Email?: string;
|
|
1311
1126
|
/** List of additional contacts. */
|
|
@@ -1320,6 +1135,8 @@ interface EmployeeMod {
|
|
|
1320
1135
|
Exempt?: Exempt;
|
|
1321
1136
|
/** Is employee a key or critical employee. */
|
|
1322
1137
|
KeyEmployee?: KeyEmployee;
|
|
1138
|
+
/** The gender of this employee. */
|
|
1139
|
+
Gender?: Gender;
|
|
1323
1140
|
/** An employee’s date of hire. */
|
|
1324
1141
|
HiredDate?: string;
|
|
1325
1142
|
/** Original hire date the employee was hired. */
|
|
@@ -1351,60 +1168,80 @@ interface EmployeeMod {
|
|
|
1351
1168
|
/** Additional information. */
|
|
1352
1169
|
Notes?: string;
|
|
1353
1170
|
/** List of notes. */
|
|
1354
|
-
|
|
1171
|
+
AdditionalNotesRet?: AdditionalNotesRet | AdditionalNotesRet[];
|
|
1355
1172
|
/** Billing rates are used to override the service item rate in a time transaction (`TimeTrackingAdd`) based on the employee or vendor performing the work. Billing rates are assigned to an employee or a vendor to specify overrides to service items. */
|
|
1356
1173
|
BillingRateRef?: BillingRateRef;
|
|
1357
1174
|
/** Pay information for this employee. */
|
|
1358
|
-
|
|
1359
|
-
|
|
1360
|
-
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
IncludeRetElement?: string[] | string;
|
|
1364
|
-
}
|
|
1365
|
-
export interface EmployeeModRs {
|
|
1366
|
-
EmployeeRet?: EmployeeRet;
|
|
1367
|
-
ErrorRecovery?: ErrorRecovery;
|
|
1175
|
+
EmployeePayrollInfo?: EmployeePayrollInfo;
|
|
1176
|
+
/** Allows for the attachment of a user defined GUID value. */
|
|
1177
|
+
ExternalGUID?: string;
|
|
1178
|
+
/** A list of `IDataExtRet` objects, each of which represents a field that has been added to QuickBooks as a data extension. */
|
|
1179
|
+
DataExtRet?: DataExtRet | DataExtRet[];
|
|
1368
1180
|
}
|
|
1369
|
-
|
|
1181
|
+
/** @default: Regular */
|
|
1182
|
+
declare type EmployeeType = "Officer" | "Owner" | "Regular" | "Statutory";
|
|
1183
|
+
interface EntityFilter {
|
|
1370
1184
|
/** One or more `ListID` values. Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
1371
1185
|
ListID?: string[] | string;
|
|
1372
1186
|
/** A list of one or more `FullName` values. `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
1373
1187
|
FullName?: string[] | string;
|
|
1374
|
-
/**
|
|
1375
|
-
|
|
1376
|
-
/**
|
|
1377
|
-
|
|
1378
|
-
/** Selects objects modified on or after this date. See the note below regarding QBFC usage.For desktop versions of QuickBooks, the `FromModifiedDate` and `ToModifiedDate` must be between 1970-01-01 and 2038-01-19T03:14:07 (2038-01-18T19:14:07-08:00 PST). (The time portion of the field was not supported in qbXML version 1.0 or 1.1.) Also, for desktop versions of QuickBooks, if `FromModifiedDate` includes a date but not a time (for example, if you set `FromModifiedDate` to 2003-02-14), the time is assumed to be zero (2003-02-14T00:00:00). If you omit `FromModifiedDate`, it will be set to 1970-01-01T00:00:00 (1969-12-31T16:00:00-08:00 PST).For QBOE, the `FromModifiedDate` and `ToModifiedDate` must be between 1900-01-01T00:00:00 and 9999-12-31T00:00:00. If `FromModifiedDate` includes a date but not a time (for example, if you set `FromModifiedDate` to 2003-02-14), the time is assumed to be zero (2003-02-14T00:00:00). If you omit `FromModifiedDate`, it will be set to 1900-01-01T00:00:00.`Note`: When specifying this in QBFC, you need to supply the parameter `asDateOnly`, which is a Boolean. If `asDateOnly` is true, the date value will be represented as a date only (without a time). If `asDateOnly` is false, the date value will be represented as date and time, padded with zeros if necessary, and set to the beginning of the day if no time is provided. The `asDateOnly` parameter is especially useful in the `ToModifiedDate` field of a query: If `asDateOnly` is set to true in the `ToModifiedDate` field of a query, then the query includes elements modified up to the end of the day. If `asDateOnly` is false, the query includes elements modified up to the specified time (or up to the beginning of the day if no time is included). */
|
|
1379
|
-
FromModifiedDate?: string;
|
|
1380
|
-
/** Selects objects modified on or before this date. See the note below on QBFC usage.For desktop versions of QuickBooks, the `ToModifiedDate` and `FromModifiedDate` must be between 01/01/1970 and 2038-01-19T03:14:07 (2038-01-18T19:14:07-08:00 PST). (Note that the time portion of the field was not supported in qbXML version 1.0 or 1.1.) If `ToModifiedDate` includes a date but not a time (for example, if you set `ToModifiedDate` to 2003-02-14), the time is assumed to be the end of the day (2003-02-14T23:59:59). If you omit `ToModifiedDate` altogether, it will be set to 2038-01-19T03:14:07 (2038-01-18T19:14:07-08:00 PST).For QBOE, the `ToModifiedDate` and `FromModifiedDate` must be between 01/01/1900 and 9999-12-31T00:00:00. If `ToModifiedDate` includes a date but not a time (for example, if you set `ToModifiedDate` to 2003-02-14), the time is assumed to be the end of the day (2003-02-14T23:59:59). If you omit `ToModifiedDate` altogether, it will be set to 9999-12-31T00:00:00.`Note`: When specifying this in QBFC, you need to supply the parameter `asDateOnly`, which is a Boolean. If `asDateOnly` is true, the date value will be represented as a date only (without a time). If `asDateOnly` is false, the date value will be represented as date and time, padded with zeros if necessary, and set to the beginning of the day if no time is provided. The `asDateOnly` parameter is especially useful in the `ToModifiedDate` field of a query: If `asDateOnly` is set to true in the `ToModifiedDate` field of a query, then the query includes elements modified up to the end of the day. If `asDateOnly` is false, the query includes elements modified up to the specified time (or up to the beginning of the day if no time is included). */
|
|
1381
|
-
ToModifiedDate?: string;
|
|
1382
|
-
/** Filters according to the object’s `Name`. */
|
|
1383
|
-
NameFilter?: NameFilter;
|
|
1384
|
-
/** Filters according to the object’s `Name`. */
|
|
1385
|
-
NameRangeFilter?: NameRangeFilter;
|
|
1386
|
-
/** You use this if you want to limit the data that will be returned in the response. In this list, you specify the name of each top-level element or aggregate that you want to be returned in the response to the request. You cannot specify fields within an aggregate, for example, you cannot specify a `City` within an Address: you must specify Address and will get the entire address. The names specified in the list are not parsed, so you must be especially careful to supply valid names, properly cased. No error is returned in the status code if you specify an invalid name. Notice that if you want to return custom data or private data extensions, you must specify the `DataExtRet` element and you must supply the `OwnerID` set to either a value of 0 (custom data) or the GUID for the private data. */
|
|
1387
|
-
IncludeRetElement?: string[] | string;
|
|
1388
|
-
/** Zero or more `OwnerID` values. `OwnerID` refers to the owner of a data extension:If `OwnerID` is 0, this is a public data extension, also known as a custom field. Custom fields appear in the QuickBooks UI.If `OwnerID` is a GUID, for example {6B063959-81B0-4622-85D6-F548C8CCB517}, this field is a private data extension defined by an integrated application. Private data extensions do not appear in the QuickBooks UI. Note that `OwnerID` values are not case-sensitive, meaning that if you enter an `OwnerID` value with lower-case letters, the value will be saved and returned with upper-case letters. When you share a private 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. */
|
|
1389
|
-
OwnerID?: string[] | string;
|
|
1188
|
+
/** Allows you to filter for data that relates to the specified object and its descendants. */
|
|
1189
|
+
ListIDWithChildren?: string;
|
|
1190
|
+
/** Allows you to filter for data that relates to the specified object and its descendants. For names that do not have children, `FullNameWithChildren` is exactly the same as `FullName`. */
|
|
1191
|
+
FullNameWithChildren?: string;
|
|
1390
1192
|
}
|
|
1391
|
-
|
|
1392
|
-
|
|
1193
|
+
interface EntityRef {
|
|
1194
|
+
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
1195
|
+
ListID?: string;
|
|
1196
|
+
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
1197
|
+
FullName?: string;
|
|
1393
1198
|
}
|
|
1394
|
-
interface
|
|
1199
|
+
interface ErrorRecovery {
|
|
1200
|
+
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
1201
|
+
ListID?: string;
|
|
1202
|
+
/** Refers to the owner of a data extension:
|
|
1203
|
+
|
|
1204
|
+
If `OwnerID` is 0, this is a public data extension, also known as a custom field. Custom fields appear in the QuickBooks UI. If `OwnerID` is a GUID, for example `{6B063959-81B0-4622-85D6-F548C8CCB517}`, this field is a private data extension defined by an integrated application. Private data extensions do not appear in the QuickBooks UI.
|
|
1205
|
+
|
|
1206
|
+
Note that `OwnerID` values are not case-sensitive, meaning that if you enter an `OwnerID` value with lower-case letters, the value will be saved and returned with upper-case letters.
|
|
1207
|
+
|
|
1208
|
+
When you share a private 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. */
|
|
1209
|
+
OwnerID?: string;
|
|
1210
|
+
/** QuickBooks generates a unique `TxnID` for each transaction that is added to QuickBooks. A `TxnID` returned from a request can be used to refer to the transaction in subsequent requests.
|
|
1211
|
+
|
|
1212
|
+
Notice that you cannot supply the `TxnID` of a `TimeTracking` transaction to `TransactionQueryRq` requests. If you do, you get an error stating that no such record could be found, even though the transaction is in QuickBooks. This behavior reflects the behavior in the QuicKBooks UI in the Find window. */
|
|
1213
|
+
TxnID?: string;
|
|
1214
|
+
/** An identifying number for this transaction. */
|
|
1215
|
+
TxnNumber?: number;
|
|
1216
|
+
/** A number that the server generates and assigns to this object. Every time the object is changed, the server will change its `EditSequence` value. When you try to modify a list object, you must provide its `EditSequence`. The server compares the `EditSequence` you provide with the `EditSequence` in memory to make sure you are dealing with the latest copy of the object. If you are not, the server will reject the request and return an error. Because `EditSequence` is only used to check whether two objects match, there is no reason to interpret its value. */
|
|
1217
|
+
EditSequence?: string;
|
|
1218
|
+
/** Allows for the attachment of a user defined GUID value. */
|
|
1219
|
+
ExternalGUID?: string;
|
|
1220
|
+
}
|
|
1221
|
+
declare type Ethnicity = "AmericianIndian" | "Asian" | "Black" | "Hawaiian" | "Hispanic" | "TwoOrMoreRaces" | "White";
|
|
1222
|
+
declare type Exempt = "Exempt" | "NonExempt";
|
|
1223
|
+
declare type Gender = "Female" | "Male";
|
|
1224
|
+
interface ItemSalesTaxRef {
|
|
1395
1225
|
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
1396
1226
|
ListID?: string;
|
|
1397
1227
|
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
1398
1228
|
FullName?: string;
|
|
1399
1229
|
}
|
|
1400
|
-
interface
|
|
1230
|
+
interface ItemServiceRef {
|
|
1401
1231
|
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
1402
1232
|
ListID?: string;
|
|
1403
1233
|
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
1404
1234
|
FullName?: string;
|
|
1405
1235
|
}
|
|
1406
|
-
|
|
1407
|
-
|
|
1236
|
+
/** @default: None */
|
|
1237
|
+
declare type JobStatus = "Awarded" | "Closed" | "InProgress" | "None" | "NotAwarded" | "Pending";
|
|
1238
|
+
interface JobTypeRef {
|
|
1239
|
+
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
1240
|
+
ListID?: string;
|
|
1241
|
+
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
1242
|
+
FullName?: string;
|
|
1243
|
+
}
|
|
1244
|
+
interface JournalCreditLine {
|
|
1408
1245
|
/** Identification number of the transaction line. (`TxnLineID` is supported as of v2.0 of the SDK. With qbXML v1.0 and v1.1, `TxnLineID` is always returned as zero.) If you need to add a new transaction line in a transaction Mod request, you can do so by setting the `TxnLineID` to -1. */
|
|
1409
1246
|
TxnLineID?: string;
|
|
1410
1247
|
/** The Account list is the company file’s list of accounts. An `AccountRef` aggregate refers to one of these accounts. (If an `AccountRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored.) Special cases to note:In a Check message, `AccountRef` refers to the account from which the funds are being drawn for this check, for example, Checking or Savings.In an `ExpenseLineAdd` message, you must include `AccountRef` if the “Require accounts” check box is selected in the QuickBooks Accounting preferences. (It is selected by default.) In a `CreditCardCredit` message, `AccountRef` refers to the bank account or credit card account to which the credit is applied.In a `CreditCardCharge` message, `AccountRef` refers to the bank or credit card company to whom money is owed. How do you increase and decrease amounts in bank accounts? The following requests increase the balance in a bank account: Deposit Add `ReceivePaymentAdd` Journal Entry Add Sales `ReceiptAdd` The following requests decrease the balance in a bank account: `CheckAdd` Bill `PaymentCheckAdd` `JournalEntryAdd` */
|
|
@@ -1422,7 +1259,7 @@ interface JournalDebitLine {
|
|
|
1422
1259
|
/** The billing status of this item line or expense line. */
|
|
1423
1260
|
BillableStatus?: BillableStatus;
|
|
1424
1261
|
}
|
|
1425
|
-
interface
|
|
1262
|
+
interface JournalDebitLine {
|
|
1426
1263
|
/** Identification number of the transaction line. (`TxnLineID` is supported as of v2.0 of the SDK. With qbXML v1.0 and v1.1, `TxnLineID` is always returned as zero.) If you need to add a new transaction line in a transaction Mod request, you can do so by setting the `TxnLineID` to -1. */
|
|
1427
1264
|
TxnLineID?: string;
|
|
1428
1265
|
/** The Account list is the company file’s list of accounts. An `AccountRef` aggregate refers to one of these accounts. (If an `AccountRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored.) Special cases to note:In a Check message, `AccountRef` refers to the account from which the funds are being drawn for this check, for example, Checking or Savings.In an `ExpenseLineAdd` message, you must include `AccountRef` if the “Require accounts” check box is selected in the QuickBooks Accounting preferences. (It is selected by default.) In a `CreditCardCredit` message, `AccountRef` refers to the bank account or credit card account to which the credit is applied.In a `CreditCardCharge` message, `AccountRef` refers to the bank or credit card company to whom money is owed. How do you increase and decrease amounts in bank accounts? The following requests increase the balance in a bank account: Deposit Add `ReceivePaymentAdd` Journal Entry Add Sales `ReceiptAdd` The following requests decrease the balance in a bank account: `CheckAdd` Bill `PaymentCheckAdd` `JournalEntryAdd` */
|
|
@@ -1467,6 +1304,72 @@ export interface JournalEntryAddRq {
|
|
|
1467
1304
|
/** You use this if you want to limit the data that will be returned in the response. In this list, you specify the name of each top-level element or aggregate that you want to be returned in the response to the request. You cannot specify fields within an aggregate, for example, you cannot specify a `City` within an Address: you must specify Address and will get the entire address. The names specified in the list are not parsed, so you must be especially careful to supply valid names, properly cased. No error is returned in the status code if you specify an invalid name. Notice that if you want to return custom data or private data extensions, you must specify the `DataExtRet` element and you must supply the `OwnerID` set to either a value of 0 (custom data) or the GUID for the private data. */
|
|
1468
1305
|
IncludeRetElement?: string[] | string;
|
|
1469
1306
|
}
|
|
1307
|
+
export interface JournalEntryAddRs {
|
|
1308
|
+
JournalEntryRet?: JournalEntryRet;
|
|
1309
|
+
ErrorRecovery?: ErrorRecovery;
|
|
1310
|
+
}
|
|
1311
|
+
interface JournalEntryMod {
|
|
1312
|
+
/** QuickBooks generates a unique `TxnID` for each transaction that is added to QuickBooks. A `TxnID` returned from a request can be used to refer to the transaction in subsequent requests. Notice that you cannot supply the `TxnID` of a `TimeTracking` transaction to `TransactionQueryRq` requests. If you do, you get an error stating that no such record could be found, even though the transaction is in QuickBooks. This behavior reflects the behavior in the QuicKBooks UI in the Find window. */
|
|
1313
|
+
TxnID: string;
|
|
1314
|
+
/** A number that the server generates and assigns to this object. Every time the object is changed, the server will change its `EditSequence` value. When you try to modify a list object, you must provide its `EditSequence`. The server compares the `EditSequence` you provide with the `EditSequence` in memory to make sure you are dealing with the latest copy of the object. If you are not, the server will reject the request and return an error. Because `EditSequence` is only used to check whether two objects match, there is no reason to interpret its value. */
|
|
1315
|
+
EditSequence: string;
|
|
1316
|
+
/** The date of the transaction. In some cases, if you leave `TxnDate` out of an -Add message, QuickBooks will prefill `TxnDate` with the date of the last-saved transaction of the same type. */
|
|
1317
|
+
TxnDate?: string;
|
|
1318
|
+
/** A string of characters that refers to this transaction and that can be arbitrarily changed by the QuickBooks user. In a `BillPaymentCheckAdd` request, if you want to set the check number, use `RefNumber`.`Note` (especially relevant to `CheckAdd` requests): When `RefNumber` is left blank in an SDK transaction add request (that is, or ), the `RefNumber` will be left blank in QuickBooks. This behavior is new as of QBFC3. It used to select the next sequential reference number since the last one used by QuickBooks, as though no `RefNumber` had been provided. This is especially relevant to `CheckAdd` requests because with the current behavior, you will not know the number until the check is printed. */
|
|
1319
|
+
RefNumber?: string;
|
|
1320
|
+
/** When a change is an “adjustment,” the original information is retained, usually so an accountant can see the effects of the adjustment. */
|
|
1321
|
+
IsAdjustment?: boolean;
|
|
1322
|
+
/** Flag that indicates the amount being entered is in the home currency. */
|
|
1323
|
+
IsAmountsEnteredInHomeCurrency?: boolean;
|
|
1324
|
+
/** The currency object contains all of the information needed by QuickBooks to display and use. For built-in currencies, the name and currency code values are internationally accepted values and thus are not editable. The comma format is editable, as is the `IsActive` status. For user-defined currencies, every value in the object is editable including name and currency code. When used with `PriceLevels`, the `CurrencyRef` should only be used with “per item” price levels. */
|
|
1325
|
+
CurrencyRef?: CurrencyRef;
|
|
1326
|
+
/** The exchange rate is the market price for which this currency can be exchanged for the currency used by the QuickBooks company file as the “home” currency. The exchange rate should be considered a snapshot of the rates in effect at the `AsOfDate`. You can update the exchange rate using the exchange rate property when you add a transaction. However, you need to obtain and supply the exchange rate. If you are using USD (United States Dollars) as the home currency and are connected to the Internet, you can download the current exchange rates for all active currencies automatically in the QuickBooks UI by selecting Lists->Currency->Activities->Download latest exchange rates. (Currently, you can’t do this in the SDK.) */
|
|
1327
|
+
ExchangeRate?: number;
|
|
1328
|
+
/** `IORJournalLineList` The list of journal lines in a `JournalMod` request – note that in a mod request, inclding one line means that you must include all lines, modified or not. */
|
|
1329
|
+
JournalLineMod?: JournalLineMod | JournalLineMod[];
|
|
1330
|
+
}
|
|
1331
|
+
export interface JournalEntryModRq {
|
|
1332
|
+
JournalEntryMod: JournalEntryMod;
|
|
1333
|
+
/** You use this if you want to limit the data that will be returned in the response. In this list, you specify the name of each top-level element or aggregate that you want to be returned in the response to the request. You cannot specify fields within an aggregate, for example, you cannot specify a `City` within an Address: you must specify Address and will get the entire address. The names specified in the list are not parsed, so you must be especially careful to supply valid names, properly cased. No error is returned in the status code if you specify an invalid name. Notice that if you want to return custom data or private data extensions, you must specify the `DataExtRet` element and you must supply the `OwnerID` set to either a value of 0 (custom data) or the GUID for the private data. */
|
|
1334
|
+
IncludeRetElement?: string[] | string;
|
|
1335
|
+
}
|
|
1336
|
+
export interface JournalEntryModRs {
|
|
1337
|
+
JournalEntryRet?: JournalEntryRet;
|
|
1338
|
+
ErrorRecovery?: ErrorRecovery;
|
|
1339
|
+
}
|
|
1340
|
+
export interface JournalEntryQueryRq {
|
|
1341
|
+
/** One or more `TxnID` values. QuickBooks generates a unique `TxnID` for each transaction that is added to QuickBooks. Notice that you cannot supply the `TxnID` of a `TimeTracking` transaction to `TransactionQuery` requests. If you do, you get an error stating that no such record could be found, even though the transaction is in QuickBooks. This behavior reflects the behavior in the QuicKBooks UI in the Find window. */
|
|
1342
|
+
TxnID?: string[] | string;
|
|
1343
|
+
/** A list of one or more `RefNumber` values. A `RefNumber` is a string of characters that refers to a transaction and that can be arbitrarily changed by the QuickBooks user. Note (especially relevant to `CheckAdd` requests): When `RefNumber` is left blank in an SDK transaction add request, the `RefNumber` will be left blank in QuickBooks. This behavior is new as of QBFC3. It used to select the next sequential reference number since the last one used by QuickBooks, as though no `RefNumber` had been provided. This is especially relevant to `CheckAdd` requests because with the current behavior, you will not know the number until the check is printed. */
|
|
1344
|
+
RefNumber?: string[] | string;
|
|
1345
|
+
/** A list of one or more case sensitive `RefNumber` values. A `RefNumber` is a string of characters that refers to a transaction and that can be arbitrarily changed by the QuickBooks user. You should use this case sensitive ref number list rather than the older `RefNumber` list, because it provides much better performance in certain circumstances. The older `refNumber` list provided slow performance if the `refNumber` values contained letters, not just digits. This `RefNumberCaseSensitive` list, new in SDK 4.0, eliminates this performance hit. */
|
|
1346
|
+
RefNumberCaseSensitive?: string[] | string;
|
|
1347
|
+
/** Limits the number of objects that a query returns. (To get a count of how many objects could possibly be returned, use the `metaData` query attribute.) If you include a `MaxReturned` value, it must be at least 1. */
|
|
1348
|
+
MaxReturned?: number;
|
|
1349
|
+
/** Filters according to the dates when transactions were last modified. The `ModifiedDateRangeFilter` aggregate is not required to contain any elements, but if it is empty, we recommend that you leave it out altogether. Note that the time portion of the `FromModifiedDate` and `ToModifiedDate` fields was not supported in qbXML version 1.0 or 1.1. (To filter according to the dates when transactions were deleted, use a `TxnDeletedQuery` message.) */
|
|
1350
|
+
ModifiedDateRangeFilter?: ModifiedDateRangeFilter;
|
|
1351
|
+
/** Filters according to the original transaction dates. */
|
|
1352
|
+
TxnDateRangeFilter?: TxnDateRangeFilter;
|
|
1353
|
+
/** An entity refers to a person on the QuickBooks Customer list, Vendor list, Employee list, or Other Names list. You can use an `EntityQuery` request to get information about all the entities that are set up in the QuickBooks file. In an `ARRefundCreditCard` query, this must be a customer/customer job. */
|
|
1354
|
+
EntityFilter?: EntityFilter;
|
|
1355
|
+
/** Filters according to the account name or `ListID`. If the “Use account numbers” preference is enabled in the QuickBooks company file, you can specify an account number (instead of an account name) for `FullName` and get the account you’re looking for. But if numbers have been used as account names, confusion could arise. For example, if you queried for an account named 2050, and 2050 happened to be the account number of a totally different account, the query would not return what you asked for (the account named 2050), but instead would return the account with the account number 2050. This problem will not happen if the “Use account numbers” preference is turned off in the QuickBooks file, orthe account name exactly matches the account number. (In this case, query would return the correct account either way.) To avoid this problem: Do not name an account using a number unless the number exactly matches the account’s account number. If an account name must contain a number that does not match its own account number, have the QuickBooks user change the account’s name slightly, for example `to` 2050a. */
|
|
1356
|
+
AccountFilter?: AccountFilter;
|
|
1357
|
+
/** Filters according to `RefNumber`. */
|
|
1358
|
+
RefNumberFilter?: RefNumberFilter;
|
|
1359
|
+
/** Filters according to `RefNumber`. The filtering code will do a numerical comparison (if `FromRefNumber` and `ToRefNumber` only contain digits) or a lexicographical comparison (if either `FromRefNumber` or `ToRefNumber` contain any nondigit characters). In the first situation, if you need to query for a `RefNumber` that is larger than the maximum long integer value of 2147483647, one workaround is to specify a `FromRefNumber` that is less than or equal to 2147483647 without specifying a `ToRefNumber`. */
|
|
1360
|
+
RefNumberRangeFilter?: RefNumberRangeFilter;
|
|
1361
|
+
/** Filters by the specified currency. */
|
|
1362
|
+
CurrencyFilter?: CurrencyFilter;
|
|
1363
|
+
/** This filter allows you to omit line items from a query response to get a smaller result. The default value is false, so line items are omitted by default. Set `IncludeLineItems` to true to include line items in the response if you don’t mind getting a larger result. */
|
|
1364
|
+
IncludeLineItems?: boolean;
|
|
1365
|
+
/** You use this if you want to limit the data that will be returned in the response. In this list, you specify the name of each top-level element or aggregate that you want to be returned in the response to the request. You cannot specify fields within an aggregate, for example, you cannot specify a `City` within an Address: you must specify Address and will get the entire address. The names specified in the list are not parsed, so you must be especially careful to supply valid names, properly cased. No error is returned in the status code if you specify an invalid name. Notice that if you want to return custom data or private data extensions, you must specify the `DataExtRet` element and you must supply the `OwnerID` set to either a value of 0 (custom data) or the GUID for the private data. */
|
|
1366
|
+
IncludeRetElement?: string[] | string;
|
|
1367
|
+
/** Zero or more `OwnerID` values. `OwnerID` refers to the owner of a data extension:If `OwnerID` is 0, this is a public data extension, also known as a custom field. Custom fields appear in the QuickBooks UI.If `OwnerID` is a GUID, for example `{6B063959-81B0-4622-85D6-F548C8CCB517}`, this field is a private data extension defined by an integrated application. Private data extensions do not appear in the QuickBooks UI. Note that `OwnerID` values are not case-sensitive, meaning that if you enter an `OwnerID` value with lower-case letters, the value will be saved and returned with upper-case letters. When you share a private 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. */
|
|
1368
|
+
OwnerID?: string[] | string;
|
|
1369
|
+
}
|
|
1370
|
+
export interface JournalEntryQueryRs {
|
|
1371
|
+
JournalEntryRet?: JournalEntryRet | JournalEntryRet[];
|
|
1372
|
+
}
|
|
1470
1373
|
interface JournalEntryRet {
|
|
1471
1374
|
/** QuickBooks generates a unique `TxnID` for each transaction that is added to QuickBooks. A `TxnID` returned from a request can be used to refer to the transaction in subsequent requests. Notice that you cannot supply the `TxnID` of a `TimeTracking` transaction to `TransactionQueryRq` requests. If you do, you get an error stating that no such record could be found, even though the transaction is in QuickBooks. This behavior reflects the behavior in the QuicKBooks UI in the Find window. */
|
|
1472
1375
|
TxnID: string;
|
|
@@ -1501,11 +1404,6 @@ interface JournalEntryRet {
|
|
|
1501
1404
|
/** A list of `IDataExtRet` objects, each of which represents a field that has been added to QuickBooks as a data extension. */
|
|
1502
1405
|
DataExtRet?: DataExtRet | DataExtRet[];
|
|
1503
1406
|
}
|
|
1504
|
-
export interface JournalEntryAddRs {
|
|
1505
|
-
JournalEntryRet?: JournalEntryRet;
|
|
1506
|
-
ErrorRecovery?: ErrorRecovery;
|
|
1507
|
-
}
|
|
1508
|
-
declare type JournalLineType = "Credit" | "Debit";
|
|
1509
1407
|
interface JournalLineMod {
|
|
1510
1408
|
/** Identification number of the transaction line. (`TxnLineID` is supported as of v2.0 of the SDK. With qbXML v1.0 and v1.1, `TxnLineID` is always returned as zero.) If you need to add a new transaction line in a transaction Mod request, you can do so by setting the `TxnLineID` to -1. */
|
|
1511
1409
|
TxnLineID: string;
|
|
@@ -1526,69 +1424,71 @@ interface JournalLineMod {
|
|
|
1526
1424
|
/** The billing status of this item line or expense line. */
|
|
1527
1425
|
BillableStatus?: BillableStatus;
|
|
1528
1426
|
}
|
|
1529
|
-
|
|
1530
|
-
|
|
1531
|
-
|
|
1532
|
-
|
|
1533
|
-
EditSequence: string;
|
|
1534
|
-
/** The date of the transaction. In some cases, if you leave `TxnDate` out of an -Add message, QuickBooks will prefill `TxnDate` with the date of the last-saved transaction of the same type. */
|
|
1535
|
-
TxnDate?: string;
|
|
1536
|
-
/** A string of characters that refers to this transaction and that can be arbitrarily changed by the QuickBooks user. In a `BillPaymentCheckAdd` request, if you want to set the check number, use `RefNumber`.`Note` (especially relevant to `CheckAdd` requests): When `RefNumber` is left blank in an SDK transaction add request (that is, or ), the `RefNumber` will be left blank in QuickBooks. This behavior is new as of QBFC3. It used to select the next sequential reference number since the last one used by QuickBooks, as though no `RefNumber` had been provided. This is especially relevant to `CheckAdd` requests because with the current behavior, you will not know the number until the check is printed. */
|
|
1537
|
-
RefNumber?: string;
|
|
1538
|
-
/** When a change is an “adjustment,” the original information is retained, usually so an accountant can see the effects of the adjustment. */
|
|
1539
|
-
IsAdjustment?: boolean;
|
|
1540
|
-
/** Flag that indicates the amount being entered is in the home currency. */
|
|
1541
|
-
IsAmountsEnteredInHomeCurrency?: boolean;
|
|
1542
|
-
/** The currency object contains all of the information needed by QuickBooks to display and use. For built-in currencies, the name and currency code values are internationally accepted values and thus are not editable. The comma format is editable, as is the `IsActive` status. For user-defined currencies, every value in the object is editable including name and currency code. When used with `PriceLevels`, the `CurrencyRef` should only be used with “per item” price levels. */
|
|
1543
|
-
CurrencyRef?: CurrencyRef;
|
|
1544
|
-
/** The exchange rate is the market price for which this currency can be exchanged for the currency used by the QuickBooks company file as the “home” currency. The exchange rate should be considered a snapshot of the rates in effect at the `AsOfDate`. You can update the exchange rate using the exchange rate property when you add a transaction. However, you need to obtain and supply the exchange rate. If you are using USD (United States Dollars) as the home currency and are connected to the Internet, you can download the current exchange rates for all active currencies automatically in the QuickBooks UI by selecting Lists->Currency->Activities->Download latest exchange rates. (Currently, you can’t do this in the SDK.) */
|
|
1545
|
-
ExchangeRate?: number;
|
|
1546
|
-
/** `IORJournalLineList` The list of journal lines in a `JournalMod` request – note that in a mod request, inclding one line means that you must include all lines, modified or not. */
|
|
1547
|
-
JournalLineMod?: JournalLineMod | JournalLineMod[];
|
|
1548
|
-
}
|
|
1549
|
-
export interface JournalEntryModRq {
|
|
1550
|
-
JournalEntryMod: JournalEntryMod;
|
|
1551
|
-
/** You use this if you want to limit the data that will be returned in the response. In this list, you specify the name of each top-level element or aggregate that you want to be returned in the response to the request. You cannot specify fields within an aggregate, for example, you cannot specify a `City` within an Address: you must specify Address and will get the entire address. The names specified in the list are not parsed, so you must be especially careful to supply valid names, properly cased. No error is returned in the status code if you specify an invalid name. Notice that if you want to return custom data or private data extensions, you must specify the `DataExtRet` element and you must supply the `OwnerID` set to either a value of 0 (custom data) or the GUID for the private data. */
|
|
1552
|
-
IncludeRetElement?: string[] | string;
|
|
1553
|
-
}
|
|
1554
|
-
export interface JournalEntryModRs {
|
|
1555
|
-
JournalEntryRet?: JournalEntryRet;
|
|
1556
|
-
ErrorRecovery?: ErrorRecovery;
|
|
1557
|
-
}
|
|
1427
|
+
declare type JournalLineType = "Credit" | "Debit";
|
|
1428
|
+
declare type KeyEmployee = "No" | "Yes";
|
|
1429
|
+
declare type MatchCriterion = "Contains" | "EndsWith" | "StartsWith";
|
|
1430
|
+
declare type MilitaryStatus = "Active" | "Reserve";
|
|
1558
1431
|
interface ModifiedDateRangeFilter {
|
|
1559
1432
|
/** Selects objects modified on or after this date. See the note below regarding QBFC usage.For desktop versions of QuickBooks, the `FromModifiedDate` and `ToModifiedDate` must be between 1970-01-01 and 2038-01-19T03:14:07 (2038-01-18T19:14:07-08:00 PST). (The time portion of the field was not supported in qbXML version 1.0 or 1.1.) Also, for desktop versions of QuickBooks, if `FromModifiedDate` includes a date but not a time (for example, if you set `FromModifiedDate` to 2003-02-14), the time is assumed to be zero (2003-02-14T00:00:00). If you omit `FromModifiedDate`, it will be set to 1970-01-01T00:00:00 (1969-12-31T16:00:00-08:00 PST).For QBOE, the `FromModifiedDate` and `ToModifiedDate` must be between 1900-01-01T00:00:00 and 9999-12-31T00:00:00. If `FromModifiedDate` includes a date but not a time (for example, if you set `FromModifiedDate` to 2003-02-14), the time is assumed to be zero (2003-02-14T00:00:00). If you omit `FromModifiedDate`, it will be set to 1900-01-01T00:00:00.`Note`: When specifying this in QBFC, you need to supply the parameter `asDateOnly`, which is a Boolean. If `asDateOnly` is true, the date value will be represented as a date only (without a time). If `asDateOnly` is false, the date value will be represented as date and time, padded with zeros if necessary, and set to the beginning of the day if no time is provided. The `asDateOnly` parameter is especially useful in the `ToModifiedDate` field of a query: If `asDateOnly` is set to true in the `ToModifiedDate` field of a query, then the query includes elements modified up to the end of the day. If `asDateOnly` is false, the query includes elements modified up to the specified time (or up to the beginning of the day if no time is included). */
|
|
1560
1433
|
FromModifiedDate?: string;
|
|
1561
1434
|
/** Selects objects modified on or before this date. See the note below on QBFC usage.For desktop versions of QuickBooks, the `ToModifiedDate` and `FromModifiedDate` must be between 01/01/1970 and 2038-01-19T03:14:07 (2038-01-18T19:14:07-08:00 PST). (Note that the time portion of the field was not supported in qbXML version 1.0 or 1.1.) If `ToModifiedDate` includes a date but not a time (for example, if you set `ToModifiedDate` to 2003-02-14), the time is assumed to be the end of the day (2003-02-14T23:59:59). If you omit `ToModifiedDate` altogether, it will be set to 2038-01-19T03:14:07 (2038-01-18T19:14:07-08:00 PST).For QBOE, the `ToModifiedDate` and `FromModifiedDate` must be between 01/01/1900 and 9999-12-31T00:00:00. If `ToModifiedDate` includes a date but not a time (for example, if you set `ToModifiedDate` to 2003-02-14), the time is assumed to be the end of the day (2003-02-14T23:59:59). If you omit `ToModifiedDate` altogether, it will be set to 9999-12-31T00:00:00.`Note`: When specifying this in QBFC, you need to supply the parameter `asDateOnly`, which is a Boolean. If `asDateOnly` is true, the date value will be represented as a date only (without a time). If `asDateOnly` is false, the date value will be represented as date and time, padded with zeros if necessary, and set to the beginning of the day if no time is provided. The `asDateOnly` parameter is especially useful in the `ToModifiedDate` field of a query: If `asDateOnly` is set to true in the `ToModifiedDate` field of a query, then the query includes elements modified up to the end of the day. If `asDateOnly` is false, the query includes elements modified up to the specified time (or up to the beginning of the day if no time is included). */
|
|
1562
1435
|
ToModifiedDate?: string;
|
|
1563
1436
|
}
|
|
1564
|
-
|
|
1565
|
-
|
|
1566
|
-
|
|
1567
|
-
|
|
1568
|
-
|
|
1569
|
-
ToTxnDate?: string;
|
|
1570
|
-
/** Refers to the transaction date, not the last modification date. Do not include `DateMacro` if either `FromModifedDate` or `ToModifiedDate` are specified. If a query does not specify `DateMacro`, `FromModifedDate`, or `ToModifiedDate`, it includes all dates. `DateMacro` values, in alphabetical order, that are new with QBFC3: `dmAll`, `dmdmLastCalendarQuarter`, `dmdmLastCalendarQuarterToDate`, `dmdmLastCalendarYear`, `dmdmLastCalendarYearToDate`, `dmLastFiscalQuarterToDate`, `dmLastFiscalYearToDate`, `dmLastMonthToDate`, `dmLastWeekToDate`, `dmNextCalendarQuarter`, `dmNextCalendarYear`, `dmNextFiscalQuarter`, `dmNextFiscalYear`, `dmNextFourWeeks`, `dmNextMonth`, `dmNextWeek`, `dmThisCalendarQuarter`, `dmThisCalendarQuarterToDate`, `dmThisCalendarYear`, dm `ThisCalendarYearToDate`, `dmThisFiscalQuarter`, `dmThisFiscalYear`, `dmThisMonth`, `dmThisWeek`, `dmThisWeekToDate`, `dmToday`, `dmYesterday` The list given when you click `IQBENDateMacroType` shows the complete list of valid version 3.0 values. */
|
|
1571
|
-
DateMacro?: DateMacro;
|
|
1437
|
+
interface NameFilter {
|
|
1438
|
+
/** The criterion to match. */
|
|
1439
|
+
MatchCriterion: MatchCriterion;
|
|
1440
|
+
/** The string to match. */
|
|
1441
|
+
Name: string;
|
|
1572
1442
|
}
|
|
1573
|
-
interface
|
|
1574
|
-
/**
|
|
1575
|
-
|
|
1576
|
-
/**
|
|
1577
|
-
|
|
1578
|
-
/** Allows you to filter for data that relates to the specified object and its descendants. */
|
|
1579
|
-
ListIDWithChildren?: string;
|
|
1580
|
-
/** Allows you to filter for data that relates to the specified object and its descendants. For names that do not have children, `FullNameWithChildren` is exactly the same as `FullName`. */
|
|
1581
|
-
FullNameWithChildren?: string;
|
|
1443
|
+
interface NameRangeFilter {
|
|
1444
|
+
/** The first name or item in the search range. If `FromName` is omitted, the range will begin with first name on the list. */
|
|
1445
|
+
FromName?: string;
|
|
1446
|
+
/** The final name or item in the search range. If `ToName` is omitted, the range will end with last name on the list. */
|
|
1447
|
+
ToName?: string;
|
|
1582
1448
|
}
|
|
1583
|
-
|
|
1584
|
-
|
|
1585
|
-
|
|
1586
|
-
/**
|
|
1587
|
-
|
|
1588
|
-
/**
|
|
1589
|
-
|
|
1590
|
-
|
|
1591
|
-
|
|
1449
|
+
declare type OnFile = "No" | "Yes";
|
|
1450
|
+
declare type Operator = "Equal" | "GreaterThan" | "GreaterThanEqual" | "LessThan" | "LessThanEqual";
|
|
1451
|
+
interface ParentRef {
|
|
1452
|
+
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
1453
|
+
ListID?: string;
|
|
1454
|
+
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
1455
|
+
FullName?: string;
|
|
1456
|
+
}
|
|
1457
|
+
declare type PartOrFullTime = "FullTime" | "PartTime";
|
|
1458
|
+
declare type PayPeriod = "Biweekly" | "Daily" | "Monthly" | "Quarterly" | "Semimonthly" | "Weekly" | "Yearly";
|
|
1459
|
+
interface PayrollItemWageRef {
|
|
1460
|
+
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
1461
|
+
ListID?: string;
|
|
1462
|
+
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
1463
|
+
FullName?: string;
|
|
1464
|
+
}
|
|
1465
|
+
/** @default: None */
|
|
1466
|
+
declare type PreferredDeliveryMethod = "Email" | "Fax" | "None";
|
|
1467
|
+
interface PreferredPaymentMethodRef {
|
|
1468
|
+
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
1469
|
+
ListID?: string;
|
|
1470
|
+
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
1471
|
+
FullName?: string;
|
|
1472
|
+
}
|
|
1473
|
+
interface PrefillAccountRef {
|
|
1474
|
+
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
1475
|
+
ListID?: string;
|
|
1476
|
+
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
1477
|
+
FullName?: string;
|
|
1478
|
+
}
|
|
1479
|
+
interface PriceLevelRef {
|
|
1480
|
+
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
1481
|
+
ListID?: string;
|
|
1482
|
+
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
1483
|
+
FullName?: string;
|
|
1484
|
+
}
|
|
1485
|
+
interface PrimaryContact {
|
|
1486
|
+
/** The name of the contact. */
|
|
1487
|
+
ContactName: string;
|
|
1488
|
+
/** The value of the contact field. */
|
|
1489
|
+
ContactValue: string;
|
|
1490
|
+
/** Relationship of emergency contact information to the employee. */
|
|
1491
|
+
Relation?: Relation;
|
|
1592
1492
|
}
|
|
1593
1493
|
interface RefNumberFilter {
|
|
1594
1494
|
/** The criterion to match. */
|
|
@@ -1602,40 +1502,74 @@ interface RefNumberRangeFilter {
|
|
|
1602
1502
|
/** The final `RefNumber` in the search range. If `ToRefNumber` is omitted, the range will end with last number on the list. */
|
|
1603
1503
|
ToRefNumber?: string;
|
|
1604
1504
|
}
|
|
1605
|
-
|
|
1606
|
-
|
|
1607
|
-
|
|
1608
|
-
|
|
1609
|
-
|
|
1610
|
-
|
|
1611
|
-
|
|
1612
|
-
|
|
1613
|
-
MaxReturned?: number;
|
|
1614
|
-
/** Filters according to the dates when transactions were last modified. The `ModifiedDateRangeFilter` aggregate is not required to contain any elements, but if it is empty, we recommend that you leave it out altogether. Note that the time portion of the `FromModifiedDate` and `ToModifiedDate` fields was not supported in qbXML version 1.0 or 1.1. (To filter according to the dates when transactions were deleted, use a `TxnDeletedQuery` message.) */
|
|
1615
|
-
ModifiedDateRangeFilter?: ModifiedDateRangeFilter;
|
|
1616
|
-
/** Filters according to the original transaction dates. */
|
|
1617
|
-
TxnDateRangeFilter?: TxnDateRangeFilter;
|
|
1618
|
-
/** An entity refers to a person on the QuickBooks Customer list, Vendor list, Employee list, or Other Names list. You can use an `EntityQuery` request to get information about all the entities that are set up in the QuickBooks file. In an `ARRefundCreditCard` query, this must be a customer/customer job. */
|
|
1619
|
-
EntityFilter?: EntityFilter;
|
|
1620
|
-
/** Filters according to the account name or `ListID`. If the “Use account numbers” preference is enabled in the QuickBooks company file, you can specify an account number (instead of an account name) for `FullName` and get the account you’re looking for. But if numbers have been used as account names, confusion could arise. For example, if you queried for an account named 2050, and 2050 happened to be the account number of a totally different account, the query would not return what you asked for (the account named 2050), but instead would return the account with the account number 2050. This problem will not happen if the “Use account numbers” preference is turned off in the QuickBooks file, orthe account name exactly matches the account number. (In this case, query would return the correct account either way.) To avoid this problem: Do not name an account using a number unless the number exactly matches the account’s account number. If an account name must contain a number that does not match its own account number, have the QuickBooks user change the account’s name slightly, for example `to` 2050a. */
|
|
1621
|
-
AccountFilter?: AccountFilter;
|
|
1622
|
-
/** Filters according to `RefNumber`. */
|
|
1623
|
-
RefNumberFilter?: RefNumberFilter;
|
|
1624
|
-
/** Filters according to `RefNumber`. The filtering code will do a numerical comparison (if `FromRefNumber` and `ToRefNumber` only contain digits) or a lexicographical comparison (if either `FromRefNumber` or `ToRefNumber` contain any nondigit characters). In the first situation, if you need to query for a `RefNumber` that is larger than the maximum long integer value of 2147483647, one workaround is to specify a `FromRefNumber` that is less than or equal to 2147483647 without specifying a `ToRefNumber`. */
|
|
1625
|
-
RefNumberRangeFilter?: RefNumberRangeFilter;
|
|
1626
|
-
/** Filters by the specified currency. */
|
|
1627
|
-
CurrencyFilter?: CurrencyFilter;
|
|
1628
|
-
/** This filter allows you to omit line items from a query response to get a smaller result. The default value is false, so line items are omitted by default. Set `IncludeLineItems` to true to include line items in the response if you don’t mind getting a larger result. */
|
|
1629
|
-
IncludeLineItems?: boolean;
|
|
1630
|
-
/** You use this if you want to limit the data that will be returned in the response. In this list, you specify the name of each top-level element or aggregate that you want to be returned in the response to the request. You cannot specify fields within an aggregate, for example, you cannot specify a `City` within an Address: you must specify Address and will get the entire address. The names specified in the list are not parsed, so you must be especially careful to supply valid names, properly cased. No error is returned in the status code if you specify an invalid name. Notice that if you want to return custom data or private data extensions, you must specify the `DataExtRet` element and you must supply the `OwnerID` set to either a value of 0 (custom data) or the GUID for the private data. */
|
|
1631
|
-
IncludeRetElement?: string[] | string;
|
|
1632
|
-
/** Zero or more `OwnerID` values. `OwnerID` refers to the owner of a data extension:If `OwnerID` is 0, this is a public data extension, also known as a custom field. Custom fields appear in the QuickBooks UI.If `OwnerID` is a GUID, for example {6B063959-81B0-4622-85D6-F548C8CCB517}, this field is a private data extension defined by an integrated application. Private data extensions do not appear in the QuickBooks UI. Note that `OwnerID` values are not case-sensitive, meaning that if you enter an `OwnerID` value with lower-case letters, the value will be saved and returned with upper-case letters. When you share a private 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. */
|
|
1633
|
-
OwnerID?: string[] | string;
|
|
1505
|
+
declare type Relation = "Brother" | "Daughter" | "Father" | "Friend" | "Mother" | "Other" | "Partner" | "Sister" | "Son" | "Spouse";
|
|
1506
|
+
/** @default: Quarterly */
|
|
1507
|
+
declare type ReportingPeriod = "Monthly" | "Quarterly";
|
|
1508
|
+
interface SalesRepRef {
|
|
1509
|
+
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
1510
|
+
ListID?: string;
|
|
1511
|
+
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
1512
|
+
FullName?: string;
|
|
1634
1513
|
}
|
|
1635
|
-
|
|
1636
|
-
|
|
1514
|
+
interface SalesTaxCodeRef {
|
|
1515
|
+
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
1516
|
+
ListID?: string;
|
|
1517
|
+
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
1518
|
+
FullName?: string;
|
|
1637
1519
|
}
|
|
1638
|
-
|
|
1520
|
+
/** @default: Canada */
|
|
1521
|
+
declare type SalesTaxCountry = "Australia" | "Canada" | "UK" | "US";
|
|
1522
|
+
interface SalesTaxReturnRef {
|
|
1523
|
+
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
1524
|
+
ListID?: string;
|
|
1525
|
+
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
1526
|
+
FullName?: string;
|
|
1527
|
+
}
|
|
1528
|
+
interface SecondaryContact {
|
|
1529
|
+
/** The name of the contact. */
|
|
1530
|
+
ContactName: string;
|
|
1531
|
+
/** The value of the contact field. */
|
|
1532
|
+
ContactValue: string;
|
|
1533
|
+
/** Relationship of emergency contact information to the employee. */
|
|
1534
|
+
Relation?: Relation;
|
|
1535
|
+
}
|
|
1536
|
+
interface ShipAddress {
|
|
1537
|
+
/** The first line of an address. */
|
|
1538
|
+
Addr1?: string;
|
|
1539
|
+
/** The second line of an address (if a second line is needed). */
|
|
1540
|
+
Addr2?: string;
|
|
1541
|
+
/** The third line of an address (if a third line is needed). */
|
|
1542
|
+
Addr3?: string;
|
|
1543
|
+
/** The fourth line of an address (if a fourth line is needed). */
|
|
1544
|
+
Addr4?: string;
|
|
1545
|
+
/** The fifth line of an address (if a fifth line is needed). */
|
|
1546
|
+
Addr5?: string;
|
|
1547
|
+
/** The city name in an address. */
|
|
1548
|
+
City?: string;
|
|
1549
|
+
/** The state name in an address. */
|
|
1550
|
+
State?: string;
|
|
1551
|
+
/** The postal code in an address. */
|
|
1552
|
+
PostalCode?: string;
|
|
1553
|
+
/** The country name in an address, or, in returned Host information (`HostRet` or `HostInfo`), the country for which this edition of QuickBooks was designed. (Possible values are US, CA, UK, and AU.) */
|
|
1554
|
+
Country?: string;
|
|
1555
|
+
/** In a `BillAddress` or `ShipAddress` aggregate, the `Note` field value is written at the bottom of the address in the form in which it appears, such as the invoice form. */
|
|
1556
|
+
Note?: string;
|
|
1557
|
+
}
|
|
1558
|
+
interface ShipAddressBlock {
|
|
1559
|
+
/** The first line of an address. */
|
|
1560
|
+
Addr1?: string;
|
|
1561
|
+
/** The second line of an address (if a second line is needed). */
|
|
1562
|
+
Addr2?: string;
|
|
1563
|
+
/** The third line of an address (if a third line is needed). */
|
|
1564
|
+
Addr3?: string;
|
|
1565
|
+
/** The fourth line of an address (if a fourth line is needed). */
|
|
1566
|
+
Addr4?: string;
|
|
1567
|
+
/** The fifth line of an address (if a fifth line is needed). */
|
|
1568
|
+
Addr5?: string;
|
|
1569
|
+
}
|
|
1570
|
+
interface ShipToAddress {
|
|
1571
|
+
/** The case-insensitive name of a list object, not including the names of its ancestors. `Name` must be unique, unless it is the `Name` of a “hierarchical” list object. List objects in different hierarchies can have duplicate names because their `FullNames` will still be unique. For example, two objects could both have the `Name` kitchen, but they could have unique `FullNames`, such as Job12:kitchen and Baker:kitchen. For built-in currencies, `Name` is the internationally accepted currency name and is not editable. */
|
|
1572
|
+
Name: string;
|
|
1639
1573
|
/** The first line of an address. */
|
|
1640
1574
|
Addr1?: string;
|
|
1641
1575
|
/** The second line of an address (if a second line is needed). */
|
|
@@ -1656,38 +1590,213 @@ interface VendorAddress {
|
|
|
1656
1590
|
Country?: string;
|
|
1657
1591
|
/** In a `BillAddress` or `ShipAddress` aggregate, the `Note` field value is written at the bottom of the address in the form in which it appears, such as the invoice form. */
|
|
1658
1592
|
Note?: string;
|
|
1593
|
+
/** Flag that address is the default ship to address. */
|
|
1594
|
+
DefaultShipTo?: boolean;
|
|
1595
|
+
}
|
|
1596
|
+
interface SickHours {
|
|
1597
|
+
/** The total number of hours currently available for the employee to use. If this value is empty, it will default to 0. */
|
|
1598
|
+
HoursAvailable?: string;
|
|
1599
|
+
/** Indicates how an employee accrues time off. If you include a blank `AccrualPeriod` element in an `EmployeeMod` message, you’ll receive an error. The default value is whatever the QuickBooks user has set in the QuickBooks Employee Preferences. */
|
|
1600
|
+
AccrualPeriod?: AccrualPeriod;
|
|
1601
|
+
/** The number of hours that the employee will accrue per accrual period. The default value is whatever the QuickBooks user has set in the QuickBooks Employee Preferences. */
|
|
1602
|
+
HoursAccrued?: string;
|
|
1603
|
+
/** The maximum number of hours that the employee can accrue. (QuickBooks itself does not enforce this limit, however. `HoursAvailable` can be greater than `MaximumHours`.) The default value is whatever the QuickBooks user has set in the QuickBooks Employee Preferences. */
|
|
1604
|
+
MaximumHours?: string;
|
|
1605
|
+
/** Indicates whether or not the hours accrued resets to zero at the beginning of the new year. If you include a blank `IsResettingHoursEachNewYear` element in an `EmployeeMod` message, you’ll receive an error. */
|
|
1606
|
+
IsResettingHoursEachNewYear?: boolean;
|
|
1607
|
+
/** When used in the `SickHours` or `VacationHours` aggregates, refers to the number of sick leave or vacation hours used in the current year. */
|
|
1608
|
+
HoursUsed?: string;
|
|
1609
|
+
/** When used in the `SickHours` or `VacationHours` aggregates, refers to the date on which sick leave or vacation hours in the current year began to accrue. */
|
|
1610
|
+
AccrualStartDate?: string;
|
|
1611
|
+
}
|
|
1612
|
+
declare type SpecialAccountType = "AccountsPayable" | "AccountsReceivable" | "CondenseItemAdjustmentExpenses" | "CostOfGoodsSold" | "DirectDepositLiabilities" | "Estimates" | "ExchangeGainLoss" | "InventoryAssets" | "ItemReceiptAccount" | "OpeningBalanceEquity" | "PayrollExpenses" | "PayrollLiabilities" | "PettyCash" | "PurchaseOrders" | "ReconciliationDifferences" | "RetainedEarnings" | "SalesOrders" | "SalesTaxPayable" | "UncategorizedExpenses" | "UncategorizedIncome" | "UndepositedFunds";
|
|
1613
|
+
interface SupervisorRef {
|
|
1614
|
+
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
1615
|
+
ListID?: string;
|
|
1616
|
+
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
1617
|
+
FullName?: string;
|
|
1618
|
+
}
|
|
1619
|
+
interface TaxLineInfoRet {
|
|
1620
|
+
/** An internal representation of the tax line associated with this account. */
|
|
1621
|
+
TaxLineID: number;
|
|
1622
|
+
/** The name of the tax line associated with this account, as it appears on the tax form. */
|
|
1623
|
+
TaxLineName?: string;
|
|
1624
|
+
}
|
|
1625
|
+
interface TaxOnPurchasesAccountRef {
|
|
1626
|
+
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
1627
|
+
ListID?: string;
|
|
1628
|
+
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
1629
|
+
FullName?: string;
|
|
1630
|
+
}
|
|
1631
|
+
interface TaxOnSalesAccountRef {
|
|
1632
|
+
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
1633
|
+
ListID?: string;
|
|
1634
|
+
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
1635
|
+
FullName?: string;
|
|
1636
|
+
}
|
|
1637
|
+
interface TermsRef {
|
|
1638
|
+
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
1639
|
+
ListID?: string;
|
|
1640
|
+
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
1641
|
+
FullName?: string;
|
|
1642
|
+
}
|
|
1643
|
+
interface TimeTrackingAdd {
|
|
1644
|
+
/** The date of the transaction. In some cases, if you leave `TxnDate` out of an -Add message, QuickBooks will prefill `TxnDate` with the date of the last-saved transaction of the same type. */
|
|
1645
|
+
TxnDate?: string;
|
|
1646
|
+
/** A QuickBooks “entity” is a customer, vendor, employee, or person on the QuickBooks “other names” list. Special cases to note: In a `BillToPayQuery` message, `EntityRef` refers to the vendor name.In `JournalCreditLine` and `JournalDebitLine` messages for A/R accounts, `EntityRef` must refer to a customer, or else the transaction will not be recorded. For A/P accounts the `EntityRef` must refer to a vendor, or else the transaction will not be recorded.In a `TimeTracking` message, `EntityRef` cannot refer to a customer, only to an employee, vendor, or person on the “other names” list whose time is being tracked. */
|
|
1647
|
+
EntityRef: EntityRef;
|
|
1648
|
+
/** The customer list includes information about the QuickBooks user’s customers and the individual jobs that are being performed for them. A `CustomerRef` aggregate refers to one of the customers (or customer jobs) on the list. In a request, if a `CustomerRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. Special cases to note:In `SalesReceipt` and `ReceivePayment` requests, `CustomerRef` refers to the customer or customer job to which the payment is credited.In a `TimeTracking` request, `CustomerRef` refers to the customer or customer job to which this time could be billed. If `IsBillable` is set to true, `CustomerRef` is required in `TimeTrackingAdd`. In an `ExpenseLineAdd` request, if `AccountRef` refers to an A/P account, `CustomerRef` must refer to a vendor (not to a customer). If `AccountRef` refers to any other type of account, the `CustomerRef` must refer to a customer. */
|
|
1649
|
+
CustomerRef?: CustomerRef;
|
|
1650
|
+
/** A service item refers to services that a business charges for or purchases. Examples include specialized labor, consulting hours, and professional fees. An `ItemServiceRef` aggregate refers to an item on the `ItemService` list. In a request, if an `ItemServiceRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. In a `TimeTracking` message, `ItemServiceRef` refers to the type of work. If no `CustomerRef` is specified, then `ItemServiceRef` is not needed. If `IsBillable` is set to true, then `TimeTrackingAdd` must include both `ItemServiceRef` and `CustomerRef`. */
|
|
1651
|
+
ItemServiceRef?: ItemServiceRef;
|
|
1652
|
+
/** Time spent doing the work. In a `TimeTrackAdd` request, notice that although you can specify seconds, seconds are not returned in the response because the UI does not use seconds. */
|
|
1653
|
+
Duration: string;
|
|
1654
|
+
/** Classes can be used to separate transactions into meaningful categories. (For example, transactions could be classified according to department, business location, or type of work.) In QuickBooks, class tracking is off by default. A `ClassRef` aggregate refers to one of these named classes. For example, in a `TimeTracking` message, `ClassRef` refers to the QuickBooks class into which the timed activity falls. If a `ClassRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. In an `InvoiceAdd` request, if you specify a `ClassRef` for the whole invoice, that same `ClassRef` is automatically used in the line items. If you want to clear that (that is, have NO `ClassRef` for the line item, you can clear it in the line item by simply not specifying it in the line item. */
|
|
1655
|
+
ClassRef?: ClassRef;
|
|
1656
|
+
/** Each payroll wage item describes and names a payment scheme, for example, Regular Pay or Overtime Pay. A `PayrollItemWageRef` aggregate refers to one of these wage items. In a request, if a `PayrollItemWageRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. Within QuickBooks, a timesheet can specify a payroll wage item only if the following criteria are met: The name on the timesheet (which corresponds to the `EntityRef` in the `TimeTracking` object) is on the QuickBooks Employee list, and The “Use time data to create paychecks” preference is turned on in the QuickBooks Payroll Info window that provides detailed employee information employee. */
|
|
1657
|
+
PayrollItemWageRef?: PayrollItemWageRef;
|
|
1658
|
+
/** Additional information. */
|
|
1659
|
+
Notes?: string;
|
|
1660
|
+
/** The billing status of this item line or expense line. */
|
|
1661
|
+
BillableStatus?: BillableStatus;
|
|
1662
|
+
/** NOT USABLE IN QBXML SPEC 6.0 AND LATER!! Use `BillableStatus` instead. If `IsBillable` is true, the tracked time is billable, and you must specify `CustomerRef` and `ItemServiceRef` so that an invoice can be created. If no invoice will be created, set `IsBillable` to false. (`IsBillable` is true by default.) */
|
|
1663
|
+
IsBillable?: boolean;
|
|
1664
|
+
/** Allows for the attachment of a user defined GUID value. */
|
|
1665
|
+
ExternalGUID?: string;
|
|
1666
|
+
}
|
|
1667
|
+
export interface TimeTrackingAddRq {
|
|
1668
|
+
TimeTrackingAdd: TimeTrackingAdd;
|
|
1669
|
+
/** You use this if you want to limit the data that will be returned in the response. In this list, you specify the name of each top-level element or aggregate that you want to be returned in the response to the request. You cannot specify fields within an aggregate, for example, you cannot specify a `City` within an Address: you must specify Address and will get the entire address. The names specified in the list are not parsed, so you must be especially careful to supply valid names, properly cased. No error is returned in the status code if you specify an invalid name. Notice that if you want to return custom data or private data extensions, you must specify the `DataExtRet` element and you must supply the `OwnerID` set to either a value of 0 (custom data) or the GUID for the private data. */
|
|
1670
|
+
IncludeRetElement?: string[] | string;
|
|
1671
|
+
}
|
|
1672
|
+
export interface TimeTrackingAddRs {
|
|
1673
|
+
TimeTrackingRet?: TimeTrackingRet;
|
|
1674
|
+
ErrorRecovery?: ErrorRecovery;
|
|
1675
|
+
}
|
|
1676
|
+
interface TimeTrackingEntityFilter {
|
|
1677
|
+
/** One or more `ListID` values. Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
1678
|
+
ListID?: string[] | string;
|
|
1679
|
+
/** A list of one or more `FullName` values. `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
1680
|
+
FullName?: string[] | string;
|
|
1681
|
+
}
|
|
1682
|
+
interface TimeTrackingMod {
|
|
1683
|
+
/** QuickBooks generates a unique `TxnID` for each transaction that is added to QuickBooks. A `TxnID` returned from a request can be used to refer to the transaction in subsequent requests. Notice that you cannot supply the `TxnID` of a `TimeTracking` transaction to `TransactionQueryRq` requests. If you do, you get an error stating that no such record could be found, even though the transaction is in QuickBooks. This behavior reflects the behavior in the QuicKBooks UI in the Find window. */
|
|
1684
|
+
TxnID: string;
|
|
1685
|
+
/** A number that the server generates and assigns to this object. Every time the object is changed, the server will change its `EditSequence` value. When you try to modify a list object, you must provide its `EditSequence`. The server compares the `EditSequence` you provide with the `EditSequence` in memory to make sure you are dealing with the latest copy of the object. If you are not, the server will reject the request and return an error. Because `EditSequence` is only used to check whether two objects match, there is no reason to interpret its value. */
|
|
1686
|
+
EditSequence: string;
|
|
1687
|
+
/** The date of the transaction. In some cases, if you leave `TxnDate` out of an -Add message, QuickBooks will prefill `TxnDate` with the date of the last-saved transaction of the same type. */
|
|
1688
|
+
TxnDate?: string;
|
|
1689
|
+
/** A QuickBooks “entity” is a customer, vendor, employee, or person on the QuickBooks “other names” list. Special cases to note: In a `BillToPayQuery` message, `EntityRef` refers to the vendor name.In `JournalCreditLine` and `JournalDebitLine` messages for A/R accounts, `EntityRef` must refer to a customer, or else the transaction will not be recorded. For A/P accounts the `EntityRef` must refer to a vendor, or else the transaction will not be recorded.In a `TimeTracking` message, `EntityRef` cannot refer to a customer, only to an employee, vendor, or person on the “other names” list whose time is being tracked. */
|
|
1690
|
+
EntityRef: EntityRef;
|
|
1691
|
+
/** The customer list includes information about the QuickBooks user’s customers and the individual jobs that are being performed for them. A `CustomerRef` aggregate refers to one of the customers (or customer jobs) on the list. In a request, if a `CustomerRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. Special cases to note:In `SalesReceipt` and `ReceivePayment` requests, `CustomerRef` refers to the customer or customer job to which the payment is credited.In a `TimeTracking` request, `CustomerRef` refers to the customer or customer job to which this time could be billed. If `IsBillable` is set to true, `CustomerRef` is required in `TimeTrackingAdd`. In an `ExpenseLineAdd` request, if `AccountRef` refers to an A/P account, `CustomerRef` must refer to a vendor (not to a customer). If `AccountRef` refers to any other type of account, the `CustomerRef` must refer to a customer. */
|
|
1692
|
+
CustomerRef?: CustomerRef;
|
|
1693
|
+
/** A service item refers to services that a business charges for or purchases. Examples include specialized labor, consulting hours, and professional fees. An `ItemServiceRef` aggregate refers to an item on the `ItemService` list. In a request, if an `ItemServiceRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. In a `TimeTracking` message, `ItemServiceRef` refers to the type of work. If no `CustomerRef` is specified, then `ItemServiceRef` is not needed. If `IsBillable` is set to true, then `TimeTrackingAdd` must include both `ItemServiceRef` and `CustomerRef`. */
|
|
1694
|
+
ItemServiceRef?: ItemServiceRef;
|
|
1695
|
+
/** Time spent doing the work. In a `TimeTrackAdd` request, notice that although you can specify seconds, seconds are not returned in the response because the UI does not use seconds. */
|
|
1696
|
+
Duration: string;
|
|
1697
|
+
/** Classes can be used to separate transactions into meaningful categories. (For example, transactions could be classified according to department, business location, or type of work.) In QuickBooks, class tracking is off by default. A `ClassRef` aggregate refers to one of these named classes. For example, in a `TimeTracking` message, `ClassRef` refers to the QuickBooks class into which the timed activity falls. If a `ClassRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. In an `InvoiceAdd` request, if you specify a `ClassRef` for the whole invoice, that same `ClassRef` is automatically used in the line items. If you want to clear that (that is, have NO `ClassRef` for the line item, you can clear it in the line item by simply not specifying it in the line item. */
|
|
1698
|
+
ClassRef?: ClassRef;
|
|
1699
|
+
/** Each payroll wage item describes and names a payment scheme, for example, Regular Pay or Overtime Pay. A `PayrollItemWageRef` aggregate refers to one of these wage items. In a request, if a `PayrollItemWageRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. Within QuickBooks, a timesheet can specify a payroll wage item only if the following criteria are met: The name on the timesheet (which corresponds to the `EntityRef` in the `TimeTracking` object) is on the QuickBooks Employee list, and The “Use time data to create paychecks” preference is turned on in the QuickBooks Payroll Info window that provides detailed employee information employee. */
|
|
1700
|
+
PayrollItemWageRef?: PayrollItemWageRef;
|
|
1701
|
+
/** Additional information. */
|
|
1702
|
+
Notes?: string;
|
|
1703
|
+
/** The billing status of this item line or expense line. */
|
|
1704
|
+
BillableStatus?: BillableStatus;
|
|
1659
1705
|
}
|
|
1660
|
-
interface
|
|
1661
|
-
|
|
1662
|
-
|
|
1663
|
-
|
|
1664
|
-
FullName?: string;
|
|
1706
|
+
export interface TimeTrackingModRq {
|
|
1707
|
+
TimeTrackingMod: TimeTrackingMod;
|
|
1708
|
+
/** You use this if you want to limit the data that will be returned in the response. In this list, you specify the name of each top-level element or aggregate that you want to be returned in the response to the request. You cannot specify fields within an aggregate, for example, you cannot specify a `City` within an Address: you must specify Address and will get the entire address. The names specified in the list are not parsed, so you must be especially careful to supply valid names, properly cased. No error is returned in the status code if you specify an invalid name. Notice that if you want to return custom data or private data extensions, you must specify the `DataExtRet` element and you must supply the `OwnerID` set to either a value of 0 (custom data) or the GUID for the private data. */
|
|
1709
|
+
IncludeRetElement?: string[] | string;
|
|
1665
1710
|
}
|
|
1666
|
-
interface
|
|
1667
|
-
|
|
1668
|
-
|
|
1669
|
-
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
1670
|
-
FullName?: string;
|
|
1711
|
+
export interface TimeTrackingModRs {
|
|
1712
|
+
TimeTrackingRet?: TimeTrackingRet;
|
|
1713
|
+
ErrorRecovery?: ErrorRecovery;
|
|
1671
1714
|
}
|
|
1672
|
-
|
|
1673
|
-
|
|
1674
|
-
|
|
1675
|
-
/**
|
|
1676
|
-
|
|
1677
|
-
/**
|
|
1678
|
-
|
|
1715
|
+
export interface TimeTrackingQueryRq {
|
|
1716
|
+
/** One or more `TxnID` values. QuickBooks generates a unique `TxnID` for each transaction that is added to QuickBooks. Notice that you cannot supply the `TxnID` of a `TimeTracking` transaction to `TransactionQuery` requests. If you do, you get an error stating that no such record could be found, even though the transaction is in QuickBooks. This behavior reflects the behavior in the QuicKBooks UI in the Find window. */
|
|
1717
|
+
TxnID?: string[] | string;
|
|
1718
|
+
/** Limits the number of objects that a query returns. (To get a count of how many objects could possibly be returned, use the `metaData` query attribute.) If you include a `MaxReturned` value, it must be at least 1. */
|
|
1719
|
+
MaxReturned?: number;
|
|
1720
|
+
/** Filters according to the dates when transactions were last modified. The `ModifiedDateRangeFilter` aggregate is not required to contain any elements, but if it is empty, we recommend that you leave it out altogether. Note that the time portion of the `FromModifiedDate` and `ToModifiedDate` fields was not supported in qbXML version 1.0 or 1.1. (To filter according to the dates when transactions were deleted, use a `TxnDeletedQuery` message.) */
|
|
1721
|
+
ModifiedDateRangeFilter?: ModifiedDateRangeFilter;
|
|
1722
|
+
/** Filters according to the original transaction dates. */
|
|
1723
|
+
TxnDateRangeFilter?: TxnDateRangeFilter;
|
|
1724
|
+
/** Allows you to query for one or more names on the QuickBooks Vendor list, Employee list, or Other Names list. */
|
|
1725
|
+
TimeTrackingEntityFilter?: TimeTrackingEntityFilter;
|
|
1726
|
+
/** You use this if you want to limit the data that will be returned in the response. In this list, you specify the name of each top-level element or aggregate that you want to be returned in the response to the request. You cannot specify fields within an aggregate, for example, you cannot specify a `City` within an Address: you must specify Address and will get the entire address. The names specified in the list are not parsed, so you must be especially careful to supply valid names, properly cased. No error is returned in the status code if you specify an invalid name. Notice that if you want to return custom data or private data extensions, you must specify the `DataExtRet` element and you must supply the `OwnerID` set to either a value of 0 (custom data) or the GUID for the private data. */
|
|
1727
|
+
IncludeRetElement?: string[] | string;
|
|
1679
1728
|
}
|
|
1680
|
-
interface
|
|
1681
|
-
|
|
1682
|
-
ListID?: string;
|
|
1683
|
-
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
1684
|
-
FullName?: string;
|
|
1729
|
+
export interface TimeTrackingQueryRs {
|
|
1730
|
+
TimeTrackingRet?: TimeTrackingRet | TimeTrackingRet[];
|
|
1685
1731
|
}
|
|
1686
|
-
interface
|
|
1687
|
-
/**
|
|
1688
|
-
|
|
1689
|
-
/**
|
|
1690
|
-
|
|
1732
|
+
interface TimeTrackingRet {
|
|
1733
|
+
/** QuickBooks generates a unique `TxnID` for each transaction that is added to QuickBooks. A `TxnID` returned from a request can be used to refer to the transaction in subsequent requests. Notice that you cannot supply the `TxnID` of a `TimeTracking` transaction to `TransactionQueryRq` requests. If you do, you get an error stating that no such record could be found, even though the transaction is in QuickBooks. This behavior reflects the behavior in the QuicKBooks UI in the Find window. */
|
|
1734
|
+
TxnID: string;
|
|
1735
|
+
/** Time the object was created. */
|
|
1736
|
+
TimeCreated: string;
|
|
1737
|
+
/** Time the object was last modified. */
|
|
1738
|
+
TimeModified: string;
|
|
1739
|
+
/** A number that the server generates and assigns to this object. Every time the object is changed, the server will change its `EditSequence` value. When you try to modify a list object, you must provide its `EditSequence`. The server compares the `EditSequence` you provide with the `EditSequence` in memory to make sure you are dealing with the latest copy of the object. If you are not, the server will reject the request and return an error. Because `EditSequence` is only used to check whether two objects match, there is no reason to interpret its value. */
|
|
1740
|
+
EditSequence: string;
|
|
1741
|
+
/** An identifying number for this transaction. */
|
|
1742
|
+
TxnNumber?: number;
|
|
1743
|
+
/** The date of the transaction. In some cases, if you leave `TxnDate` out of an -Add message, QuickBooks will prefill `TxnDate` with the date of the last-saved transaction of the same type. */
|
|
1744
|
+
TxnDate: string;
|
|
1745
|
+
/** A QuickBooks “entity” is a customer, vendor, employee, or person on the QuickBooks “other names” list. Special cases to note: In a `BillToPayQuery` message, `EntityRef` refers to the vendor name.In `JournalCreditLine` and `JournalDebitLine` messages for A/R accounts, `EntityRef` must refer to a customer, or else the transaction will not be recorded. For A/P accounts the `EntityRef` must refer to a vendor, or else the transaction will not be recorded.In a `TimeTracking` message, `EntityRef` cannot refer to a customer, only to an employee, vendor, or person on the “other names” list whose time is being tracked. */
|
|
1746
|
+
EntityRef: EntityRef;
|
|
1747
|
+
/** The customer list includes information about the QuickBooks user’s customers and the individual jobs that are being performed for them. A `CustomerRef` aggregate refers to one of the customers (or customer jobs) on the list. In a request, if a `CustomerRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. Special cases to note:In `SalesReceipt` and `ReceivePayment` requests, `CustomerRef` refers to the customer or customer job to which the payment is credited.In a `TimeTracking` request, `CustomerRef` refers to the customer or customer job to which this time could be billed. If `IsBillable` is set to true, `CustomerRef` is required in `TimeTrackingAdd`. In an `ExpenseLineAdd` request, if `AccountRef` refers to an A/P account, `CustomerRef` must refer to a vendor (not to a customer). If `AccountRef` refers to any other type of account, the `CustomerRef` must refer to a customer. */
|
|
1748
|
+
CustomerRef?: CustomerRef;
|
|
1749
|
+
/** A service item refers to services that a business charges for or purchases. Examples include specialized labor, consulting hours, and professional fees. An `ItemServiceRef` aggregate refers to an item on the `ItemService` list. In a request, if an `ItemServiceRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. In a `TimeTracking` message, `ItemServiceRef` refers to the type of work. If no `CustomerRef` is specified, then `ItemServiceRef` is not needed. If `IsBillable` is set to true, then `TimeTrackingAdd` must include both `ItemServiceRef` and `CustomerRef`. */
|
|
1750
|
+
ItemServiceRef?: ItemServiceRef;
|
|
1751
|
+
/** Time spent doing the work. In a `TimeTrackAdd` request, notice that although you can specify seconds, seconds are not returned in the response because the UI does not use seconds. */
|
|
1752
|
+
Duration: string;
|
|
1753
|
+
/** Classes can be used to separate transactions into meaningful categories. (For example, transactions could be classified according to department, business location, or type of work.) In QuickBooks, class tracking is off by default. A `ClassRef` aggregate refers to one of these named classes. For example, in a `TimeTracking` message, `ClassRef` refers to the QuickBooks class into which the timed activity falls. If a `ClassRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. In an `InvoiceAdd` request, if you specify a `ClassRef` for the whole invoice, that same `ClassRef` is automatically used in the line items. If you want to clear that (that is, have NO `ClassRef` for the line item, you can clear it in the line item by simply not specifying it in the line item. */
|
|
1754
|
+
ClassRef?: ClassRef;
|
|
1755
|
+
/** Each payroll wage item describes and names a payment scheme, for example, Regular Pay or Overtime Pay. A `PayrollItemWageRef` aggregate refers to one of these wage items. In a request, if a `PayrollItemWageRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. Within QuickBooks, a timesheet can specify a payroll wage item only if the following criteria are met: The name on the timesheet (which corresponds to the `EntityRef` in the `TimeTracking` object) is on the QuickBooks Employee list, and The “Use time data to create paychecks” preference is turned on in the QuickBooks Payroll Info window that provides detailed employee information employee. */
|
|
1756
|
+
PayrollItemWageRef?: PayrollItemWageRef;
|
|
1757
|
+
/** Additional information. */
|
|
1758
|
+
Notes?: string;
|
|
1759
|
+
/** The billing status of this item line or expense line. */
|
|
1760
|
+
BillableStatus?: BillableStatus;
|
|
1761
|
+
/** Allows for the attachment of a user defined GUID value. */
|
|
1762
|
+
ExternalGUID?: string;
|
|
1763
|
+
/** NOT USABLE IN QBXML SPEC 6.0 AND LATER!! Use `BillableStatus` instead. If `IsBillable` is true, the tracked time is billable, and you must specify `CustomerRef` and `ItemServiceRef` so that an invoice can be created. If no invoice will be created, set `IsBillable` to false. (`IsBillable` is true by default.) */
|
|
1764
|
+
IsBillable?: boolean;
|
|
1765
|
+
/** If `IsBilled` is true, the tracked time has already been billed. */
|
|
1766
|
+
IsBilled?: boolean;
|
|
1767
|
+
}
|
|
1768
|
+
interface TotalBalanceFilter {
|
|
1769
|
+
/** Indicates whether to filter for amounts that are less than, equal to or less than, exactly equal to, greater than, or equal to or greater than the given `Amount`. */
|
|
1770
|
+
Operator: Operator;
|
|
1771
|
+
/** The monetary amount to which `Operator` refers. */
|
|
1772
|
+
Amount: string;
|
|
1773
|
+
}
|
|
1774
|
+
interface TxnDateRangeFilter {
|
|
1775
|
+
/** Selects transactions created on or after this date. Both `FromTxnDate` and `ToTxnDate` must be between 01/01/1901 and 12/31/9999.If you omit `FromTxnDate`, it will be set to 1970-01-01 (1969-12-31 PST). */
|
|
1776
|
+
FromTxnDate?: string;
|
|
1777
|
+
/** Selects transactions created on or before this date. Both `ToTxnDate` and `FromTxnDate` must be between 01/01/1901 and 12/31/9999. If you omit `ToTxnDate`, it will be set to 2038-01-19 (2038-01-18 PST). */
|
|
1778
|
+
ToTxnDate?: string;
|
|
1779
|
+
/** Refers to the transaction date, not the last modification date. Do not include `DateMacro` if either `FromModifedDate` or `ToModifiedDate` are specified. If a query does not specify `DateMacro`, `FromModifedDate`, or `ToModifiedDate`, it includes all dates. `DateMacro` values, in alphabetical order, that are new with QBFC3: `dmAll`, `dmdmLastCalendarQuarter`, `dmdmLastCalendarQuarterToDate`, `dmdmLastCalendarYear`, `dmdmLastCalendarYearToDate`, `dmLastFiscalQuarterToDate`, `dmLastFiscalYearToDate`, `dmLastMonthToDate`, `dmLastWeekToDate`, `dmNextCalendarQuarter`, `dmNextCalendarYear`, `dmNextFiscalQuarter`, `dmNextFiscalYear`, `dmNextFourWeeks`, `dmNextMonth`, `dmNextWeek`, `dmThisCalendarQuarter`, `dmThisCalendarQuarterToDate`, `dmThisCalendarYear`, dm `ThisCalendarYearToDate`, `dmThisFiscalQuarter`, `dmThisFiscalYear`, `dmThisMonth`, `dmThisWeek`, `dmThisWeekToDate`, `dmToday`, `dmYesterday` The list given when you click `IQBENDateMacroType` shows the complete list of valid version 3.0 values. */
|
|
1780
|
+
DateMacro?: DateMacro;
|
|
1781
|
+
}
|
|
1782
|
+
declare type USCitizen = "No" | "Yes";
|
|
1783
|
+
declare type UseTimeDataToCreatePaychecks = "DoNotUseTimeData" | "NotSet" | "UseTimeData";
|
|
1784
|
+
declare type USVeteran = "No" | "Yes";
|
|
1785
|
+
interface VacationHours {
|
|
1786
|
+
/** The total number of hours currently available for the employee to use. If this value is empty, it will default to 0. */
|
|
1787
|
+
HoursAvailable?: string;
|
|
1788
|
+
/** Indicates how an employee accrues time off. If you include a blank `AccrualPeriod` element in an `EmployeeMod` message, you’ll receive an error. The default value is whatever the QuickBooks user has set in the QuickBooks Employee Preferences. */
|
|
1789
|
+
AccrualPeriod?: AccrualPeriod;
|
|
1790
|
+
/** The number of hours that the employee will accrue per accrual period. The default value is whatever the QuickBooks user has set in the QuickBooks Employee Preferences. */
|
|
1791
|
+
HoursAccrued?: string;
|
|
1792
|
+
/** The maximum number of hours that the employee can accrue. (QuickBooks itself does not enforce this limit, however. `HoursAvailable` can be greater than `MaximumHours`.) The default value is whatever the QuickBooks user has set in the QuickBooks Employee Preferences. */
|
|
1793
|
+
MaximumHours?: string;
|
|
1794
|
+
/** Indicates whether or not the hours accrued resets to zero at the beginning of the new year. If you include a blank `IsResettingHoursEachNewYear` element in an `EmployeeMod` message, you’ll receive an error. */
|
|
1795
|
+
IsResettingHoursEachNewYear?: boolean;
|
|
1796
|
+
/** When used in the `SickHours` or `VacationHours` aggregates, refers to the number of sick leave or vacation hours used in the current year. */
|
|
1797
|
+
HoursUsed?: string;
|
|
1798
|
+
/** When used in the `SickHours` or `VacationHours` aggregates, refers to the date on which sick leave or vacation hours in the current year began to accrue. */
|
|
1799
|
+
AccrualStartDate?: string;
|
|
1691
1800
|
}
|
|
1692
1801
|
interface VendorAdd {
|
|
1693
1802
|
/** The case-insensitive name of a list object, not including the names of its ancestors. `Name` must be unique, unless it is the `Name` of a “hierarchical” list object. List objects in different hierarchies can have duplicate names because their `FullNames` will still be unique. For example, two objects could both have the `Name` kitchen, but they could have unique `FullNames`, such as Job12:kitchen and Baker:kitchen. For built-in currencies, `Name` is the internationally accepted currency name and is not editable. */
|
|
@@ -1783,10 +1892,27 @@ interface VendorAdd {
|
|
|
1783
1892
|
/** The currency object contains all of the information needed by QuickBooks to display and use. For built-in currencies, the name and currency code values are internationally accepted values and thus are not editable. The comma format is editable, as is the `IsActive` status. For user-defined currencies, every value in the object is editable including name and currency code. When used with `PriceLevels`, the `CurrencyRef` should only be used with “per item” price levels. */
|
|
1784
1893
|
CurrencyRef?: CurrencyRef;
|
|
1785
1894
|
}
|
|
1786
|
-
|
|
1787
|
-
|
|
1788
|
-
|
|
1789
|
-
|
|
1895
|
+
interface VendorAddress {
|
|
1896
|
+
/** The first line of an address. */
|
|
1897
|
+
Addr1?: string;
|
|
1898
|
+
/** The second line of an address (if a second line is needed). */
|
|
1899
|
+
Addr2?: string;
|
|
1900
|
+
/** The third line of an address (if a third line is needed). */
|
|
1901
|
+
Addr3?: string;
|
|
1902
|
+
/** The fourth line of an address (if a fourth line is needed). */
|
|
1903
|
+
Addr4?: string;
|
|
1904
|
+
/** The fifth line of an address (if a fifth line is needed). */
|
|
1905
|
+
Addr5?: string;
|
|
1906
|
+
/** The city name in an address. */
|
|
1907
|
+
City?: string;
|
|
1908
|
+
/** The state name in an address. */
|
|
1909
|
+
State?: string;
|
|
1910
|
+
/** The postal code in an address. */
|
|
1911
|
+
PostalCode?: string;
|
|
1912
|
+
/** The country name in an address, or, in returned Host information (`HostRet` or `HostInfo`), the country for which this edition of QuickBooks was designed. (Possible values are US, CA, UK, and AU.) */
|
|
1913
|
+
Country?: string;
|
|
1914
|
+
/** In a `BillAddress` or `ShipAddress` aggregate, the `Note` field value is written at the bottom of the address in the form in which it appears, such as the invoice form. */
|
|
1915
|
+
Note?: string;
|
|
1790
1916
|
}
|
|
1791
1917
|
interface VendorAddressBlock {
|
|
1792
1918
|
/** The first line of an address. */
|
|
@@ -1800,23 +1926,26 @@ interface VendorAddressBlock {
|
|
|
1800
1926
|
/** The fifth line of an address (if a fifth line is needed). */
|
|
1801
1927
|
Addr5?: string;
|
|
1802
1928
|
}
|
|
1803
|
-
interface
|
|
1929
|
+
export interface VendorAddRq {
|
|
1930
|
+
VendorAdd: VendorAdd;
|
|
1931
|
+
/** You use this if you want to limit the data that will be returned in the response. In this list, you specify the name of each top-level element or aggregate that you want to be returned in the response to the request. You cannot specify fields within an aggregate, for example, you cannot specify a `City` within an Address: you must specify Address and will get the entire address. The names specified in the list are not parsed, so you must be especially careful to supply valid names, properly cased. No error is returned in the status code if you specify an invalid name. Notice that if you want to return custom data or private data extensions, you must specify the `DataExtRet` element and you must supply the `OwnerID` set to either a value of 0 (custom data) or the GUID for the private data. */
|
|
1932
|
+
IncludeRetElement?: string[] | string;
|
|
1933
|
+
}
|
|
1934
|
+
export interface VendorAddRs {
|
|
1935
|
+
VendorRet?: VendorRet;
|
|
1936
|
+
ErrorRecovery?: ErrorRecovery;
|
|
1937
|
+
}
|
|
1938
|
+
interface VendorMod {
|
|
1804
1939
|
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
1805
1940
|
ListID: string;
|
|
1806
|
-
/** Time the object was created. */
|
|
1807
|
-
TimeCreated: string;
|
|
1808
|
-
/** Time the object was last modified. */
|
|
1809
|
-
TimeModified: string;
|
|
1810
1941
|
/** A number that the server generates and assigns to this object. Every time the object is changed, the server will change its `EditSequence` value. When you try to modify a list object, you must provide its `EditSequence`. The server compares the `EditSequence` you provide with the `EditSequence` in memory to make sure you are dealing with the latest copy of the object. If you are not, the server will reject the request and return an error. Because `EditSequence` is only used to check whether two objects match, there is no reason to interpret its value. */
|
|
1811
1942
|
EditSequence: string;
|
|
1812
1943
|
/** The case-insensitive name of a list object, not including the names of its ancestors. `Name` must be unique, unless it is the `Name` of a “hierarchical” list object. List objects in different hierarchies can have duplicate names because their `FullNames` will still be unique. For example, two objects could both have the `Name` kitchen, but they could have unique `FullNames`, such as Job12:kitchen and Baker:kitchen. For built-in currencies, `Name` is the internationally accepted currency name and is not editable. */
|
|
1813
|
-
Name
|
|
1944
|
+
Name?: string;
|
|
1814
1945
|
/** If `IsActive` is true, this object is currently enabled for use by QuickBooks. The default value is true. */
|
|
1815
1946
|
IsActive?: boolean;
|
|
1816
1947
|
/** Classes can be used to separate transactions into meaningful categories. (For example, transactions could be classified according to department, business location, or type of work.) In QuickBooks, class tracking is off by default. A `ClassRef` aggregate refers to one of these named classes. For example, in a `TimeTracking` message, `ClassRef` refers to the QuickBooks class into which the timed activity falls. If a `ClassRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. In an `InvoiceAdd` request, if you specify a `ClassRef` for the whole invoice, that same `ClassRef` is automatically used in the line items. If you want to clear that (that is, have NO `ClassRef` for the line item, you can clear it in the line item by simply not specifying it in the line item. */
|
|
1817
1948
|
ClassRef?: ClassRef;
|
|
1818
|
-
/** Is the current entity a tax agency. */
|
|
1819
|
-
IsTaxAgency?: boolean;
|
|
1820
1949
|
/** The name of the QuickBooks user’s business, as specified in QuickBooks. `CompanyName` and Address are used on invoices, checks, and other forms. (`LegalCompanyName` and `LegalAddress`, on the other hand, are used on a company’s tax forms and pay stubs.) */
|
|
1821
1950
|
CompanyName?: string;
|
|
1822
1951
|
/** A formal reference, such as Mr. or Dr., that precedes a name. */
|
|
@@ -1831,8 +1960,6 @@ interface VendorRet {
|
|
|
1831
1960
|
JobTitle?: string;
|
|
1832
1961
|
/** If an address request fails, some combination of address fields might be too long. */
|
|
1833
1962
|
VendorAddress?: VendorAddress;
|
|
1834
|
-
/** The address expressed as an address block of `Addr1` through `Addr5`, depending on the number of lines in the original request that created the address. */
|
|
1835
|
-
VendorAddressBlock?: VendorAddressBlock;
|
|
1836
1963
|
/** Whatever address you specify in this aggregate must not result in an address greater than 5 lines, otherwise you’ll get a runtime error, because QuickBooks doesn’t support addresses more than 5 lines. There are two ways to specify an address within this aggregate: Using `Addr1` through `Addr3` along with the other possible aggregate elements, such as `City`, `State`, Postalcode.Using `Addr1`, `Addr2`, `Addr3`, `Addr4`, and `Addr5` to fully specify the address. If you use this so called “address block” approach, you cannot use any other address elements, such as `City`, `State`, etc. (Note: this approach is not valid for `EmployeeAdd`/Mod/Query) If you use the address block approach above, the lines `Addr1`…`Addr5` are each printed as a separate line on the transaction, and the values are returned in the Ret object under the aggregate `ShipAddressBlock` or `BillAddressBlock`. */
|
|
1837
1964
|
ShipAddress?: ShipAddress;
|
|
1838
1965
|
/** The telephone number. */
|
|
@@ -1852,7 +1979,7 @@ interface VendorRet {
|
|
|
1852
1979
|
/** List of additional contacts. */
|
|
1853
1980
|
AdditionalContactRef?: AdditionalContactRef | AdditionalContactRef[];
|
|
1854
1981
|
/** A list of contact records. */
|
|
1855
|
-
|
|
1982
|
+
ContactsMod?: ContactsMod | ContactsMod[];
|
|
1856
1983
|
/** The vendor’s name as it will appear on checks sent to the vendor. (Corresponds in the QuickBooks user interface to the “Print on Check as” field of the Edit Vendor and New Vendor windows.) */
|
|
1857
1984
|
NameOnCheck?: string;
|
|
1858
1985
|
/** Account numbers appear in the QuickBooks chart of accounts, Account fields, and reports and graphs. If the `IsUsingAccountNumber` preference is false (that is, if the QuickBooks user has the account numbers Preference turned off), you can still set account numbers through the SDK, but the numbers will not be visible in the user interface. */
|
|
@@ -1860,7 +1987,7 @@ interface VendorRet {
|
|
|
1860
1987
|
/** Additional information about this vendor. */
|
|
1861
1988
|
Notes?: string;
|
|
1862
1989
|
/** List of notes. */
|
|
1863
|
-
|
|
1990
|
+
AdditionalNotesMod?: AdditionalNotesMod | AdditionalNotesMod[];
|
|
1864
1991
|
/** Vendor types allow business owners to categorize vendors in ways that are meaningful for their businesses. For example, a vendor type might indicate which industry a vendor represents, or which part of the country a vendor is in. A `VendorTypeRef` aggregate refers to one of the types on the `VendorType` list. In a request, if a `VendorTypeRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. */
|
|
1865
1992
|
VendorTypeRef?: VendorTypeRef;
|
|
1866
1993
|
/** Refers to the payment terms associated with this entity. (This will be an item on the `DateDrivenTerms` or `StandardTerms` list.) If a `TermsRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. */
|
|
@@ -1871,12 +1998,8 @@ interface VendorRet {
|
|
|
1871
1998
|
VendorTaxIdent?: string;
|
|
1872
1999
|
/** If `IsVendorEligibleFor1099` is set to true, `VendorTaxIdent` and `VendorAddress` are required in a vendor add request message. Otherwise, `VendorTaxIdent` and `VendorAddress` are optional. */
|
|
1873
2000
|
IsVendorEligibleFor1099?: boolean;
|
|
1874
|
-
/** A positive number indicates money owed to this vendor. */
|
|
1875
|
-
Balance?: string;
|
|
1876
2001
|
/** Billing rates are used to override the service item rate in a time transaction (`TimeTrackingAdd`) based on the employee or vendor performing the work. Billing rates are assigned to an employee or a vendor to specify overrides to service items. */
|
|
1877
2002
|
BillingRateRef?: BillingRateRef;
|
|
1878
|
-
/** Allows for the attachment of a user defined GUID value. */
|
|
1879
|
-
ExternalGUID?: string;
|
|
1880
2003
|
/** Each item on a sales form is assigned a sales-tax code that indicates whether the item is taxable or non-taxable, and why. Two general codes, which can be modified but not deleted, appear on the sales-tax code list by default:Non-taxable (`Name` = NON; `Desc` = Non-Taxable; `IsTaxable` = false)Taxable (`Name` = TAX; `Desc` = Taxable; `IsTaxable` = true) A sales-tax code can be deleted only if it is no longer associated with any customer, item, or transaction. If the “Do You Charge Sales Tax?” preference within QuickBooks is set to No, QuickBooks will assign the default non-taxable sales-tax code to all sales. A `SalesTaxCodeRef` aggregate refers to a sales-tax code on the list. In a request, if a `SalesTaxCodeRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. In a Customer message, `SalesTaxCodeRef` refers to the sales-tax code that will be used for items related to this customer. In an `ItemInventory` message, `SalesTaxCodeRef` refers to the type of sales tax that will be charged for this item, if it is a taxable item and if sales tax is set up within QuickBooks. */
|
|
1881
2004
|
SalesTaxCodeRef?: SalesTaxCodeRef;
|
|
1882
2005
|
/** The country that sales tax is collected for. */
|
|
@@ -1903,24 +2026,64 @@ interface VendorRet {
|
|
|
1903
2026
|
PrefillAccountRef?: PrefillAccountRef | PrefillAccountRef[];
|
|
1904
2027
|
/** The currency object contains all of the information needed by QuickBooks to display and use. For built-in currencies, the name and currency code values are internationally accepted values and thus are not editable. The comma format is editable, as is the `IsActive` status. For user-defined currencies, every value in the object is editable including name and currency code. When used with `PriceLevels`, the `CurrencyRef` should only be used with “per item” price levels. */
|
|
1905
2028
|
CurrencyRef?: CurrencyRef;
|
|
1906
|
-
/** A list of `IDataExtRet` objects, each of which represents a field that has been added to QuickBooks as a data extension. */
|
|
1907
|
-
DataExtRet?: DataExtRet | DataExtRet[];
|
|
1908
2029
|
}
|
|
1909
|
-
export interface
|
|
2030
|
+
export interface VendorModRq {
|
|
2031
|
+
VendorMod: VendorMod;
|
|
2032
|
+
/** You use this if you want to limit the data that will be returned in the response. In this list, you specify the name of each top-level element or aggregate that you want to be returned in the response to the request. You cannot specify fields within an aggregate, for example, you cannot specify a `City` within an Address: you must specify Address and will get the entire address. The names specified in the list are not parsed, so you must be especially careful to supply valid names, properly cased. No error is returned in the status code if you specify an invalid name. Notice that if you want to return custom data or private data extensions, you must specify the `DataExtRet` element and you must supply the `OwnerID` set to either a value of 0 (custom data) or the GUID for the private data. */
|
|
2033
|
+
IncludeRetElement?: string[] | string;
|
|
2034
|
+
}
|
|
2035
|
+
export interface VendorModRs {
|
|
1910
2036
|
VendorRet?: VendorRet;
|
|
1911
2037
|
ErrorRecovery?: ErrorRecovery;
|
|
1912
2038
|
}
|
|
1913
|
-
interface
|
|
2039
|
+
export interface VendorQueryRq {
|
|
2040
|
+
/** One or more `ListID` values. Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
2041
|
+
ListID?: string[] | string;
|
|
2042
|
+
/** A list of one or more `FullName` values. `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
2043
|
+
FullName?: string[] | string;
|
|
2044
|
+
/** Limits the number of objects that a query returns. (To get a count of how many objects could possibly be returned, use the `metaData` query attribute.) If you include a `MaxReturned` value, it must be at least 1. */
|
|
2045
|
+
MaxReturned?: number;
|
|
2046
|
+
/** Used in filters to select list objects based on whether or not they are currently enabled for use by QuickBooks. The default value is `asActiveOnly`, which selects only list objects that are active. */
|
|
2047
|
+
ActiveStatus?: ActiveStatus;
|
|
2048
|
+
/** Selects objects modified on or after this date. See the note below regarding QBFC usage.For desktop versions of QuickBooks, the `FromModifiedDate` and `ToModifiedDate` must be between 1970-01-01 and 2038-01-19T03:14:07 (2038-01-18T19:14:07-08:00 PST). (The time portion of the field was not supported in qbXML version 1.0 or 1.1.) Also, for desktop versions of QuickBooks, if `FromModifiedDate` includes a date but not a time (for example, if you set `FromModifiedDate` to 2003-02-14), the time is assumed to be zero (2003-02-14T00:00:00). If you omit `FromModifiedDate`, it will be set to 1970-01-01T00:00:00 (1969-12-31T16:00:00-08:00 PST).For QBOE, the `FromModifiedDate` and `ToModifiedDate` must be between 1900-01-01T00:00:00 and 9999-12-31T00:00:00. If `FromModifiedDate` includes a date but not a time (for example, if you set `FromModifiedDate` to 2003-02-14), the time is assumed to be zero (2003-02-14T00:00:00). If you omit `FromModifiedDate`, it will be set to 1900-01-01T00:00:00.`Note`: When specifying this in QBFC, you need to supply the parameter `asDateOnly`, which is a Boolean. If `asDateOnly` is true, the date value will be represented as a date only (without a time). If `asDateOnly` is false, the date value will be represented as date and time, padded with zeros if necessary, and set to the beginning of the day if no time is provided. The `asDateOnly` parameter is especially useful in the `ToModifiedDate` field of a query: If `asDateOnly` is set to true in the `ToModifiedDate` field of a query, then the query includes elements modified up to the end of the day. If `asDateOnly` is false, the query includes elements modified up to the specified time (or up to the beginning of the day if no time is included). */
|
|
2049
|
+
FromModifiedDate?: string;
|
|
2050
|
+
/** Selects objects modified on or before this date. See the note below on QBFC usage.For desktop versions of QuickBooks, the `ToModifiedDate` and `FromModifiedDate` must be between 01/01/1970 and 2038-01-19T03:14:07 (2038-01-18T19:14:07-08:00 PST). (Note that the time portion of the field was not supported in qbXML version 1.0 or 1.1.) If `ToModifiedDate` includes a date but not a time (for example, if you set `ToModifiedDate` to 2003-02-14), the time is assumed to be the end of the day (2003-02-14T23:59:59). If you omit `ToModifiedDate` altogether, it will be set to 2038-01-19T03:14:07 (2038-01-18T19:14:07-08:00 PST).For QBOE, the `ToModifiedDate` and `FromModifiedDate` must be between 01/01/1900 and 9999-12-31T00:00:00. If `ToModifiedDate` includes a date but not a time (for example, if you set `ToModifiedDate` to 2003-02-14), the time is assumed to be the end of the day (2003-02-14T23:59:59). If you omit `ToModifiedDate` altogether, it will be set to 9999-12-31T00:00:00.`Note`: When specifying this in QBFC, you need to supply the parameter `asDateOnly`, which is a Boolean. If `asDateOnly` is true, the date value will be represented as a date only (without a time). If `asDateOnly` is false, the date value will be represented as date and time, padded with zeros if necessary, and set to the beginning of the day if no time is provided. The `asDateOnly` parameter is especially useful in the `ToModifiedDate` field of a query: If `asDateOnly` is set to true in the `ToModifiedDate` field of a query, then the query includes elements modified up to the end of the day. If `asDateOnly` is false, the query includes elements modified up to the specified time (or up to the beginning of the day if no time is included). */
|
|
2051
|
+
ToModifiedDate?: string;
|
|
2052
|
+
/** Filters according to the object’s `Name`. */
|
|
2053
|
+
NameFilter?: NameFilter;
|
|
2054
|
+
/** Filters according to the object’s `Name`. */
|
|
2055
|
+
NameRangeFilter?: NameRangeFilter;
|
|
2056
|
+
/** Filters according to total balance. Total balance includes the balance for all subaccounts; for example, a customer’s `TotalBalance` would include all the jobs for that customer. */
|
|
2057
|
+
TotalBalanceFilter?: TotalBalanceFilter;
|
|
2058
|
+
/** Filters by the specified currency. */
|
|
2059
|
+
CurrencyFilter?: CurrencyFilter;
|
|
2060
|
+
/** Filter according to class. */
|
|
2061
|
+
ClassFilter?: ClassFilter;
|
|
2062
|
+
/** You use this if you want to limit the data that will be returned in the response. In this list, you specify the name of each top-level element or aggregate that you want to be returned in the response to the request. You cannot specify fields within an aggregate, for example, you cannot specify a `City` within an Address: you must specify Address and will get the entire address. The names specified in the list are not parsed, so you must be especially careful to supply valid names, properly cased. No error is returned in the status code if you specify an invalid name. Notice that if you want to return custom data or private data extensions, you must specify the `DataExtRet` element and you must supply the `OwnerID` set to either a value of 0 (custom data) or the GUID for the private data. */
|
|
2063
|
+
IncludeRetElement?: string[] | string;
|
|
2064
|
+
/** Zero or more `OwnerID` values. `OwnerID` refers to the owner of a data extension:If `OwnerID` is 0, this is a public data extension, also known as a custom field. Custom fields appear in the QuickBooks UI.If `OwnerID` is a GUID, for example `{6B063959-81B0-4622-85D6-F548C8CCB517}`, this field is a private data extension defined by an integrated application. Private data extensions do not appear in the QuickBooks UI. Note that `OwnerID` values are not case-sensitive, meaning that if you enter an `OwnerID` value with lower-case letters, the value will be saved and returned with upper-case letters. When you share a private 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. */
|
|
2065
|
+
OwnerID?: string[] | string;
|
|
2066
|
+
}
|
|
2067
|
+
export interface VendorQueryRs {
|
|
2068
|
+
VendorRet?: VendorRet | VendorRet[];
|
|
2069
|
+
}
|
|
2070
|
+
interface VendorRet {
|
|
1914
2071
|
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
1915
2072
|
ListID: string;
|
|
2073
|
+
/** Time the object was created. */
|
|
2074
|
+
TimeCreated: string;
|
|
2075
|
+
/** Time the object was last modified. */
|
|
2076
|
+
TimeModified: string;
|
|
1916
2077
|
/** A number that the server generates and assigns to this object. Every time the object is changed, the server will change its `EditSequence` value. When you try to modify a list object, you must provide its `EditSequence`. The server compares the `EditSequence` you provide with the `EditSequence` in memory to make sure you are dealing with the latest copy of the object. If you are not, the server will reject the request and return an error. Because `EditSequence` is only used to check whether two objects match, there is no reason to interpret its value. */
|
|
1917
2078
|
EditSequence: string;
|
|
1918
2079
|
/** The case-insensitive name of a list object, not including the names of its ancestors. `Name` must be unique, unless it is the `Name` of a “hierarchical” list object. List objects in different hierarchies can have duplicate names because their `FullNames` will still be unique. For example, two objects could both have the `Name` kitchen, but they could have unique `FullNames`, such as Job12:kitchen and Baker:kitchen. For built-in currencies, `Name` is the internationally accepted currency name and is not editable. */
|
|
1919
|
-
Name
|
|
2080
|
+
Name: string;
|
|
1920
2081
|
/** If `IsActive` is true, this object is currently enabled for use by QuickBooks. The default value is true. */
|
|
1921
2082
|
IsActive?: boolean;
|
|
1922
2083
|
/** Classes can be used to separate transactions into meaningful categories. (For example, transactions could be classified according to department, business location, or type of work.) In QuickBooks, class tracking is off by default. A `ClassRef` aggregate refers to one of these named classes. For example, in a `TimeTracking` message, `ClassRef` refers to the QuickBooks class into which the timed activity falls. If a `ClassRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. In an `InvoiceAdd` request, if you specify a `ClassRef` for the whole invoice, that same `ClassRef` is automatically used in the line items. If you want to clear that (that is, have NO `ClassRef` for the line item, you can clear it in the line item by simply not specifying it in the line item. */
|
|
1923
2084
|
ClassRef?: ClassRef;
|
|
2085
|
+
/** Is the current entity a tax agency. */
|
|
2086
|
+
IsTaxAgency?: boolean;
|
|
1924
2087
|
/** The name of the QuickBooks user’s business, as specified in QuickBooks. `CompanyName` and Address are used on invoices, checks, and other forms. (`LegalCompanyName` and `LegalAddress`, on the other hand, are used on a company’s tax forms and pay stubs.) */
|
|
1925
2088
|
CompanyName?: string;
|
|
1926
2089
|
/** A formal reference, such as Mr. or Dr., that precedes a name. */
|
|
@@ -1935,6 +2098,8 @@ interface VendorMod {
|
|
|
1935
2098
|
JobTitle?: string;
|
|
1936
2099
|
/** If an address request fails, some combination of address fields might be too long. */
|
|
1937
2100
|
VendorAddress?: VendorAddress;
|
|
2101
|
+
/** The address expressed as an address block of `Addr1` through `Addr5`, depending on the number of lines in the original request that created the address. */
|
|
2102
|
+
VendorAddressBlock?: VendorAddressBlock;
|
|
1938
2103
|
/** Whatever address you specify in this aggregate must not result in an address greater than 5 lines, otherwise you’ll get a runtime error, because QuickBooks doesn’t support addresses more than 5 lines. There are two ways to specify an address within this aggregate: Using `Addr1` through `Addr3` along with the other possible aggregate elements, such as `City`, `State`, Postalcode.Using `Addr1`, `Addr2`, `Addr3`, `Addr4`, and `Addr5` to fully specify the address. If you use this so called “address block” approach, you cannot use any other address elements, such as `City`, `State`, etc. (Note: this approach is not valid for `EmployeeAdd`/Mod/Query) If you use the address block approach above, the lines `Addr1`…`Addr5` are each printed as a separate line on the transaction, and the values are returned in the Ret object under the aggregate `ShipAddressBlock` or `BillAddressBlock`. */
|
|
1939
2104
|
ShipAddress?: ShipAddress;
|
|
1940
2105
|
/** The telephone number. */
|
|
@@ -1954,7 +2119,7 @@ interface VendorMod {
|
|
|
1954
2119
|
/** List of additional contacts. */
|
|
1955
2120
|
AdditionalContactRef?: AdditionalContactRef | AdditionalContactRef[];
|
|
1956
2121
|
/** A list of contact records. */
|
|
1957
|
-
|
|
2122
|
+
ContactsRet?: ContactsRet | ContactsRet[];
|
|
1958
2123
|
/** The vendor’s name as it will appear on checks sent to the vendor. (Corresponds in the QuickBooks user interface to the “Print on Check as” field of the Edit Vendor and New Vendor windows.) */
|
|
1959
2124
|
NameOnCheck?: string;
|
|
1960
2125
|
/** Account numbers appear in the QuickBooks chart of accounts, Account fields, and reports and graphs. If the `IsUsingAccountNumber` preference is false (that is, if the QuickBooks user has the account numbers Preference turned off), you can still set account numbers through the SDK, but the numbers will not be visible in the user interface. */
|
|
@@ -1962,7 +2127,7 @@ interface VendorMod {
|
|
|
1962
2127
|
/** Additional information about this vendor. */
|
|
1963
2128
|
Notes?: string;
|
|
1964
2129
|
/** List of notes. */
|
|
1965
|
-
|
|
2130
|
+
AdditionalNotesRet?: AdditionalNotesRet | AdditionalNotesRet[];
|
|
1966
2131
|
/** Vendor types allow business owners to categorize vendors in ways that are meaningful for their businesses. For example, a vendor type might indicate which industry a vendor represents, or which part of the country a vendor is in. A `VendorTypeRef` aggregate refers to one of the types on the `VendorType` list. In a request, if a `VendorTypeRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. */
|
|
1967
2132
|
VendorTypeRef?: VendorTypeRef;
|
|
1968
2133
|
/** Refers to the payment terms associated with this entity. (This will be an item on the `DateDrivenTerms` or `StandardTerms` list.) If a `TermsRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. */
|
|
@@ -1973,8 +2138,12 @@ interface VendorMod {
|
|
|
1973
2138
|
VendorTaxIdent?: string;
|
|
1974
2139
|
/** If `IsVendorEligibleFor1099` is set to true, `VendorTaxIdent` and `VendorAddress` are required in a vendor add request message. Otherwise, `VendorTaxIdent` and `VendorAddress` are optional. */
|
|
1975
2140
|
IsVendorEligibleFor1099?: boolean;
|
|
2141
|
+
/** A positive number indicates money owed to this vendor. */
|
|
2142
|
+
Balance?: string;
|
|
1976
2143
|
/** Billing rates are used to override the service item rate in a time transaction (`TimeTrackingAdd`) based on the employee or vendor performing the work. Billing rates are assigned to an employee or a vendor to specify overrides to service items. */
|
|
1977
2144
|
BillingRateRef?: BillingRateRef;
|
|
2145
|
+
/** Allows for the attachment of a user defined GUID value. */
|
|
2146
|
+
ExternalGUID?: string;
|
|
1978
2147
|
/** Each item on a sales form is assigned a sales-tax code that indicates whether the item is taxable or non-taxable, and why. Two general codes, which can be modified but not deleted, appear on the sales-tax code list by default:Non-taxable (`Name` = NON; `Desc` = Non-Taxable; `IsTaxable` = false)Taxable (`Name` = TAX; `Desc` = Taxable; `IsTaxable` = true) A sales-tax code can be deleted only if it is no longer associated with any customer, item, or transaction. If the “Do You Charge Sales Tax?” preference within QuickBooks is set to No, QuickBooks will assign the default non-taxable sales-tax code to all sales. A `SalesTaxCodeRef` aggregate refers to a sales-tax code on the list. In a request, if a `SalesTaxCodeRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. In a Customer message, `SalesTaxCodeRef` refers to the sales-tax code that will be used for items related to this customer. In an `ItemInventory` message, `SalesTaxCodeRef` refers to the type of sales tax that will be charged for this item, if it is a taxable item and if sales tax is set up within QuickBooks. */
|
|
1979
2148
|
SalesTaxCodeRef?: SalesTaxCodeRef;
|
|
1980
2149
|
/** The country that sales tax is collected for. */
|
|
@@ -2001,45 +2170,13 @@ interface VendorMod {
|
|
|
2001
2170
|
PrefillAccountRef?: PrefillAccountRef | PrefillAccountRef[];
|
|
2002
2171
|
/** The currency object contains all of the information needed by QuickBooks to display and use. For built-in currencies, the name and currency code values are internationally accepted values and thus are not editable. The comma format is editable, as is the `IsActive` status. For user-defined currencies, every value in the object is editable including name and currency code. When used with `PriceLevels`, the `CurrencyRef` should only be used with “per item” price levels. */
|
|
2003
2172
|
CurrencyRef?: CurrencyRef;
|
|
2173
|
+
/** A list of `IDataExtRet` objects, each of which represents a field that has been added to QuickBooks as a data extension. */
|
|
2174
|
+
DataExtRet?: DataExtRet | DataExtRet[];
|
|
2004
2175
|
}
|
|
2005
|
-
|
|
2006
|
-
|
|
2007
|
-
|
|
2008
|
-
|
|
2009
|
-
|
|
2010
|
-
export interface VendorModRs {
|
|
2011
|
-
VendorRet?: VendorRet;
|
|
2012
|
-
ErrorRecovery?: ErrorRecovery;
|
|
2013
|
-
}
|
|
2014
|
-
export interface VendorQueryRq {
|
|
2015
|
-
/** One or more `ListID` values. Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
2016
|
-
ListID?: string[] | string;
|
|
2017
|
-
/** A list of one or more `FullName` values. `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
2018
|
-
FullName?: string[] | string;
|
|
2019
|
-
/** Limits the number of objects that a query returns. (To get a count of how many objects could possibly be returned, use the `metaData` query attribute.) If you include a `MaxReturned` value, it must be at least 1. */
|
|
2020
|
-
MaxReturned?: number;
|
|
2021
|
-
/** Used in filters to select list objects based on whether or not they are currently enabled for use by QuickBooks. The default value is `asActiveOnly`, which selects only list objects that are active. */
|
|
2022
|
-
ActiveStatus?: ActiveStatus;
|
|
2023
|
-
/** Selects objects modified on or after this date. See the note below regarding QBFC usage.For desktop versions of QuickBooks, the `FromModifiedDate` and `ToModifiedDate` must be between 1970-01-01 and 2038-01-19T03:14:07 (2038-01-18T19:14:07-08:00 PST). (The time portion of the field was not supported in qbXML version 1.0 or 1.1.) Also, for desktop versions of QuickBooks, if `FromModifiedDate` includes a date but not a time (for example, if you set `FromModifiedDate` to 2003-02-14), the time is assumed to be zero (2003-02-14T00:00:00). If you omit `FromModifiedDate`, it will be set to 1970-01-01T00:00:00 (1969-12-31T16:00:00-08:00 PST).For QBOE, the `FromModifiedDate` and `ToModifiedDate` must be between 1900-01-01T00:00:00 and 9999-12-31T00:00:00. If `FromModifiedDate` includes a date but not a time (for example, if you set `FromModifiedDate` to 2003-02-14), the time is assumed to be zero (2003-02-14T00:00:00). If you omit `FromModifiedDate`, it will be set to 1900-01-01T00:00:00.`Note`: When specifying this in QBFC, you need to supply the parameter `asDateOnly`, which is a Boolean. If `asDateOnly` is true, the date value will be represented as a date only (without a time). If `asDateOnly` is false, the date value will be represented as date and time, padded with zeros if necessary, and set to the beginning of the day if no time is provided. The `asDateOnly` parameter is especially useful in the `ToModifiedDate` field of a query: If `asDateOnly` is set to true in the `ToModifiedDate` field of a query, then the query includes elements modified up to the end of the day. If `asDateOnly` is false, the query includes elements modified up to the specified time (or up to the beginning of the day if no time is included). */
|
|
2024
|
-
FromModifiedDate?: string;
|
|
2025
|
-
/** Selects objects modified on or before this date. See the note below on QBFC usage.For desktop versions of QuickBooks, the `ToModifiedDate` and `FromModifiedDate` must be between 01/01/1970 and 2038-01-19T03:14:07 (2038-01-18T19:14:07-08:00 PST). (Note that the time portion of the field was not supported in qbXML version 1.0 or 1.1.) If `ToModifiedDate` includes a date but not a time (for example, if you set `ToModifiedDate` to 2003-02-14), the time is assumed to be the end of the day (2003-02-14T23:59:59). If you omit `ToModifiedDate` altogether, it will be set to 2038-01-19T03:14:07 (2038-01-18T19:14:07-08:00 PST).For QBOE, the `ToModifiedDate` and `FromModifiedDate` must be between 01/01/1900 and 9999-12-31T00:00:00. If `ToModifiedDate` includes a date but not a time (for example, if you set `ToModifiedDate` to 2003-02-14), the time is assumed to be the end of the day (2003-02-14T23:59:59). If you omit `ToModifiedDate` altogether, it will be set to 9999-12-31T00:00:00.`Note`: When specifying this in QBFC, you need to supply the parameter `asDateOnly`, which is a Boolean. If `asDateOnly` is true, the date value will be represented as a date only (without a time). If `asDateOnly` is false, the date value will be represented as date and time, padded with zeros if necessary, and set to the beginning of the day if no time is provided. The `asDateOnly` parameter is especially useful in the `ToModifiedDate` field of a query: If `asDateOnly` is set to true in the `ToModifiedDate` field of a query, then the query includes elements modified up to the end of the day. If `asDateOnly` is false, the query includes elements modified up to the specified time (or up to the beginning of the day if no time is included). */
|
|
2026
|
-
ToModifiedDate?: string;
|
|
2027
|
-
/** Filters according to the object’s `Name`. */
|
|
2028
|
-
NameFilter?: NameFilter;
|
|
2029
|
-
/** Filters according to the object’s `Name`. */
|
|
2030
|
-
NameRangeFilter?: NameRangeFilter;
|
|
2031
|
-
/** Filters according to total balance. Total balance includes the balance for all subaccounts; for example, a customer’s `TotalBalance` would include all the jobs for that customer. */
|
|
2032
|
-
TotalBalanceFilter?: TotalBalanceFilter;
|
|
2033
|
-
/** Filters by the specified currency. */
|
|
2034
|
-
CurrencyFilter?: CurrencyFilter;
|
|
2035
|
-
/** Filter according to class. */
|
|
2036
|
-
ClassFilter?: ClassFilter;
|
|
2037
|
-
/** You use this if you want to limit the data that will be returned in the response. In this list, you specify the name of each top-level element or aggregate that you want to be returned in the response to the request. You cannot specify fields within an aggregate, for example, you cannot specify a `City` within an Address: you must specify Address and will get the entire address. The names specified in the list are not parsed, so you must be especially careful to supply valid names, properly cased. No error is returned in the status code if you specify an invalid name. Notice that if you want to return custom data or private data extensions, you must specify the `DataExtRet` element and you must supply the `OwnerID` set to either a value of 0 (custom data) or the GUID for the private data. */
|
|
2038
|
-
IncludeRetElement?: string[] | string;
|
|
2039
|
-
/** Zero or more `OwnerID` values. `OwnerID` refers to the owner of a data extension:If `OwnerID` is 0, this is a public data extension, also known as a custom field. Custom fields appear in the QuickBooks UI.If `OwnerID` is a GUID, for example {6B063959-81B0-4622-85D6-F548C8CCB517}, this field is a private data extension defined by an integrated application. Private data extensions do not appear in the QuickBooks UI. Note that `OwnerID` values are not case-sensitive, meaning that if you enter an `OwnerID` value with lower-case letters, the value will be saved and returned with upper-case letters. When you share a private 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. */
|
|
2040
|
-
OwnerID?: string[] | string;
|
|
2041
|
-
}
|
|
2042
|
-
export interface VendorQueryRs {
|
|
2043
|
-
VendorRet?: VendorRet | VendorRet[];
|
|
2176
|
+
interface VendorTypeRef {
|
|
2177
|
+
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
2178
|
+
ListID?: string;
|
|
2179
|
+
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
2180
|
+
FullName?: string;
|
|
2044
2181
|
}
|
|
2045
2182
|
export {};
|