nxus-qbd 0.5.0 → 0.5.1

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.
@@ -2,7 +2,7 @@ export type ClientOptions = {
2
2
  baseUrl: "https://localhost:7242/" | (string & {});
3
3
  };
4
4
  /**
5
- * A QuickBooks Desktop Account object is a type of List object that represents a financial account within a company's chart of accounts, such as a Bank, Accounts Payable, Accounts Receivable, or Credit Card account Because it is a list object, it is tracked and identified by a unique, QuickBooks-assigned ListID as well as a FullName.
5
+ * Represents a financial account within the chart of accounts.
6
6
  */
7
7
  export type Account = {
8
8
  id: string;
@@ -46,9 +46,6 @@ export type AccountTaxLineInfo = {
46
46
  * The primary display name for the List object (e.g., Customer Name, Vendor Name).
47
47
  */
48
48
  name?: string | null;
49
- createdAt: string;
50
- updatedAt: string;
51
- revisionNumber: string;
52
49
  /**
53
50
  * Indicates whether the list item is active. Common to all list types.
54
51
  */
@@ -99,7 +96,9 @@ export type AdditionalNoteMod = {
99
96
  note: string;
100
97
  };
101
98
  /**
102
- * Address data model - shared across all QuickBooks entities
99
+ * The Address object represents a physical address, which can be associated with various entities in QuickBooks, such as customers, vendors, or employees.
100
+ * It includes properties for the street address, city, state, postal code, country, and an optional note.
101
+ * The Address object is used to capture and store location information for these entities in QuickBooks.
103
102
  */
104
103
  export type Address = {
105
104
  line1?: string | null;
@@ -125,7 +124,9 @@ export type AddressBlock = {
125
124
  line5?: string | null;
126
125
  };
127
126
  /**
128
- * A reusable request DTO for an address block.
127
+ * The AddressRequest object represents a physical address, which can be associated with various entities in QuickBooks, such as customers, vendors, or employees.
128
+ * It includes properties for the street address, city, state, postal code, country, and an optional note.
129
+ * The AddressRequest object is used to capture and store location information for these entities in QuickBooks.
129
130
  */
130
131
  export type AddressRequest = {
131
132
  line1?: string | null;
@@ -1527,7 +1528,9 @@ export type BaseUnit = {
1527
1528
  */
1528
1529
  export type BaseUnitRequest = {
1529
1530
  /**
1530
- * (Required) The name of the base unit (e.g., "Barrel"). Max length: 31.
1531
+ * The case-insensitive unique name of this unit-of-measure set, unique across all unit-of-measure sets. To ensure this set appears in the QuickBooks UI for companies configured with a single unit per item, prefix the name with "By the" (e.g., "By the Barrel").
1532
+ *
1533
+ * **NOTE**: Unit-of-measure sets do not have a `fullName` field because they are not hierarchical objects, which is why `name` is unique for them but not for objects that have parents.
1531
1534
  */
1532
1535
  name: string;
1533
1536
  /**
@@ -1870,8 +1873,7 @@ export type CheckBillPayment = {
1870
1873
  customFields?: Array<QbdDataExt>;
1871
1874
  };
1872
1875
  /**
1873
- * Classes can be used to separate transactions into meaningful categories.
1874
- * For example, transactions could be classified according to department, business location, or type of work.
1876
+ * A category used to group objects into meaningful categories within the nXus platform.
1875
1877
  */
1876
1878
  export type Class = {
1877
1879
  id: string;
@@ -1886,12 +1888,21 @@ export type Class = {
1886
1888
  updatedAt: string;
1887
1889
  revisionNumber: string;
1888
1890
  /**
1889
- * The FullName is the name prefixed by the names of each ancestor, for example Parent:Child:SubClass. FullName values are not case-sensitive.
1891
+ * The case-insensitive fully-qualified unique name of this class.
1892
+ *
1893
+ * Formed by combining the names of its hierarchical parent objects with its own name, separated by colons.
1890
1894
  */
1891
1895
  fullname?: string | null;
1896
+ /**
1897
+ * The parent class one level above this one in the hierarchy.
1898
+ *
1899
+ * If this class is at the top level, this field will be null.
1900
+ */
1892
1901
  parent?: QbdRef | null;
1893
1902
  /**
1894
- * A number indicating the number of ancestors. For example, The customer job with Name = carpets and FullName = Jones:Building2:carpets would have a sublevel of 2.
1903
+ * The depth level of this class in the hierarchy.
1904
+ *
1905
+ * A top-level class has a sublevel of 0; each subsequent sublevel increases this number by 1.
1895
1906
  */
1896
1907
  sublevel?: number | null;
1897
1908
  /**
@@ -2044,67 +2055,67 @@ export type Contact = {
2044
2055
  customFields?: Array<QbdDataExt>;
2045
2056
  };
2046
2057
  /**
2047
- * Request model for creating a new account.
2058
+ * Contains parameters for creating a new financial account.
2048
2059
  */
2049
2060
  export type CreateAccountRequest = {
2050
2061
  /**
2051
- * Account name (required)
2062
+ * The case-insensitive name of this account.
2063
+ *
2064
+ * Not guaranteed to be unique across all accounts, but must be unique within its hierarchical parent.
2052
2065
  */
2053
2066
  name: string;
2054
2067
  /**
2055
- * Account type (required)
2056
- * NOTE: Cannot create non_posting accounts via API - QuickBooks creates these internally
2068
+ * The classification of this account, indicating its purpose within the chart of accounts.
2057
2069
  */
2058
2070
  accountType: AccountType;
2059
2071
  /**
2060
- * Account number (optional)
2072
+ * The account number, which appears in the chart of accounts, reports, and graphs.
2061
2073
  */
2062
2074
  accountNumber?: string | null;
2063
2075
  /**
2064
- * Account description (optional)
2076
+ * A description of this account.
2065
2077
  */
2066
2078
  description?: string | null;
2067
2079
  /**
2068
- * Parent account reference (for sub-accounts)
2080
+ * The parent account one level above this one in the hierarchy.
2081
+ *
2082
+ * Required for creating sub-accounts. If omitted, the account is created at the top level.
2069
2083
  */
2070
2084
  parentId?: string | null;
2071
2085
  /**
2072
- * The default sales-tax code for transactions with this account, determining whether
2073
- * the transactions are taxable or non-taxable. This can be overridden at the transaction or transaction-line level.
2074
- * Default codes include "Non" (non-taxable) and "Tax" (taxable), but custom codes can also be created in QuickBooks.
2075
- * If QuickBooks is not set up to charge sales tax(via the "Do You Charge Sales Tax?" preference), it will assign the
2076
- * default non-taxable code to all sales.
2086
+ * The default sales-tax code for transactions with this account.
2087
+ *
2088
+ * Determines whether the transactions are taxable or non-taxable. This can be overridden at the transaction or transaction-line level. Default codes typically include "Non" (non-taxable) and "Tax" (taxable).
2077
2089
  */
2078
2090
  salesTaxCodeId?: string | null;
2079
2091
  /**
2080
- * The identifier of the tax line associated with this account. You can see a list of all available values for this
2081
- * field by calling the endpoint for account tax lines.
2092
+ * The identifier of the tax line associated with this account.
2082
2093
  */
2083
2094
  taxLineId?: string | null;
2084
2095
  /**
2085
- * The account's currency. For built-in currencies, the name and code are standard international values. For user-defined
2086
- * currencies, all values are editable.
2096
+ * The account's currency.
2087
2097
  */
2088
2098
  currencyId?: string | null;
2089
2099
  /**
2090
- * Whether the account is active (default: true)
2100
+ * Indicates whether this account is active.
2101
+ *
2102
+ * Inactive objects are typically hidden from views and reports.
2091
2103
  */
2092
2104
  isActive?: boolean;
2093
2105
  /**
2094
- * Whether the account is a tax account (optional, default: false)
2095
- * Only set to true for accounts that track tax liabilities/expenses
2106
+ * Indicates whether this account is used for tracking taxes.
2096
2107
  */
2097
2108
  isTaxAccount?: boolean;
2098
2109
  /**
2099
- * Opening balance for the account (optional)
2110
+ * The amount of money in, or the value of, this account as of the opening balance date.
2100
2111
  */
2101
2112
  openBalance?: number | null;
2102
2113
  /**
2103
- * Opening balance date (optional, defaults to today)
2114
+ * The date of the opening balance of this account.
2104
2115
  */
2105
2116
  openBalanceDate?: string | null;
2106
2117
  /**
2107
- * Bank account number (for bank accounts only)
2118
+ * The bank account number or identifying note.
2108
2119
  */
2109
2120
  bankNumber?: string | null;
2110
2121
  externalId?: string | null;
@@ -2115,7 +2126,7 @@ export type CreateAccountRequest = {
2115
2126
  */
2116
2127
  export type CreateAdditionalNoteRequest = {
2117
2128
  /**
2118
- * The note text (max 4095 characters).
2129
+ * A note or comment about this employee.
2119
2130
  */
2120
2131
  note: string;
2121
2132
  };
@@ -2211,7 +2222,7 @@ export type CreateBillPaymentOrCreditRequest = {
2211
2222
  [key: string]: unknown;
2212
2223
  };
2213
2224
  /**
2214
- * Model used to create a new vendor Bill in QuickBooks Desktop.
2225
+ * Request model used to create a new Bill in QuickBooks.
2215
2226
  */
2216
2227
  export type CreateBillRequest = {
2217
2228
  /**
@@ -2259,12 +2270,13 @@ export type CreateBillRequest = {
2259
2270
  externalId?: string | null;
2260
2271
  linkToTransactionIds?: Array<string> | null;
2261
2272
  /**
2262
- * Expense line items for the bill.
2263
- * At least one expense line or item line is required.
2273
+ * General Ledger expense allocations.
2274
+ * Must provide at least one Expense Line if no Item Lines are present.
2264
2275
  */
2265
2276
  expenseLines?: Array<CreateExpenseLineRequest> | null;
2266
2277
  /**
2267
- * Item line items for the bill (for inventory items).
2278
+ * Inventory or Service item allocations.
2279
+ * Must provide at least one Item Line if no Expense Lines are present.
2268
2280
  */
2269
2281
  itemLines?: Array<CreateItemLineRequest> | null;
2270
2282
  };
@@ -2497,23 +2509,25 @@ export type CreateCheckRequest = {
2497
2509
  applyToTransactions?: Array<ApplyCheckToTransactionRequest> | null;
2498
2510
  };
2499
2511
  /**
2500
- * Creates a new QuickBooks Class with the specified properties.
2512
+ * Contains parameters for creating a new class.
2501
2513
  */
2502
2514
  export type CreateClassRequest = {
2503
2515
  /**
2504
- * (Required) The name of the class (up to 31 characters).
2505
- * Note: If the class is going to be a sub-class, this property should only contain the
2506
- * child's name, not the full hierarchical name of its ancestors.
2516
+ * The case-insensitive name of this class.
2517
+ *
2518
+ * Not guaranteed to be unique across all classes, but must be unique within its hierarchical parent.
2507
2519
  */
2508
2520
  name: string;
2509
2521
  /**
2510
- * (Optional) Whether the class is active. Defaults to true.
2522
+ * Indicates whether this class is active.
2523
+ *
2524
+ * Inactive objects are typically hidden from views and reports. Defaults to true.
2511
2525
  */
2512
2526
  isActive?: boolean | null;
2513
2527
  /**
2514
- * (Optional) The ListID or FullName of the parent class.
2515
- * A reference to the list object that is exactly one level above this one.
2516
- * Used to create sub-classes.
2528
+ * The parent class one level above this one in the hierarchy.
2529
+ *
2530
+ * If this class is at the top level, this field will be null.
2517
2531
  */
2518
2532
  parentId?: string | null;
2519
2533
  };
@@ -2949,64 +2963,225 @@ export type CreateCurrencyRequest = {
2949
2963
  externalId?: string | null;
2950
2964
  };
2951
2965
  /**
2952
- * Request model for creating a new customer
2966
+ * Represents a request to create a new customer or project (job) in QuickBooks Desktop.
2953
2967
  */
2954
2968
  export type CreateCustomerRequest = {
2969
+ /**
2970
+ * The primary identifier name for the customer or job.
2971
+ *
2972
+ * This value is case-insensitive. Because it does not include parent hierarchy prefixes, it is not guaranteed to be globally unique across your entire QuickBooks company file.
2973
+ */
2955
2974
  name: string;
2975
+ /**
2976
+ * The unique identifier of the Class associated with this customer.
2977
+ *
2978
+ * Useful for segmenting records by department, region, or vertical. Class tracking must be enabled in QuickBooks preferences.
2979
+ */
2956
2980
  isActive?: boolean | null;
2981
+ /**
2982
+ * The unique identifier of the Class associated with this customer.
2983
+ *
2984
+ * Useful for segmenting records by department, region, or vertical. Class tracking must be enabled in QuickBooks preferences.
2985
+ */
2957
2986
  classId?: string | null;
2987
+ /**
2988
+ * The unique identifier of the hierarchical parent customer.
2989
+ *
2990
+ * Leave this null if creating a top-level customer.
2991
+ * **Important:** This field is strictly required if you provide a <see cref="P:QbdWebService.Application.Resources.Qbd.Lists.Customer.Models.CreateCustomerRequest.JobStatus" />, as that indicates this record is a sub-customer (job).
2992
+ */
2958
2993
  parentId?: string | null;
2994
+ /**
2995
+ * The formal company name to be printed on invoices, checks, and official correspondence.
2996
+ */
2959
2997
  companyName?: string | null;
2998
+ /**
2999
+ * The formal title preceding the primary contact's name (e.g., Mr., Ms., Dr.).
3000
+ */
2960
3001
  salutation?: string | null;
3002
+ /**
3003
+ * The first name of the primary contact person.
3004
+ */
2961
3005
  firstName?: string | null;
3006
+ /**
3007
+ * The middle name or initial of the primary contact person.
3008
+ */
2962
3009
  middleName?: string | null;
3010
+ /**
3011
+ * The last name of the primary contact person.
3012
+ */
2963
3013
  lastName?: string | null;
3014
+ /**
3015
+ * The professional title of the primary contact.
3016
+ */
2964
3017
  jobTitle?: string | null;
2965
3018
  billingAddress?: AddressRequest | null;
2966
3019
  shippingAddress?: AddressRequest | null;
2967
3020
  shippingAddresses?: Array<ShipToAddressRequest> | null;
3021
+ /**
3022
+ * The primary telephone number.
3023
+ */
2968
3024
  phone?: string | null;
3025
+ /**
3026
+ * A secondary telephone number.
3027
+ */
2969
3028
  altPhone?: string | null;
3029
+ /**
3030
+ * The fax number of the primary contact.
3031
+ */
2970
3032
  fax?: string | null;
3033
+ /**
3034
+ * The primary email address used for digital correspondence and e-invoicing.
3035
+ */
2971
3036
  email?: string | null;
3037
+ /**
3038
+ * An additional email address to automatically CC on communications.
3039
+ */
2972
3040
  ccEmail?: string | null;
3041
+ /**
3042
+ * The primary contact name used for digital correspondence and e-invoicing.
3043
+ */
2973
3044
  contact?: string | null;
2974
3045
  alternateContact?: string | null;
2975
3046
  customContactFields?: Array<CustomContactField> | null;
3047
+ /**
3048
+ * An expanded list of alternate personnel linked to this customer account.
3049
+ */
2976
3050
  contacts?: Array<Contact> | null;
3051
+ /**
3052
+ * The unique identifier of the type of the customer.
3053
+ */
2977
3054
  customerTypeId?: string | null;
3055
+ /**
3056
+ * The unique identifier of the terms dictating the payment schedule and early-payment discounts (e.g., Net 30).
3057
+ */
2978
3058
  termsId?: string | null;
3059
+ /**
3060
+ * The unique identifier of the sales representative associated with this customer account.
3061
+ */
2979
3062
  salesRepresentativeId?: string | null;
3063
+ /**
3064
+ * The initial monetary balance owed by the customer at the time of creation.
3065
+ */
2980
3066
  openBalance?: number | null;
3067
+ /**
3068
+ * The date on which the open balance was established.
3069
+ */
2981
3070
  openBalanceDate?: string | null;
3071
+ /**
3072
+ * The identifier for the default sales tax code (taxable vs. non-taxable).
3073
+ *
3074
+ * Applied globally to transactions unless overridden at the line-item level.
3075
+ */
2982
3076
  salesTaxCodeId?: string | null;
3077
+ /**
3078
+ * The identifier for the specific tax agency rate applied to this customer's purchases.
3079
+ *
3080
+ * This drives the actual percentage calculation, unlike the binary <see cref="P:QbdWebService.Application.Resources.Qbd.Lists.Customer.Models.CreateCustomerRequest.SalesTaxCodeId" />.
3081
+ */
2983
3082
  itemSalesTaxId?: string | null;
3083
+ /**
3084
+ * The geographical country jurisdiction for tax calculations (e.g., US, UK, Canada, Australia).
3085
+ */
2984
3086
  salesTaxCountry?: string | null;
3087
+ /**
3088
+ * The certificate number provided by customers purchasing items wholesale/for resale.
3089
+ */
2985
3090
  resaleNumber?: string | null;
2986
3091
  accountNumber?: string | null;
3092
+ /**
3093
+ * The maximum allowable outstanding balance before a credit hold is triggered.
3094
+ */
2987
3095
  creditLimit?: number | null;
3096
+ /**
3097
+ * The identifier for the customer's default way of paying (e.g., Cash, Check, Visa).
3098
+ */
2988
3099
  preferredPaymentMethodId?: string | null;
3100
+ /**
3101
+ * Stored credit card details for processing transactions.
3102
+ */
2989
3103
  creditCardInfo?: CreditCardInfo | null;
2990
3104
  /**
2991
- * JobStatus may have one of the following values: Awarded, Closed, InProgress, None [DEFAULT], NotAwarded, Pending
3105
+ * The current operational state of the job.
3106
+ *
3107
+ * **Important:** Supplying this value explicitly requires <see cref="P:QbdWebService.Application.Resources.Qbd.Lists.Customer.Models.CreateCustomerRequest.ParentId" /> to be populated, indicating this is a sub-customer/job entity.
3108
+ * Available values: Awarded, Closed, InProgress, None, NotAwarded, Pending.
2992
3109
  */
2993
3110
  jobStatus?: NullableJobStatus | null;
3111
+ /**
3112
+ * The date active work commenced on the job.
3113
+ *
3114
+ * Must be chronologically before or equal to <see cref="P:QbdWebService.Application.Resources.Qbd.Lists.Customer.Models.CreateCustomerRequest.JobProjectedEndDate" /> and <see cref="P:QbdWebService.Application.Resources.Qbd.Lists.Customer.Models.CreateCustomerRequest.JobEndDate" />, if they are provided.
3115
+ */
2994
3116
  jobStartDate?: string | null;
3117
+ /**
3118
+ * The estimated deadline for job completion.
3119
+ *
3120
+ * Must be chronologically on or after the <see cref="P:QbdWebService.Application.Resources.Qbd.Lists.Customer.Models.CreateCustomerRequest.JobStartDate" />, if provided.
3121
+ */
2995
3122
  jobProjectedEndDate?: string | null;
3123
+ /**
3124
+ * The actual date the job was finalized.
3125
+ *
3126
+ * Must be chronologically on or after the <see cref="P:QbdWebService.Application.Resources.Qbd.Lists.Customer.Models.CreateCustomerRequest.JobStartDate" />, if provided.
3127
+ */
2996
3128
  jobEndDate?: string | null;
3129
+ /**
3130
+ * A short summary outlining the scope of work for the job.
3131
+ */
2997
3132
  jobDesc?: string | null;
3133
+ /**
3134
+ * The unique identifier categorizing the nature of the job (e.g., Commercial, Residential, Maintenance).
3135
+ */
2998
3136
  jobTypeId?: string | null;
3137
+ /**
3138
+ * An overarching internal comment or memo regarding the customer.
3139
+ */
2999
3140
  notes?: string | null;
3141
+ /**
3142
+ * A collection of individual, distinct internal notes attached to the customer record.
3143
+ */
3000
3144
  additionalNotes?: Array<string> | null;
3145
+ /**
3146
+ * The default medium for sending invoices and estimates (e.g., Email, Mail, None).
3147
+ */
3001
3148
  preferredDeliveryMethod?: string | null;
3149
+ /**
3150
+ * The identifier for a custom pricing tier applied automatically to items sold to this customer.
3151
+ *
3152
+ * Overrides standard item rates automatically on new sales forms.
3153
+ */
3002
3154
  priceLevelId?: string | null;
3003
3155
  externalId?: string | null;
3156
+ /**
3157
+ * The official tax identification number (primarily utilized in UK and Canadian QBD versions).
3158
+ */
3004
3159
  taxRegistrationNumber?: string | null;
3160
+ /**
3161
+ * The unique identifier of the default currency used for this customer's transactions.
3162
+ *
3163
+ * Note: You must have multicurrency support enabled in QuickBooks Desktop for this field to be available.
3164
+ */
3005
3165
  currencyId?: string | null;
3166
+ /**
3167
+ * A name suffix (e.g., Jr., Sr., III).
3168
+ */
3006
3169
  suffix?: string | null;
3170
+ /**
3171
+ * The pager number for the primary contact.
3172
+ */
3007
3173
  printAs?: string | null;
3174
+ /**
3175
+ * The pager number for the primary contact.
3176
+ */
3008
3177
  pager?: string | null;
3178
+ /**
3179
+ * The mobile/cellular telephone number for the primary contact.
3180
+ */
3009
3181
  mobile?: string | null;
3182
+ /**
3183
+ * Additional carbon copy (CC) details.
3184
+ */
3010
3185
  cc?: string | null;
3011
3186
  };
3012
3187
  /**
@@ -3015,11 +3190,11 @@ export type CreateCustomerRequest = {
3015
3190
  */
3016
3191
  export type CreateCustomerTypeRequest = {
3017
3192
  /**
3018
- * (Required) The name of the customer type. (Max 31 characters)
3193
+ * The case-insensitive name of this customer type. Not guaranteed to be unique because it does not include the names of its hierarchical parent objects like `fullName` does. For example, two customer types could both have the `name` "Healthcare", but they could have unique `fullName` values, such as "Industry:Healthcare" and "Region:Healthcare".
3019
3194
  */
3020
3195
  name: string;
3021
3196
  /**
3022
- * (Optional) If false, this Customer Type is inactive. Default is true.
3197
+ * Indicates whether this customer type is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
3023
3198
  */
3024
3199
  isActive?: boolean | null;
3025
3200
  /**
@@ -3036,10 +3211,21 @@ export type CreateCustomerTypeRequest = {
3036
3211
  */
3037
3212
  export type CreateDateDrivenTermRequest = {
3038
3213
  id: string;
3214
+ /**
3215
+ * The case-insensitive unique name of this date-driven term, unique across all date-driven terms.
3216
+ *
3217
+ * **NOTE**: Date-driven terms do not have a `fullName` field because they are not hierarchical objects, which is why `name` is unique for them but not for objects that have parents.
3218
+ */
3039
3219
  name: string;
3220
+ /**
3221
+ * Indicates whether this date-driven term is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
3222
+ */
3040
3223
  isActive?: boolean | null;
3041
3224
  dueDayOfMonth?: string | null;
3042
3225
  gracePeriod?: string | null;
3226
+ /**
3227
+ * The day of the month within which payment must be received to qualify for the discount specified by `discountPercentage`.
3228
+ */
3043
3229
  discountDayOfMonth?: string | null;
3044
3230
  discountPercentage?: string | null;
3045
3231
  };
@@ -3100,29 +3286,76 @@ export type CreateDepositRequest = {
3100
3286
  */
3101
3287
  export type CreateEmployeeRequest = {
3102
3288
  /**
3103
- * The employee's name (required). This is the display name in QuickBooks.
3289
+ * Indicates whether this employee is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
3104
3290
  */
3105
3291
  isActive?: boolean | null;
3292
+ /**
3293
+ * The employee's formal salutation title that precedes their name, such as "Mr.", "Ms.", or "Dr.".
3294
+ */
3106
3295
  salutation?: string | null;
3296
+ /**
3297
+ * The employee's first name.
3298
+ */
3107
3299
  firstName?: string | null;
3300
+ /**
3301
+ * The employee's middle name.
3302
+ */
3108
3303
  middleName?: string | null;
3304
+ /**
3305
+ * The employee's last name.
3306
+ */
3109
3307
  lastName?: string | null;
3308
+ /**
3309
+ * The employee's job title.
3310
+ */
3110
3311
  jobTitle?: string | null;
3111
3312
  /**
3112
3313
  * ListID of the supervisor employee.
3113
3314
  */
3114
3315
  supervisorId?: string | null;
3316
+ /**
3317
+ * The employee's department. Found in the "employment job details" section of the employee's record in QuickBooks.
3318
+ */
3115
3319
  department?: string | null;
3320
+ /**
3321
+ * A description of this employee. Found in the "employment job details" section of the employee's record in QuickBooks.
3322
+ */
3116
3323
  description?: string | null;
3117
3324
  employeeAddress?: EmployeeAddress | null;
3325
+ /**
3326
+ * The name to use when printing this employee from QuickBooks. By default, this is the same as the `name` field.
3327
+ */
3118
3328
  printAs?: string | null;
3329
+ /**
3330
+ * The employee's primary telephone number.
3331
+ */
3119
3332
  phone?: string | null;
3333
+ /**
3334
+ * The employee's mobile phone number.
3335
+ */
3120
3336
  mobile?: string | null;
3337
+ /**
3338
+ * The employee's pager number.
3339
+ */
3121
3340
  pager?: string | null;
3341
+ /**
3342
+ * The employee's pager PIN.
3343
+ */
3122
3344
  pagerPin?: string | null;
3123
3345
  alternatePhone?: string | null;
3346
+ /**
3347
+ * The employee's fax number.
3348
+ */
3124
3349
  fax?: string | null;
3350
+ /**
3351
+ * The employee's email address.
3352
+ */
3125
3353
  email?: string | null;
3354
+ /**
3355
+ * The employee's Social Security Number. The value can be with or without dashes.
3356
+ *
3357
+ * **NOTE**: This field cannot be changed after the employee is created.
3358
+ */
3126
3359
  ssn?: string | null;
3127
3360
  /**
3128
3361
  * Additional contact references (may repeat, v12.0+).
@@ -3133,33 +3366,65 @@ export type CreateEmployeeRequest = {
3133
3366
  */
3134
3367
  emergencyContacts?: EmergencyContact | null;
3135
3368
  /**
3136
- * Additional notes (may repeat, v12.0+). For Add, only Note is needed.
3369
+ * Additional notes about this employee.
3137
3370
  */
3138
3371
  additionalNotes?: Array<CreateAdditionalNoteRequest> | null;
3372
+ /**
3373
+ * The employee type. This affects payroll taxes - a statutory employee is defined as an employee by statute. Note that owners/partners are typically on the "Other Names" list in QuickBooks, but if listed as an employee their type will be `owner`.
3374
+ */
3139
3375
  employeeType?: string | null;
3140
3376
  partOrFullTime?: string | null;
3377
+ /**
3378
+ * This employee's gender.
3379
+ */
3141
3380
  gender?: string | null;
3381
+ /**
3382
+ * The date this employee was hired, in ISO 8601 format (YYYY-MM-DD).
3383
+ */
3142
3384
  hiredDate?: string | null;
3143
3385
  releasedDate?: string | null;
3386
+ /**
3387
+ * This employee's date of birth, in ISO 8601 format (YYYY-MM-DD).
3388
+ */
3144
3389
  birthDate?: string | null;
3390
+ /**
3391
+ * The employee's account number, which appears in the QuickBooks chart of accounts, reports, and graphs.
3392
+ *
3393
+ * Note that if the "Use Account Numbers" preference is turned off in QuickBooks, the account number may not be visible in the user interface, but it can still be set and retrieved through the API.
3394
+ */
3145
3395
  accountNumber?: string | null;
3146
3396
  notes?: string | null;
3147
3397
  /**
3148
3398
  * ListID of the billing rate.
3149
3399
  */
3150
3400
  billingRateId?: string | null;
3401
+ /**
3402
+ * The target bonus for this employee, represented as a decimal string. Found in the "employment job details" section of the employee's record in QuickBooks.
3403
+ */
3151
3404
  targetBonus?: number | null;
3152
3405
  exempt?: string | null;
3153
3406
  keyEmployee?: string | null;
3407
+ /**
3408
+ * The original hire date for this employee, in ISO 8601 format (YYYY-MM-DD).
3409
+ */
3154
3410
  originalHireDate?: string | null;
3411
+ /**
3412
+ * The adjusted service date for this employee, in ISO 8601 format (YYYY-MM-DD). This date accounts for previous employment periods or leaves that affect seniority.
3413
+ */
3155
3414
  adjustedServiceDate?: string | null;
3156
3415
  usCitizen?: string | null;
3416
+ /**
3417
+ * This employee's ethnicity.
3418
+ */
3157
3419
  ethnicity?: string | null;
3158
3420
  disabled?: string | null;
3159
3421
  disabilityDesc?: string | null;
3160
3422
  onFile?: string | null;
3161
3423
  workAuthExpireDate?: string | null;
3162
3424
  usVeteran?: string | null;
3425
+ /**
3426
+ * This employee's military status if they are a U.S. veteran.
3427
+ */
3163
3428
  militaryStatus?: string | null;
3164
3429
  employeePayrollInfo?: EmployeePayrollInfo | null;
3165
3430
  externalId?: string | null;
@@ -3455,6 +3720,9 @@ export type CreateInventoryAdjustmentRequest = {
3455
3720
  * Implements ICreateRequest for the abstraction pattern.
3456
3721
  */
3457
3722
  export type CreateInventoryItemRequest = {
3723
+ /**
3724
+ * The case-insensitive name of this inventory item. Not guaranteed to be unique because it does not include the names of its hierarchical parent objects like `fullName` does. For example, two inventory items could both have the `name` "Cabinet", but they could have unique `fullName` values, such as "Kitchen:Cabinet" and "Inventory:Cabinet".
3725
+ */
3458
3726
  name: string;
3459
3727
  barcode?: BarCodeRequest | null;
3460
3728
  classId?: string | null;
@@ -3464,31 +3732,72 @@ export type CreateInventoryItemRequest = {
3464
3732
  isTaxIncluded?: boolean | null;
3465
3733
  salesTaxCodeId?: string | null;
3466
3734
  salesDescription?: string | null;
3735
+ /**
3736
+ * The price at which this inventory item is sold to customers, represented as a decimal string.
3737
+ */
3467
3738
  salesPrice?: number | null;
3468
3739
  incomeAccountId?: string | null;
3469
3740
  purchaseDescription?: string | null;
3741
+ /**
3742
+ * The cost at which this inventory item is purchased from vendors, represented as a decimal string.
3743
+ */
3470
3744
  purchaseCost?: number | null;
3471
3745
  purchaseTaxCodeId?: string | null;
3472
3746
  cogsAccountId?: string | null;
3473
3747
  preferredVendorId?: string | null;
3474
3748
  assetAccountId: string;
3749
+ /**
3750
+ * The minimum quantity of this inventory item at which QuickBooks prompts for reordering.
3751
+ */
3475
3752
  reorderPoint?: number | null;
3476
3753
  maximumQuantityOnHand?: number | null;
3754
+ /**
3755
+ * The number of units of this inventory item currently in inventory. `quantityOnHand` multiplied by `averageCost` equals `totalValue` for inventory item lists. To change the `quantityOnHand` for an inventory item, you must use an inventory-adjustment instead of updating the inventory item directly.
3756
+ */
3477
3757
  quantityOnHand?: number | null;
3478
3758
  totalValue?: number | null;
3479
3759
  inventoryDate?: string | null;
3760
+ /**
3761
+ * Indicates whether this inventory item is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
3762
+ */
3480
3763
  isActive?: boolean;
3481
3764
  externalId?: string | null;
3482
3765
  };
3483
3766
  export type CreateInventorySiteRequest = {
3767
+ /**
3768
+ * The case-insensitive unique name of this inventory site, unique across all inventory sites.
3769
+ *
3770
+ * **NOTE**: Inventory sites do not have a `fullName` field because they are not hierarchical objects, which is why `name` is unique for them but not for objects that have parents.
3771
+ */
3484
3772
  name: string;
3773
+ /**
3774
+ * Indicates whether this inventory site is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
3775
+ */
3485
3776
  isActive?: boolean | null;
3486
3777
  parentId?: string | null;
3778
+ /**
3779
+ * A description of this inventory site.
3780
+ */
3487
3781
  description?: string | null;
3782
+ /**
3783
+ * The name of the primary contact person for this inventory site.
3784
+ */
3488
3785
  contact?: string | null;
3786
+ /**
3787
+ * The inventory site's primary telephone number.
3788
+ */
3489
3789
  phone?: string | null;
3790
+ /**
3791
+ * The inventory site's fax number.
3792
+ */
3490
3793
  fax?: string | null;
3794
+ /**
3795
+ * The inventory site's email address.
3796
+ */
3491
3797
  email?: string | null;
3798
+ /**
3799
+ * The inventory site's address.
3800
+ */
3492
3801
  address?: AddressRequest | null;
3493
3802
  externalId?: string | null;
3494
3803
  };
@@ -3557,14 +3866,30 @@ export type CreateInvoiceRequest = {
3557
3866
  * Request model for creating an ItemDiscount.
3558
3867
  */
3559
3868
  export type CreateItemDiscountRequest = {
3869
+ /**
3870
+ * The case-insensitive name of this discount item. Not guaranteed to be unique because it does not include the names of its hierarchical parent objects like `fullName` does. For example, two discount items could both have the `name` "10% labor discount", but they could have unique `fullName` values, such as "Discounts:10% labor discount" and "Promotions:10% labor discount".
3871
+ */
3560
3872
  name: string;
3873
+ /**
3874
+ * Indicates whether this discount item is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
3875
+ */
3561
3876
  isActive?: boolean | null;
3562
3877
  parentId?: string | null;
3563
3878
  parentName?: string | null;
3564
3879
  itemDesc?: string | null;
3565
3880
  salesTaxCodeId?: string | null;
3566
3881
  salesTaxCodeName?: string | null;
3882
+ /**
3883
+ * The monetary amount to subtract from the total or subtotal when applying this discount item to a transaction, represented as a decimal string.
3884
+ *
3885
+ * **NOTE**: A flat rate discount applies to ALL lines recorded above it and distributes the discount amount equally across those lines, which affects tax calculations. For example, a $10 discount applied to a $100 taxable item and $100 non-taxable item would result in a $5 taxable discount and $5 non-taxable discount.
3886
+ */
3567
3887
  discountRate?: number | null;
3888
+ /**
3889
+ * The percentage amount to subtract from the total or subtotal when applying this discount item to a transaction.
3890
+ *
3891
+ * **NOTE**: A percentage discount only applies to the line immediately above it, so tax implications only affect that specific line.
3892
+ */
3568
3893
  discountRatePercent?: number | null;
3569
3894
  accountId?: string | null;
3570
3895
  accountName?: string | null;
@@ -3631,9 +3956,17 @@ export type CreateItemGroupLineRequest = {
3631
3956
  * Implements ICreateRequest for the new abstraction.
3632
3957
  */
3633
3958
  export type CreateItemGroupRequest = {
3959
+ /**
3960
+ * The case-insensitive unique name of this item group, unique across all item groups.
3961
+ *
3962
+ * **NOTE**: Item groups do not have a `fullName` field because they are not hierarchical objects, which is why `name` is unique for them but not for objects that have parents.
3963
+ */
3634
3964
  name: string;
3635
3965
  barCode?: BarCodeRequest | null;
3636
3966
  description?: string | null;
3967
+ /**
3968
+ * Indicates whether this item group is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
3969
+ */
3637
3970
  isActive?: boolean | null;
3638
3971
  unitOfMeasureSetId?: string | null;
3639
3972
  shouldPrintItemsInGroup?: boolean | null;
@@ -3648,11 +3981,17 @@ export type CreateItemInventoryAssemblyLineRequest = {
3648
3981
  * Request model for creating an ItemInventoryAssembly.
3649
3982
  */
3650
3983
  export type CreateItemInventoryAssemblyRequest = {
3984
+ /**
3985
+ * The case-insensitive name of this inventory assembly item. Not guaranteed to be unique because it does not include the names of its hierarchical parent objects like `fullName` does. For example, two inventory assembly items could both have the `name` "Deluxe Kit", but they could have unique `fullName` values, such as "Assemblies:Deluxe Kit" and "Inventory:Deluxe Kit".
3986
+ */
3651
3987
  name: string;
3652
3988
  incomeAccountId?: string | null;
3653
3989
  assetAccountId: string | null;
3654
3990
  cogsAccountId?: string | null;
3655
3991
  barCode?: BarCodeRequest | null;
3992
+ /**
3993
+ * Indicates whether this inventory assembly item is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
3994
+ */
3656
3995
  isActive?: boolean | null;
3657
3996
  classId?: string | null;
3658
3997
  parentId?: string | null;
@@ -3661,16 +4000,34 @@ export type CreateItemInventoryAssemblyRequest = {
3661
4000
  isTaxIncluded?: boolean | null;
3662
4001
  salesTaxCodeId?: string | null;
3663
4002
  salesDescription?: string | null;
4003
+ /**
4004
+ * The price at which this inventory assembly item is sold to customers, represented as a decimal string.
4005
+ */
3664
4006
  salesPrice?: number | null;
3665
4007
  purchaseDescription?: string | null;
4008
+ /**
4009
+ * The cost at which this inventory assembly item is purchased from vendors, represented as a decimal string.
4010
+ */
3666
4011
  purchaseCost?: number | null;
3667
4012
  purchaseTaxCodeId?: string | null;
3668
4013
  preferredVendorId?: string | null;
4014
+ /**
4015
+ * The inventory assembly item's minimum quantity threshold that triggers a build notification in QuickBooks. When the sum of `quantityOnHand` (current inventory) and `quantityOnOrder` (pending purchase orders) drops below this threshold, QuickBooks will notify users that more units need to be built or assembled. This helps ensure adequate inventory levels for inventory assembly items.
4016
+ */
3669
4017
  buildNotificationThreshold?: number | null;
4018
+ /**
4019
+ * The maximum quantity of this inventory assembly item desired in inventory.
4020
+ */
3670
4021
  maximumQuantityOnHand?: number | null;
4022
+ /**
4023
+ * The number of units of this inventory assembly item currently in inventory. `quantityOnHand` multiplied by `averageCost` equals `totalValue` for inventory item lists. To change the `quantityOnHand` for an inventory assembly item, you must use an inventory-adjustment instead of updating the inventory assembly item directly.
4024
+ */
3671
4025
  quantityOnHand?: number | null;
3672
4026
  totalValue?: number | null;
3673
4027
  inventoryDate?: string | null;
4028
+ /**
4029
+ * The inventory assembly item's lines.
4030
+ */
3674
4031
  lines?: Array<CreateItemInventoryAssemblyLineRequest> | null;
3675
4032
  externalId?: string | null;
3676
4033
  };
@@ -3755,8 +4112,14 @@ export type CreateItemLineRequest = {
3755
4112
  * Request model for creating an ItemNonInventory.
3756
4113
  */
3757
4114
  export type CreateItemNonInventoryRequest = {
4115
+ /**
4116
+ * The case-insensitive name of this non-inventory item. Not guaranteed to be unique because it does not include the names of its hierarchical parent objects like `fullName` does. For example, two non-inventory items could both have the `name` "Printer Ink Cartridge", but they could have unique `fullName` values, such as "Office Supplies:Printer Ink Cartridge" and "Miscellaneous:Printer Ink Cartridge".
4117
+ */
3758
4118
  name: string;
3759
4119
  barcode?: BarCodeRequest | null;
4120
+ /**
4121
+ * Indicates whether this non-inventory item is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
4122
+ */
3760
4123
  isActive?: boolean | null;
3761
4124
  classId?: string | null;
3762
4125
  parentId?: string | null;
@@ -3764,7 +4127,17 @@ export type CreateItemNonInventoryRequest = {
3764
4127
  unitOfMeasureSetId?: string | null;
3765
4128
  isTaxIncluded?: boolean | null;
3766
4129
  salesTaxCodeId?: string | null;
4130
+ /**
4131
+ * Details for non-inventory items that are exclusively sold or exclusively purchased, but not both. This typically applies to non-inventory items (like a purchased office supply that isn't resold) or service items (like consulting services that are sold but not purchased).
4132
+ *
4133
+ * **IMPORTANT**: A non-inventory item will have either `salesAndPurchaseDetails` or `salesOrPurchaseDetails`, but never both because an item cannot have both configurations.
4134
+ */
3767
4135
  salesOrPurchaseDetails?: ItemNonInventorySalesOrPurchaseDetailsRequest | null;
4136
+ /**
4137
+ * Details for non-inventory items that are both purchased and sold, such as reimbursable expenses or inventory items that are bought from vendors and sold to customers.
4138
+ *
4139
+ * **IMPORTANT**: A non-inventory item will have either `salesAndPurchaseDetails` or `salesOrPurchaseDetails`, but never both because an item cannot have both configurations.
4140
+ */
3768
4141
  salesAndPurchaseDetails?: ItemNonInventorySalesAndPurchaseDetailsRequest | null;
3769
4142
  externalId?: string | null;
3770
4143
  };
@@ -3772,8 +4145,14 @@ export type CreateItemNonInventoryRequest = {
3772
4145
  * Request model for creating an ItemOtherCharge.
3773
4146
  */
3774
4147
  export type CreateItemOtherChargeRequest = {
4148
+ /**
4149
+ * The case-insensitive name of this other charge item. Not guaranteed to be unique because it does not include the names of its hierarchical parent objects like `fullName` does. For example, two other charge items could both have the `name` "Overnight Delivery", but they could have unique `fullName` values, such as "Shipping Charges:Overnight Delivery" and "Misc Fees:Overnight Delivery".
4150
+ */
3775
4151
  name: string;
3776
4152
  barcode?: BarCodeRequest | null;
4153
+ /**
4154
+ * Indicates whether this other charge item is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
4155
+ */
3777
4156
  isActive?: boolean | null;
3778
4157
  classId?: string | null;
3779
4158
  className?: string | null;
@@ -3781,7 +4160,17 @@ export type CreateItemOtherChargeRequest = {
3781
4160
  parentName?: string | null;
3782
4161
  isTaxIncluded?: boolean | null;
3783
4162
  salesTaxCodeId?: string | null;
4163
+ /**
4164
+ * Details for other charge items that are exclusively sold or exclusively purchased, but not both. This typically applies to non-inventory items (like a purchased office supply that isn't resold) or service items (like consulting services that are sold but not purchased).
4165
+ *
4166
+ * **IMPORTANT**: An other charge item will have either `salesAndPurchaseDetails` or `salesOrPurchaseDetails`, but never both because an item cannot have both configurations.
4167
+ */
3784
4168
  salesOrPurchaseDetails?: ItemOtherChargeSalesOrPurchaseDetailsRequest | null;
4169
+ /**
4170
+ * Details for other charge items that are both purchased and sold, such as reimbursable expenses or inventory items that are bought from vendors and sold to customers.
4171
+ *
4172
+ * **IMPORTANT**: An other charge item will have either `salesAndPurchaseDetails` or `salesOrPurchaseDetails`, but never both because an item cannot have both configurations.
4173
+ */
3785
4174
  salesAndPurchaseDetails?: ItemOtherChargeSalesAndPurchaseDetailsRequest | null;
3786
4175
  externalId?: string | null;
3787
4176
  };
@@ -3995,20 +4384,60 @@ export type CreateJournalLineRequest = {
3995
4384
  * Implements ICreateRequest for the abstraction pattern.
3996
4385
  */
3997
4386
  export type CreateOtherNameRequest = {
4387
+ /**
4388
+ * The case-insensitive unique name of this other-name, unique across all other-names.
4389
+ *
4390
+ * **NOTE**: Other-names do not have a `fullName` field because they are not hierarchical objects, which is why `name` is unique for them but not for objects that have parents.
4391
+ */
3998
4392
  name?: string | null;
4393
+ /**
4394
+ * The name of the company associated with this other-name. This name is used on invoices, checks, and other forms.
4395
+ */
3999
4396
  companyName?: string | null;
4397
+ /**
4398
+ * The formal salutation title that precedes the name of the contact person for this other-name, such as "Mr.", "Ms.", or "Dr.".
4399
+ */
4000
4400
  salutation?: string | null;
4401
+ /**
4402
+ * The first name of the contact person for this other-name.
4403
+ */
4001
4404
  firstName?: string | null;
4405
+ /**
4406
+ * The middle name of the contact person for this other-name.
4407
+ */
4002
4408
  middleName?: string | null;
4409
+ /**
4410
+ * The last name of the contact person for this other-name.
4411
+ */
4003
4412
  lastName?: string | null;
4413
+ /**
4414
+ * The other-name's address.
4415
+ */
4004
4416
  address?: Address | null;
4005
4417
  addressBlock?: AddressBlock | null;
4418
+ /**
4419
+ * The other-name's primary telephone number.
4420
+ */
4006
4421
  phone?: string | null;
4007
4422
  alternatPhone?: string | null;
4423
+ /**
4424
+ * The other-name's fax number.
4425
+ */
4008
4426
  fax?: string | null;
4427
+ /**
4428
+ * The other-name's email address.
4429
+ */
4009
4430
  email?: string | null;
4431
+ /**
4432
+ * The name of the primary contact person for this other-name.
4433
+ */
4010
4434
  contact?: string | null;
4011
4435
  alternateContact?: string | null;
4436
+ /**
4437
+ * The other-name's account number, which appears in the QuickBooks chart of accounts, reports, and graphs.
4438
+ *
4439
+ * Note that if the "Use Account Numbers" preference is turned off in QuickBooks, the account number may not be visible in the user interface, but it can still be set and retrieved through the API.
4440
+ */
4012
4441
  accountNumber?: string | null;
4013
4442
  notes?: string | null;
4014
4443
  customFields?: Array<DataExtRequest> | null;
@@ -4020,17 +4449,17 @@ export type CreateOtherNameRequest = {
4020
4449
  */
4021
4450
  export type CreatePaymentMethodRequest = {
4022
4451
  /**
4023
- * (Required) The name of the payment method.
4452
+ * The case-insensitive unique name of this payment method, unique across all payment methods.
4453
+ *
4454
+ * **NOTE**: Payment methods do not have a `fullName` field because they are not hierarchical objects, which is why `name` is unique for them but not for objects that have parents.
4024
4455
  */
4025
4456
  name: string;
4026
4457
  /**
4027
- * (Optional) Whether the payment method is active.
4028
- * Defaults to true if not specified.
4458
+ * Indicates whether this payment method is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
4029
4459
  */
4030
4460
  isActive?: boolean;
4031
4461
  /**
4032
- * (Optional) The type of payment method.
4033
- * Valid values: american_express, cash, check, debit_card, discover, e_check, gift_card, master_card, other, other_credit_card, visa.
4462
+ * This payment method's type.
4034
4463
  */
4035
4464
  paymentMethodType?: string | null;
4036
4465
  };
@@ -4039,12 +4468,13 @@ export type CreatePaymentMethodRequest = {
4039
4468
  */
4040
4469
  export type CreatePayrollItemWageRequest = {
4041
4470
  /**
4042
- * (Required) The name of the wage payroll item.
4471
+ * The case-insensitive unique name of this payroll wage item, unique across all payroll wage items.
4472
+ *
4473
+ * **NOTE**: Payroll wage items do not have a `fullName` field because they are not hierarchical objects, which is why `name` is unique for them but not for objects that have parents.
4043
4474
  */
4044
4475
  name: string;
4045
4476
  /**
4046
- * (Required) The wage item type.
4047
- * Possible values: Bonus, Commission, HourlyOvertime, HourlyRegular, HourlySick, HourlyVacation, SalaryRegular, SalarySick, SalaryVacation.
4477
+ * Categorizes how this payroll wage item calculates pay - can be hourly (regular, overtime, sick, or vacation), salary (regular, sick, or vacation), bonus, or commission based.
4048
4478
  */
4049
4479
  wageType: string;
4050
4480
  /**
@@ -4052,7 +4482,7 @@ export type CreatePayrollItemWageRequest = {
4052
4482
  */
4053
4483
  expenseAccountId: string;
4054
4484
  /**
4055
- * (Optional) Indicates whether the payroll item is active.
4485
+ * Indicates whether this payroll wage item is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
4056
4486
  */
4057
4487
  isActive?: boolean | null;
4058
4488
  externalId?: string | null;
@@ -4071,11 +4501,13 @@ export type CreatePayrollItemWageRequest = {
4071
4501
  */
4072
4502
  export type CreatePriceLevelRequest = {
4073
4503
  /**
4074
- * (Required) The name of the new price level. Max length: 31 characters.
4504
+ * The case-insensitive unique name of this price level, unique across all price levels.
4505
+ *
4506
+ * **NOTE**: Price levels do not have a `fullName` field because they are not hierarchical objects, which is why `name` is unique for them but not for objects that have parents.
4075
4507
  */
4076
4508
  name: string;
4077
4509
  /**
4078
- * (Optional) Whether the price level is active. Defaults to true.
4510
+ * Indicates whether this price level is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
4079
4511
  */
4080
4512
  isActive?: boolean | null;
4081
4513
  /**
@@ -4495,19 +4927,21 @@ export type CreateSalesReceiptRequest = {
4495
4927
  */
4496
4928
  export type CreateSalesTaxCodeRequest = {
4497
4929
  /**
4498
- * (Required) The name of the sales tax code. (Max 3 characters)
4930
+ * The case-insensitive unique name of this sales-tax code, unique across all sales-tax codes. This short name will appear on sales forms to identify the tax status of an item.
4931
+ *
4932
+ * **NOTE**: Sales-tax codes do not have a `fullName` field because they are not hierarchical objects, which is why `name` is unique for them but not for objects that have parents.
4499
4933
  */
4500
4934
  name: string;
4501
4935
  /**
4502
- * (Optional) If false, this Sales Tax Code is inactive. Default is true.
4936
+ * Indicates whether this sales-tax code is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
4503
4937
  */
4504
4938
  isActive?: boolean | null;
4505
4939
  /**
4506
- * (Required) Indicates whether the sales tax code represents a taxable (true) or non-taxable (false) item.
4940
+ * Indicates whether this sales-tax code is tracking taxable sales. This field cannot be modified once the sales-tax code has been used in a transaction.
4507
4941
  */
4508
4942
  isTaxable: boolean;
4509
4943
  /**
4510
- * (Optional) A description for the sales tax code. (Max 50 characters)
4944
+ * A description of this sales-tax code.
4511
4945
  */
4512
4946
  description?: string | null;
4513
4947
  /**
@@ -4569,9 +5003,15 @@ export type CreateSalesTaxPaymentCheckRequest = {
4569
5003
  lines: Array<CreateSalesTaxPaymentCheckLineRequest>;
4570
5004
  };
4571
5005
  export type CreateServiceItemRequest = {
5006
+ /**
5007
+ * The case-insensitive name of this service item. Not guaranteed to be unique because it does not include the names of its hierarchical parent objects like `fullName` does. For example, two service items could both have the `name` "Web-Design", but they could have unique `fullName` values, such as "Consulting:Web-Design" and "Contracting:Web-Design".
5008
+ */
4572
5009
  name: string;
4573
5010
  barCode?: BarCodeRequest | null;
4574
5011
  externalId?: string | null;
5012
+ /**
5013
+ * Indicates whether this service item is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
5014
+ */
4575
5015
  isActive?: boolean | null;
4576
5016
  classId?: string | null;
4577
5017
  parentId?: string | null;
@@ -4606,11 +5046,13 @@ export type CreateSetCreditRequest = {
4606
5046
  */
4607
5047
  export type CreateShipMethodRequest = {
4608
5048
  /**
4609
- * (Required) The name of the shipping method. (Max 15 characters)
5049
+ * The case-insensitive unique name of this shipping method, unique across all shipping methods.
5050
+ *
5051
+ * **NOTE**: Shipping methods do not have a `fullName` field because they are not hierarchical objects, which is why `name` is unique for them but not for objects that have parents.
4610
5052
  */
4611
5053
  name: string;
4612
5054
  /**
4613
- * (Optional) If false, this Shipping Method is inactive. Default is true.
5055
+ * Indicates whether this shipping method is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
4614
5056
  */
4615
5057
  isActive?: boolean | null;
4616
5058
  externalId?: string | null;
@@ -4707,28 +5149,29 @@ export type CreateTimeTrackingRequest = {
4707
5149
  */
4708
5150
  export type CreateUnitOfMeasureSetRequest = {
4709
5151
  /**
4710
- * (Required) The name of the unit of measure set. Max length: 31.
5152
+ * The case-insensitive unique name of this unit-of-measure set, unique across all unit-of-measure sets. To ensure this set appears in the QuickBooks UI for companies configured with a single unit per item, prefix the name with "By the" (e.g., "By the Barrel").
5153
+ *
5154
+ * **NOTE**: Unit-of-measure sets do not have a `fullName` field because they are not hierarchical objects, which is why `name` is unique for them but not for objects that have parents.
4711
5155
  */
4712
5156
  name: string;
4713
5157
  /**
4714
- * (Optional) Whether the UOM set is active. Defaults to true.
5158
+ * Indicates whether this unit-of-measure set is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
4715
5159
  */
4716
5160
  isActive?: boolean | null;
4717
5161
  /**
4718
- * (Required) The type of measurement this set is for.
4719
- * Valid values: "Area", "Count", "Length", "Other", "Time", "Volume", "Weight"
5162
+ * The unit-of-measure set's type. Use "other" for a custom type defined in QuickBooks.
4720
5163
  */
4721
5164
  unitOfMeasureType: string;
4722
5165
  /**
4723
- * (Required) The base unit definition for the set.
5166
+ * The unit-of-measure set's base unit used to track and price item quantities. If the company file is enabled for a single unit of measure per item, the base unit is the only unit available on transaction line items. If enabled for multiple units per item, the base unit is the default unless overridden by the set's default units.
4724
5167
  */
4725
5168
  baseUnit: BaseUnitRequest;
4726
5169
  /**
4727
- * (Optional) A list of related units and their conversion ratios to the base unit.
5170
+ * The unit-of-measure set's related units, each specifying how many base units they represent (conversion ratio).
4728
5171
  */
4729
5172
  relatedUnits?: Array<RelatedUnitRequest> | null;
4730
5173
  /**
4731
- * (Optional) A list of default units to use for specific purposes (Purchase, Sales, Shipping).
5174
+ * The unit-of-measure set's default units to appear in the U/M field on transaction line items. You can specify separate defaults for purchases, sales, and shipping.
4732
5175
  */
4733
5176
  defaultUnits?: Array<DefaultUnitRequest> | null;
4734
5177
  externalId?: string | null;
@@ -4788,32 +5231,90 @@ export type CreateVendorCreditRequest = {
4788
5231
  * Implements ICreateRequest for the new abstraction.
4789
5232
  */
4790
5233
  export type CreateVendorRequest = {
5234
+ /**
5235
+ * The case-insensitive unique name of this vendor, unique across all vendors.
5236
+ *
5237
+ * **NOTE**: Vendors do not have a `fullName` field because they are not hierarchical objects, which is why `name` is unique for them but not for objects that have parents.
5238
+ */
4791
5239
  name: string;
5240
+ /**
5241
+ * Indicates whether this vendor is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
5242
+ */
4792
5243
  isActive?: boolean;
4793
5244
  classId?: string | null;
5245
+ /**
5246
+ * The name of the company associated with this vendor. This name is used on invoices, checks, and other forms.
5247
+ */
4794
5248
  companyName?: string | null;
5249
+ /**
5250
+ * The formal salutation title that precedes the name of the contact person for this vendor, such as "Mr.", "Ms.", or "Dr.".
5251
+ */
4795
5252
  salutation?: string | null;
5253
+ /**
5254
+ * The first name of the contact person for this vendor.
5255
+ */
4796
5256
  firstName?: string | null;
5257
+ /**
5258
+ * The middle name of the contact person for this vendor.
5259
+ */
4797
5260
  middleName?: string | null;
5261
+ /**
5262
+ * The last name of the contact person for this vendor.
5263
+ */
4798
5264
  lastName?: string | null;
5265
+ /**
5266
+ * The job title of the contact person for this vendor.
5267
+ */
4799
5268
  jobTitle?: string | null;
4800
5269
  billingAddress?: AddressRequest | null;
4801
5270
  shippingAddress?: AddressRequest | null;
5271
+ /**
5272
+ * The vendor's primary telephone number.
5273
+ */
4802
5274
  phone?: string | null;
4803
5275
  alternatePhone?: string | null;
5276
+ /**
5277
+ * The vendor's fax number.
5278
+ */
4804
5279
  fax?: string | null;
5280
+ /**
5281
+ * The vendor's email address.
5282
+ */
4805
5283
  email?: string | null;
4806
5284
  ccEmail?: string | null;
5285
+ /**
5286
+ * The name of the primary contact person for this vendor.
5287
+ */
4807
5288
  contact?: string | null;
4808
5289
  alternateContact?: string | null;
5290
+ /**
5291
+ * Additional custom contact fields for this vendor, such as phone numbers or email addresses.
5292
+ */
4809
5293
  customContactFields?: Array<CustomContactField> | null;
5294
+ /**
5295
+ * Additional alternate contacts for this vendor.
5296
+ */
4810
5297
  additionalContacts?: Array<Contact> | null;
5298
+ /**
5299
+ * The vendor's name as it should appear on checks issued to this vendor.
5300
+ */
4811
5301
  nameOnCheck?: string | null;
5302
+ /**
5303
+ * The vendor's account number, which appears in the QuickBooks chart of accounts, reports, and graphs.
5304
+ *
5305
+ * Note that if the "Use Account Numbers" preference is turned off in QuickBooks, the account number may not be visible in the user interface, but it can still be set and retrieved through the API.
5306
+ */
4812
5307
  accountNumber?: string | null;
4813
5308
  notes?: string | null;
5309
+ /**
5310
+ * Additional notes about this vendor.
5311
+ */
4814
5312
  additionalNotes?: Array<AdditionalNote> | null;
4815
5313
  vendorTypeId?: string | null;
4816
5314
  termsId?: string | null;
5315
+ /**
5316
+ * The vendor's credit limit, represented as a decimal string. This is the maximum amount of money that can be spent being before billed by this vendor. If `null`, there is no credit limit.
5317
+ */
4817
5318
  creditLimit?: number | null;
4818
5319
  taxIdentificationNumber?: string | null;
4819
5320
  isEligibleFor1099?: boolean | null;
@@ -4821,10 +5322,22 @@ export type CreateVendorRequest = {
4821
5322
  openingBalanceDate?: string | null;
4822
5323
  billingRateId?: string | null;
4823
5324
  salesTaxCodeId?: string | null;
5325
+ /**
5326
+ * The country for which sales tax is collected for this vendor.
5327
+ */
4824
5328
  salesTaxCountry?: string | null;
5329
+ /**
5330
+ * Indicates whether this vendor is a sales tax agency.
5331
+ */
4825
5332
  isSalesTaxAgency?: boolean | null;
4826
5333
  salesTaxReturnId?: string | null;
5334
+ /**
5335
+ * The vendor's tax registration number, for use in Canada or the UK.
5336
+ */
4827
5337
  taxRegistrationNumber?: string | null;
5338
+ /**
5339
+ * The vendor's tax reporting period, for use in Canada or the UK.
5340
+ */
4828
5341
  reportingPeriod?: string | null;
4829
5342
  isTrackingPurchaseTax?: boolean | null;
4830
5343
  purchaseTaxAccountId?: string | null;
@@ -4841,11 +5354,11 @@ export type CreateVendorRequest = {
4841
5354
  */
4842
5355
  export type CreateVendorTypeRequest = {
4843
5356
  /**
4844
- * (Required) The name of the vendor type. (Max 31 characters)
5357
+ * The case-insensitive name of this customer type. Not guaranteed to be unique because it does not include the names of its hierarchical parent objects like `fullName` does. For example, two customer types could both have the `name` "Healthcare", but they could have unique `fullName` values, such as "Industry:Healthcare" and "Region:Healthcare".
4845
5358
  */
4846
5359
  name: string;
4847
5360
  /**
4848
- * (Optional) If false, this Vendor Type is inactive. Default is true.
5361
+ * Indicates whether this customer type is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
4849
5362
  */
4850
5363
  isActive?: boolean | null;
4851
5364
  /**
@@ -4867,11 +5380,13 @@ export type CreateVendorTypeRequest = {
4867
5380
  */
4868
5381
  export type CreateWorkersCompCodeRequest = {
4869
5382
  /**
4870
- * (Required) The name of the Workers Comp Code. Max length: 13.
5383
+ * The case-insensitive unique name of this employee, unique across all employees. A concatenation of the employee's `firstName`, `middleName`, and `lastName` fields.
5384
+ *
5385
+ * **NOTE**: Employees do not have a `fullName` field because they are not hierarchical objects, which is why `name` is unique for them but not for objects that have parents.
4871
5386
  */
4872
5387
  name: string;
4873
5388
  /**
4874
- * (Optional) Indicates if the code is active. Defaults to true.
5389
+ * Indicates whether this employee is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
4875
5390
  */
4876
5391
  isActive?: boolean | null;
4877
5392
  /**
@@ -5054,12 +5569,24 @@ export type CreditCardTransactionInfo = {
5054
5569
  */
5055
5570
  export type CreditCardTransactionInputInfo = {
5056
5571
  number: string;
5572
+ /**
5573
+ * The expirationMonth associated with this object.
5574
+ */
5057
5575
  expirationMonth: number | null;
5576
+ /**
5577
+ * The expirationYear associated with this object.
5578
+ */
5058
5579
  expirationYear: number | null;
5059
5580
  name: string;
5060
5581
  sddress?: string | null;
5061
5582
  postalCode?: string | null;
5583
+ /**
5584
+ * The commercialCardCode associated with this object.
5585
+ */
5062
5586
  commercialCardCode?: string | null;
5587
+ /**
5588
+ * The transactionMode associated with this object.
5589
+ */
5063
5590
  transactionMode?: NullableTransactionMode | null;
5064
5591
  transactionType?: NullableCreditCardTransactionType | null;
5065
5592
  };
@@ -5067,16 +5594,49 @@ export type CreditCardTransactionInputInfo = {
5067
5594
  * DTO for credit card result details.
5068
5595
  */
5069
5596
  export type CreditCardTransactionResultInfo = {
5597
+ /**
5598
+ * The resultCode associated with this object.
5599
+ */
5070
5600
  resultCode: number | null;
5601
+ /**
5602
+ * The resultMessage associated with this object.
5603
+ */
5071
5604
  resultMessage: string;
5605
+ /**
5606
+ * The creditCardTransID associated with this object.
5607
+ */
5072
5608
  creditCardTransID: string;
5609
+ /**
5610
+ * The merchantAccountNumber associated with this object.
5611
+ */
5073
5612
  merchantAccountNumber: string;
5613
+ /**
5614
+ * The authorizationCode associated with this object.
5615
+ */
5074
5616
  authorizationCode?: string | null;
5617
+ /**
5618
+ * The avsStreet associated with this object.
5619
+ */
5075
5620
  avsStreet?: NullableAvsStreet | null;
5621
+ /**
5622
+ * The avsZip associated with this object.
5623
+ */
5076
5624
  avsZip?: NullableAvsZip | null;
5625
+ /**
5626
+ * The cardSecurityCodeMatch associated with this object.
5627
+ */
5077
5628
  cardSecurityCodeMatch?: NullableCardSecurityCodeMatch | null;
5629
+ /**
5630
+ * The reconBatchID associated with this object.
5631
+ */
5078
5632
  reconBatchID?: string | null;
5633
+ /**
5634
+ * The paymentGroupingCode associated with this object.
5635
+ */
5079
5636
  paymentGroupingCode?: number | null;
5637
+ /**
5638
+ * The paymentStatus associated with this object.
5639
+ */
5080
5640
  paymentStatus: PaymentStatus;
5081
5641
  transactionAuthorizationTime: string | null;
5082
5642
  transactionAuthorizationStamp?: number | null;
@@ -5270,9 +5830,7 @@ export type CustomContactField = {
5270
5830
  value: string;
5271
5831
  };
5272
5832
  /**
5273
- * Customers:
5274
- * A customer record in QuickBooks represents either a business or individual who purchases goods or services, or a specific job/project being performed for that customer.
5275
- * Jobs are treated as sub-customers; they inherit billing information from their parent customer while allowing for job-specific details to be tracked.
5833
+ * Represents a Customer or Job record retrieved from QuickBooks Desktop.
5276
5834
  */
5277
5835
  export type Customer = {
5278
5836
  id: string;
@@ -5654,6 +6212,9 @@ export type EmployeeAddress = {
5654
6212
  state?: string | null;
5655
6213
  postalCode?: string | null;
5656
6214
  country?: string | null;
6215
+ /**
6216
+ * A note or comment about this employee.
6217
+ */
5657
6218
  note?: string | null;
5658
6219
  };
5659
6220
  /**
@@ -7930,10 +8491,25 @@ export type RefundAppliedToTransaction = {
7930
8491
  objectType?: string;
7931
8492
  transactionType?: string | null;
7932
8493
  transactionDate?: string | null;
8494
+ /**
8495
+ * The RefNumber associated with this object.
8496
+ */
7933
8497
  refNumber?: string | null;
8498
+ /**
8499
+ * The CreditRemaining associated with this object.
8500
+ */
7934
8501
  creditRemaining?: number | null;
8502
+ /**
8503
+ * The RefundAmount associated with this object.
8504
+ */
7935
8505
  refundAmount?: number | null;
8506
+ /**
8507
+ * The CreditRemainingInHomeCurrency associated with this object.
8508
+ */
7936
8509
  creditRemainingInHomeCurrency?: number | null;
8510
+ /**
8511
+ * The RefundAmountInHomeCurrency associated with this object.
8512
+ */
7937
8513
  refundAmountInHomeCurrency?: number | null;
7938
8514
  };
7939
8515
  /**
@@ -7965,7 +8541,9 @@ export type RelatedUnit = {
7965
8541
  */
7966
8542
  export type RelatedUnitRequest = {
7967
8543
  /**
7968
- * (Required) The name of the related unit (e.g., "Gallon"). Max length: 31.
8544
+ * The case-insensitive unique name of this unit-of-measure set, unique across all unit-of-measure sets. To ensure this set appears in the QuickBooks UI for companies configured with a single unit per item, prefix the name with "By the" (e.g., "By the Barrel").
8545
+ *
8546
+ * **NOTE**: Unit-of-measure sets do not have a `fullName` field because they are not hierarchical objects, which is why `name` is unique for them but not for objects that have parents.
7969
8547
  */
7970
8548
  name: string;
7971
8549
  /**
@@ -8402,7 +8980,7 @@ export type ShipMethod = {
8402
8980
  customFields?: Array<QbdDataExt>;
8403
8981
  };
8404
8982
  /**
8405
- * DTO for an alternate shipping address on a customer.
8983
+ * Represents an additional shipping destination associated with a customer profile.
8406
8984
  */
8407
8985
  export type ShipToAddress = {
8408
8986
  line1?: string | null;
@@ -8507,7 +9085,7 @@ export type StandardErrorResponse = {
8507
9085
  error: ErrorDetail;
8508
9086
  };
8509
9087
  /**
8510
- * Tax Line Information.
9088
+ * Tax line information mappings for federal tax form reporting.
8511
9089
  */
8512
9090
  export type TaxLineInfo = {
8513
9091
  taxLineId: number;
@@ -8667,70 +9245,62 @@ export type UnitOfMeasureSet = {
8667
9245
  customFields?: Array<QbdDataExt>;
8668
9246
  };
8669
9247
  /**
8670
- * Request model for updating an existing account
9248
+ * Contains parameters to modify an existing financial account.
8671
9249
  */
8672
9250
  export type UpdateAccountRequest = {
8673
9251
  revisionNumber: string;
8674
9252
  /**
8675
- * Account name
9253
+ * The case-insensitive name of this account.
8676
9254
  */
8677
9255
  name?: string | null;
8678
9256
  /**
8679
- * Whether the account is active
9257
+ * Indicates whether this account is active.
8680
9258
  */
8681
9259
  isActive?: boolean | null;
8682
9260
  /**
8683
- * Account type (optional)
8684
- * NOTE: Cannot create non_posting accounts via API - QuickBooks creates these internally
9261
+ * The classification of this account, indicating its purpose within the chart of accounts.
8685
9262
  */
8686
9263
  accountType?: NullableAccountType | null;
8687
9264
  /**
8688
- * Whether the account is a tax account (optional)
9265
+ * Indicates whether this account is used for tracking taxes.
8689
9266
  */
8690
9267
  isTaxAccount?: boolean | null;
8691
9268
  /**
8692
- * Account number (optional)
9269
+ * The account number, which appears in the chart of accounts, reports, and graphs.
8693
9270
  */
8694
9271
  accountNumber?: string | null;
8695
9272
  /**
8696
- * Account description (optional)
9273
+ * A description of this account.
8697
9274
  */
8698
9275
  description?: string | null;
8699
9276
  /**
8700
- * Parent account reference (optional, for sub-accounts)
9277
+ * The parent account one level above this one in the hierarchy.
8701
9278
  */
8702
9279
  parentId?: string | null;
8703
9280
  /**
8704
- * The default sales-tax code for transactions with this account, determining whether
8705
- * the transactions are taxable or non-taxable. This can be overridden at the transaction or transaction-line level.
8706
- * Default codes include "Non" (non-taxable) and "Tax" (taxable), but custom codes can also be created in QuickBooks.
8707
- * If QuickBooks is not set up to charge sales tax(via the "Do You Charge Sales Tax?" preference), it will assign the
8708
- * default non-taxable code to all sales. (Optional)
9281
+ * The default sales-tax code for transactions with this account.
9282
+ *
9283
+ * Determines whether the transactions are taxable or non-taxable. This can be overridden at the transaction or transaction-line level.
8709
9284
  */
8710
9285
  salesTaxCodeId?: string | null;
8711
9286
  /**
8712
- * Opening balance for the account (optional)
9287
+ * The amount of money in, or the value of, this account as of the opening balance date.
8713
9288
  */
8714
9289
  openBalance?: number | null;
8715
9290
  /**
8716
- * Opening balance date (optional, defaults to today)
9291
+ * The date of the opening balance of this account.
8717
9292
  */
8718
9293
  openBalanceDate?: string | null;
8719
9294
  /**
8720
- * The identifier of the tax line associated with this account. You can see a list of all available values for this
8721
- * field by calling the endpoint for account tax lines.
9295
+ * The identifier of the tax line associated with this account.
8722
9296
  */
8723
9297
  taxLineId?: string | null;
8724
9298
  /**
8725
- * The account's currency. For built-in currencies, the name and code are standard international values. For user-defined
8726
- * currencies, all values are editable. (Optional)
9299
+ * The account's currency.
8727
9300
  */
8728
9301
  currencyId?: string | null;
8729
9302
  /**
8730
- * Bank account number (Optional, for bank accounts only)
8731
- *
8732
- *
8733
- * <i>**NOTE:** QuickBooks Desktop does not support cursor-based pagination for this resource.</i>
9303
+ * The bank account number or identifying note.
8734
9304
  */
8735
9305
  bankNumber?: string | null;
8736
9306
  };
@@ -8744,7 +9314,7 @@ export type UpdateAdditionalNoteRequest = {
8744
9314
  */
8745
9315
  noteId: number;
8746
9316
  /**
8747
- * The note text (max 4095 characters).
9317
+ * A note or comment about this employee.
8748
9318
  */
8749
9319
  note: string;
8750
9320
  };
@@ -8794,38 +9364,82 @@ export type UpdateArRefundCreditCardRequest = {
8794
9364
  export type UpdateBillPaymentOrCreditRequest = {
8795
9365
  [key: string]: unknown;
8796
9366
  };
8797
- /**
8798
- * Request model for modifying an existing Bill.
8799
- */
8800
9367
  export type UpdateBillRequest = {
8801
9368
  revisionNumber: string;
9369
+ /**
9370
+ * The unique identifier of the vendor associated with this bill.
9371
+ *
9372
+ * **Important:** If this bill is linked to other transactions, this vendor's A/P account must match the account used in those transactions.
9373
+ */
8802
9374
  vendorId?: string | null;
9375
+ /**
9376
+ * An optional override for the vendor's billing address.
9377
+ */
8803
9378
  vendorAddress?: AddressRequest | null;
8804
9379
  payablesAccountId?: string | null;
8805
9380
  transactionDate?: string | null;
9381
+ /**
9382
+ * The date by which the bill must be paid.
9383
+ */
8806
9384
  dueDate?: string | null;
9385
+ /**
9386
+ * A user-defined reference number for the bill. Case-sensitive.
9387
+ *
9388
+ * Set to an empty string (`""`) to clear the existing reference number in QuickBooks.
9389
+ */
8807
9390
  refNumber?: string | null;
9391
+ /**
9392
+ * The payment terms defining when the bill is due and applicable discounts.
9393
+ */
8808
9394
  termsId?: string | null;
8809
9395
  /**
8810
- * Reference to the QuickBooks Class for this transaction (PRIVATE, v13.0).
9396
+ * Reference to the QuickBooks Class for categorization (e.g., department, location).
8811
9397
  */
8812
9398
  classId?: string | null;
8813
- memo?: string | null;
8814
9399
  /**
8815
- * Whether tax is included in item amounts (not in QBD).
9400
+ * A note that appears in the A/P register and related reports.
9401
+ *
9402
+ * Set to an empty string (`""`) to clear the existing memo in QuickBooks.
8816
9403
  */
8817
- isTaxIncluded?: boolean | null;
9404
+ memo?: string | null;
8818
9405
  /**
8819
- * Sales tax code reference (not in QBD).
9406
+ * Whether tax is included in item amounts.
8820
9407
  */
9408
+ isTaxIncluded?: boolean | null;
8821
9409
  salesTaxCodeId?: string | null;
8822
9410
  /**
8823
- * Exchange rate for multi-currency transactions.
9411
+ * The market exchange rate between the bill's currency and the home currency.
8824
9412
  */
8825
9413
  exchangeRate?: number | null;
9414
+ /**
9415
+ * When `true`, forcefully removes all existing expense lines from the bill.
9416
+ *
9417
+ * To selectively modify or add lines instead of wiping them, use the `ExpenseLines` array.
9418
+ */
8826
9419
  clearExpenseLines?: boolean | null;
9420
+ /**
9421
+ * Expense line items to modify or add.
9422
+ *
9423
+ * **Array Replacement Rules:** Providing this array will **REPLACE** all existing expense lines.
9424
+ * <br />- **Update / Retain:** To keep or modify an existing line, include it with its current `Id`. **Any existing lines not included in this array will be removed.**<br />- **Add:** To append a new line to the bill, include it with an `Id` set to `"-1"`.
9425
+ * <br />- **Ignore:** Omit this property entirely (send `null`) to leave existing expense lines completely unchanged.
9426
+ * <br />- **Delete All:** To remove all expense lines, leave this `null` and set `ClearExpenseLines` to `true` instead.
9427
+ */
8827
9428
  expenseLines?: Array<UpdateExpenseLineRequest> | null;
9429
+ /**
9430
+ * When `true`, forcefully removes all existing item lines from the bill.
9431
+ *
9432
+ * To selectively modify or add lines instead of wiping them, use the `ItemLines` array.
9433
+ */
8828
9434
  clearItemLines?: boolean | null;
9435
+ /**
9436
+ * Inventory or service item allocations to modify or add.
9437
+ *
9438
+ * **Array Replacement Rules:** Providing this array will **REPLACE** all existing item lines.
9439
+ * <br />- **Update / Retain:** To keep or modify an existing line, include it with its current `Id`. **Any existing lines not included in this array will be removed.**<br />- **Add:** To append a new line to the bill, include it with an `Id` set to `"-1"`.
9440
+ * <br />- **Ignore:** Omit this property entirely (send `null`) to leave existing item lines completely unchanged.
9441
+ * <br />- **Delete All:** To remove all item lines, leave this `null` and set `ClearItemLines` to `true` instead.
9442
+ */
8829
9443
  itemLines?: Array<UpdateItemLineRequest> | null;
8830
9444
  };
8831
9445
  /**
@@ -9061,22 +9675,20 @@ export type UpdateCheckRequest = {
9061
9675
  itemGroupLines?: Array<UpdateItemGroupLineRequest> | null;
9062
9676
  };
9063
9677
  /**
9064
- * Modifies a QuickBooks Class with the specified properties. Only provided properties will be updated.
9678
+ * Contains parameters to modify an existing class.
9065
9679
  */
9066
9680
  export type UpdateClassRequest = {
9067
9681
  revisionNumber: string;
9068
9682
  /**
9069
- * (Optional) The new name for the class.
9683
+ * The case-insensitive name of this class.
9070
9684
  */
9071
9685
  name?: string | null;
9072
9686
  /**
9073
- * (Optional) Update the active status of the class.
9687
+ * Indicates whether this class is active.
9074
9688
  */
9075
9689
  isActive?: boolean | null;
9076
9690
  /**
9077
- * (Optional) The ListID or FullName of the parent class (to move this class).
9078
- * To remove the class from its current parent and move it to the top level,
9079
- * provide an empty string.
9691
+ * The parent class one level above this one in the hierarchy.
9080
9692
  */
9081
9693
  parentId?: string | null;
9082
9694
  };
@@ -9522,72 +10134,215 @@ export type UpdateCurrencyRequest = {
9522
10134
  currencyFormat?: CurrencyFormatRequest | null;
9523
10135
  };
9524
10136
  /**
9525
- * Request model for updating an existing customer
10137
+ * Represents a request to modify an existing customer or project (job) in QuickBooks Desktop.
9526
10138
  */
9527
10139
  export type UpdateCustomerRequest = {
9528
10140
  revisionNumber: string;
10141
+ /**
10142
+ * The primary identifier name for the customer or job.
10143
+ *
10144
+ * This value is case-insensitive. Modifying this will automatically change the customer's fully-qualified name across QuickBooks.
10145
+ */
9529
10146
  name?: string | null;
10147
+ /**
10148
+ * The formal company name printed on invoices, checks, and official correspondence.
10149
+ */
9530
10150
  companyName?: string | null;
10151
+ /**
10152
+ * A name suffix for the primary contact (e.g., Jr., Sr., III).
10153
+ */
9531
10154
  suffix?: string | null;
10155
+ /**
10156
+ * The exact text format that should be printed on physical checks.
10157
+ */
9532
10158
  printAs?: string | null;
10159
+ /**
10160
+ * The pager number for the primary contact.
10161
+ */
9533
10162
  pager?: string | null;
10163
+ /**
10164
+ * The mobile/cellular telephone number for the primary contact.
10165
+ */
9534
10166
  mobile?: string | null;
10167
+ /**
10168
+ * Additional carbon copy (CC) email details.
10169
+ */
9535
10170
  cc?: string | null;
10171
+ /**
10172
+ * Determines whether this customer record is active and visible in standard QuickBooks lists and reports.
10173
+ */
9536
10174
  isActive?: boolean | null;
10175
+ /**
10176
+ * The unique identifier of the hierarchical parent customer.
10177
+ *
10178
+ * **Important:** This field is required if you are actively updating or setting the <see cref="P:QbdWebService.Application.Resources.Qbd.Lists.Customer.Models.UpdateCustomerRequest.JobStatus" />, as that indicates this record is a sub-customer (job).
10179
+ */
9537
10180
  parentId?: string | null;
10181
+ /**
10182
+ * The unique identifier of the Class associated with this customer, used for segmentation.
10183
+ */
9538
10184
  classId?: string | null;
10185
+ /**
10186
+ * The unique identifier of the Customer Type, used to group customers for specialized reporting.
10187
+ */
9539
10188
  customerTypeId?: string | null;
10189
+ /**
10190
+ * The unique identifier dictating the payment schedule and early-payment discounts (e.g., Net 30).
10191
+ */
9540
10192
  termsId?: string | null;
10193
+ /**
10194
+ * The unique identifier of the assigned sales agent, vendor, or employee managing this account.
10195
+ */
9541
10196
  salesRepresentativeId?: string | null;
10197
+ /**
10198
+ * The identifier for the specific tax agency rate applied to this customer's purchases.
10199
+ */
9542
10200
  salesTaxItemId?: string | null;
10201
+ /**
10202
+ * The identifier for the customer's default payment method (e.g., Cash, Check, Visa).
10203
+ */
9543
10204
  preferredPaymentMethodId?: string | null;
10205
+ /**
10206
+ * The identifier for a custom pricing tier applied automatically to items sold to this customer.
10207
+ */
9544
10208
  priceLevelId?: string | null;
10209
+ /**
10210
+ * The official tax identification number (primarily utilized in UK and Canadian QBD versions).
10211
+ */
9545
10212
  taxRegistrationNumber?: string | null;
10213
+ /**
10214
+ * The unique identifier categorizing the nature of the job (e.g., Commercial, Residential, Maintenance).
10215
+ */
9546
10216
  jobTypeId?: string | null;
10217
+ /**
10218
+ * The unique identifier of the default currency used for this customer's transactions.
10219
+ *
10220
+ * QuickBooks must have multicurrency support enabled.
10221
+ */
9547
10222
  currencyId?: string | null;
10223
+ /**
10224
+ * Stored credit card details for processing transactions.
10225
+ */
9548
10226
  creditCardInfo?: CreditCardInfo | null;
10227
+ /**
10228
+ * The formal title preceding the primary contact's name (e.g., Mr., Ms., Dr.).
10229
+ */
9549
10230
  salutation?: string | null;
10231
+ /**
10232
+ * The first name of the primary contact person.
10233
+ */
9550
10234
  firstName?: string | null;
10235
+ /**
10236
+ * The middle name or initial of the primary contact person.
10237
+ */
9551
10238
  middleName?: string | null;
10239
+ /**
10240
+ * The last name of the primary contact person.
10241
+ */
9552
10242
  lastName?: string | null;
10243
+ /**
10244
+ * The professional title of the primary contact.
10245
+ */
9553
10246
  jobTitle?: string | null;
9554
10247
  billingAddress?: AddressRequest | null;
9555
10248
  shippingAddress?: AddressRequest | null;
9556
10249
  /**
9557
- * Additional ship-to addresses (up to 50 allowed by QuickBooks).
9558
- * Note: Updating ship-to addresses replaces the entire list.
10250
+ * A collection of secondary shipping locations.
10251
+ *
10252
+ * **Note:** Updating ship-to addresses replaces the entire existing list in QuickBooks.
9559
10253
  */
9560
10254
  shipToAddresses?: Array<ShipToAddressRequest> | null;
10255
+ /**
10256
+ * The primary telephone number.
10257
+ */
9561
10258
  phone?: string | null;
10259
+ /**
10260
+ * A secondary telephone number.
10261
+ */
9562
10262
  altPhone?: string | null;
10263
+ /**
10264
+ * The primary email address used for digital correspondence and e-invoicing.
10265
+ */
9563
10266
  email?: string | null;
10267
+ /**
10268
+ * An additional email address to automatically CC on communications.
10269
+ */
9564
10270
  ccEmail?: string | null;
10271
+ /**
10272
+ * The full name of the primary contact individual.
10273
+ */
9565
10274
  contact?: string | null;
9566
10275
  alternateContact?: string | null;
9567
10276
  /**
9568
- * Custom contact fields (name/value pairs) for the customer.
9569
- * Maps to AdditionalContactRef in QbXML (0-8 allowed at customer level).
10277
+ * User-defined contact data points (e.g., Skype ID, secondary emails).
9570
10278
  */
9571
10279
  customContactFields?: Array<CustomContactField> | null;
10280
+ /**
10281
+ * The maximum allowable outstanding balance before a credit hold is triggered.
10282
+ */
9572
10283
  creditLimit?: number | null;
10284
+ /**
10285
+ * The current operational state of the job.
10286
+ *
10287
+ * **Important:** Modifying this explicitly requires <see cref="P:QbdWebService.Application.Resources.Qbd.Lists.Customer.Models.UpdateCustomerRequest.ParentId" /> to be populated, indicating this is a sub-customer/job entity.
10288
+ */
9573
10289
  jobStatus?: NullableJobStatus | null;
10290
+ /**
10291
+ * The date active work commenced on the job.
10292
+ *
10293
+ * Must be chronologically before or equal to <see cref="P:QbdWebService.Application.Resources.Qbd.Lists.Customer.Models.UpdateCustomerRequest.JobProjectedEndDate" /> and <see cref="P:QbdWebService.Application.Resources.Qbd.Lists.Customer.Models.UpdateCustomerRequest.JobEndDate" />, if they are provided.
10294
+ */
9574
10295
  jobStartDate?: string | null;
10296
+ /**
10297
+ * The estimated deadline for job completion.
10298
+ *
10299
+ * Must be chronologically on or after the <see cref="P:QbdWebService.Application.Resources.Qbd.Lists.Customer.Models.UpdateCustomerRequest.JobStartDate" />, if provided.
10300
+ */
9575
10301
  jobProjectedEndDate?: string | null;
10302
+ /**
10303
+ * The actual date the job was finalized.
10304
+ *
10305
+ * Must be chronologically on or after the <see cref="P:QbdWebService.Application.Resources.Qbd.Lists.Customer.Models.UpdateCustomerRequest.JobStartDate" />, if provided.
10306
+ */
9576
10307
  jobEndDate?: string | null;
10308
+ /**
10309
+ * A short summary outlining the scope of work for the job.
10310
+ */
9577
10311
  jobDesc?: string | null;
10312
+ /**
10313
+ * An overarching internal comment or memo regarding the customer.
10314
+ */
9578
10315
  notes?: string | null;
10316
+ /**
10317
+ * A collection of modifications to individual, distinct internal notes attached to the customer record.
10318
+ */
9579
10319
  additionalNotes?: Array<AdditionalNoteMod> | null;
9580
10320
  /**
9581
- * Can be None [Default], Email, or Fax. Use regex to validate.
10321
+ * The default medium for sending invoices and estimates.
9582
10322
  */
9583
10323
  preferredDeliveryMethod?: string | null;
10324
+ /**
10325
+ * The certificate number provided by customers purchasing items wholesale/for resale.
10326
+ */
9584
10327
  resaleNumber?: string | null;
10328
+ /**
10329
+ * A custom internal tracking number that appears on the Chart of Accounts and reports.
10330
+ */
9585
10331
  accountNumber?: string | null;
10332
+ /**
10333
+ * The facsimile number for the customer.
10334
+ */
9586
10335
  fax?: string | null;
9587
10336
  };
9588
10337
  export type UpdateCustomerTypeRequest = {
9589
10338
  revisionNumber: string;
10339
+ /**
10340
+ * The case-insensitive name of this customer type. Not guaranteed to be unique because it does not include the names of its hierarchical parent objects like `fullName` does. For example, two customer types could both have the `name` "Healthcare", but they could have unique `fullName` values, such as "Industry:Healthcare" and "Region:Healthcare".
10341
+ */
9590
10342
  name?: string | null;
10343
+ /**
10344
+ * Indicates whether this customer type is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
10345
+ */
9591
10346
  isActive?: boolean | null;
9592
10347
  parentId?: string | null;
9593
10348
  };
@@ -9649,27 +10404,77 @@ export type UpdateDepositRequest = {
9649
10404
  */
9650
10405
  export type UpdateEmployeeRequest = {
9651
10406
  revisionNumber: string;
10407
+ /**
10408
+ * Indicates whether this employee is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
10409
+ */
9652
10410
  isActive?: boolean | null;
10411
+ /**
10412
+ * The employee's formal salutation title that precedes their name, such as "Mr.", "Ms.", or "Dr.".
10413
+ */
9653
10414
  salutation?: string | null;
10415
+ /**
10416
+ * The employee's first name.
10417
+ */
9654
10418
  firstName?: string | null;
10419
+ /**
10420
+ * The employee's middle name.
10421
+ */
9655
10422
  middleName?: string | null;
10423
+ /**
10424
+ * The employee's last name.
10425
+ */
9656
10426
  lastName?: string | null;
10427
+ /**
10428
+ * The employee's job title.
10429
+ */
9657
10430
  jobTitle?: string | null;
9658
10431
  /**
9659
10432
  * ListID of the supervisor employee.
9660
10433
  */
9661
10434
  supervisorId?: string | null;
10435
+ /**
10436
+ * The employee's department. Found in the "employment job details" section of the employee's record in QuickBooks.
10437
+ */
9662
10438
  department?: string | null;
10439
+ /**
10440
+ * A description of this employee. Found in the "employment job details" section of the employee's record in QuickBooks.
10441
+ */
9663
10442
  description?: string | null;
9664
10443
  employeeAddress?: EmployeeAddress | null;
10444
+ /**
10445
+ * The name to use when printing this employee from QuickBooks. By default, this is the same as the `name` field.
10446
+ */
9665
10447
  printAs?: string | null;
10448
+ /**
10449
+ * The employee's primary telephone number.
10450
+ */
9666
10451
  phone?: string | null;
10452
+ /**
10453
+ * The employee's mobile phone number.
10454
+ */
9667
10455
  mobile?: string | null;
10456
+ /**
10457
+ * The employee's pager number.
10458
+ */
9668
10459
  pager?: string | null;
10460
+ /**
10461
+ * The employee's pager PIN.
10462
+ */
9669
10463
  pagerPin?: string | null;
9670
10464
  altPhone?: string | null;
10465
+ /**
10466
+ * The employee's fax number.
10467
+ */
9671
10468
  fax?: string | null;
10469
+ /**
10470
+ * The employee's email address.
10471
+ */
9672
10472
  email?: string | null;
10473
+ /**
10474
+ * The employee's Social Security Number. The value can be with or without dashes.
10475
+ *
10476
+ * **NOTE**: This field cannot be changed after the employee is created.
10477
+ */
9673
10478
  ssn?: string | null;
9674
10479
  /**
9675
10480
  * Additional contact references (may repeat, v12.0+).
@@ -9679,16 +10484,33 @@ export type UpdateEmployeeRequest = {
9679
10484
  * Emergency contacts for the employee (QBD only, v13.0+).
9680
10485
  */
9681
10486
  emergencyContacts?: EmergencyContact | null;
10487
+ /**
10488
+ * The employee type. This affects payroll taxes - a statutory employee is defined as an employee by statute. Note that owners/partners are typically on the "Other Names" list in QuickBooks, but if listed as an employee their type will be `owner`.
10489
+ */
9682
10490
  employeeType?: string | null;
9683
10491
  partOrFullTime?: string | null;
10492
+ /**
10493
+ * This employee's gender.
10494
+ */
9684
10495
  gender?: string | null;
10496
+ /**
10497
+ * The date this employee was hired, in ISO 8601 format (YYYY-MM-DD).
10498
+ */
9685
10499
  hiredDate?: string | null;
9686
10500
  releasedDate?: string | null;
10501
+ /**
10502
+ * This employee's date of birth, in ISO 8601 format (YYYY-MM-DD).
10503
+ */
9687
10504
  birthDate?: string | null;
10505
+ /**
10506
+ * The employee's account number, which appears in the QuickBooks chart of accounts, reports, and graphs.
10507
+ *
10508
+ * Note that if the "Use Account Numbers" preference is turned off in QuickBooks, the account number may not be visible in the user interface, but it can still be set and retrieved through the API.
10509
+ */
9688
10510
  accountNumber?: string | null;
9689
10511
  notes?: string | null;
9690
10512
  /**
9691
- * Additional notes modification (may repeat, v12.0+). Requires NoteId for existing notes.
10513
+ * Additional notes about this employee.
9692
10514
  */
9693
10515
  additionalNotes?: Array<UpdateAdditionalNoteRequest> | null;
9694
10516
  /**
@@ -9696,18 +10518,33 @@ export type UpdateEmployeeRequest = {
9696
10518
  */
9697
10519
  billingRateId?: string | null;
9698
10520
  suffix?: string | null;
10521
+ /**
10522
+ * The target bonus for this employee, represented as a decimal string. Found in the "employment job details" section of the employee's record in QuickBooks.
10523
+ */
9699
10524
  targetBonus?: number | null;
9700
10525
  exempt?: string | null;
9701
10526
  keyEmployee?: string | null;
10527
+ /**
10528
+ * The original hire date for this employee, in ISO 8601 format (YYYY-MM-DD).
10529
+ */
9702
10530
  originalHireDate?: string | null;
10531
+ /**
10532
+ * The adjusted service date for this employee, in ISO 8601 format (YYYY-MM-DD). This date accounts for previous employment periods or leaves that affect seniority.
10533
+ */
9703
10534
  adjustedServiceDate?: string | null;
9704
10535
  usCitizen?: string | null;
10536
+ /**
10537
+ * This employee's ethnicity.
10538
+ */
9705
10539
  ethnicity?: string | null;
9706
10540
  disabled?: string | null;
9707
10541
  disabilityDesc?: string | null;
9708
10542
  onFile?: string | null;
9709
10543
  workAuthExpireDate?: string | null;
9710
10544
  usVeteran?: string | null;
10545
+ /**
10546
+ * This employee's military status if they are a U.S. veteran.
10547
+ */
9711
10548
  militaryStatus?: string | null;
9712
10549
  employeePayrollInfo?: EmployeePayrollInfo | null;
9713
10550
  externalId?: string | null;
@@ -10014,6 +10851,9 @@ export type UpdateInventoryAdjustmentRequest = {
10014
10851
  * Implements IUpdateRequest for the abstraction pattern.
10015
10852
  */
10016
10853
  export type UpdateInventoryItemRequest = {
10854
+ /**
10855
+ * The case-insensitive name of this inventory item. Not guaranteed to be unique because it does not include the names of its hierarchical parent objects like `fullName` does. For example, two inventory items could both have the `name` "Cabinet", but they could have unique `fullName` values, such as "Kitchen:Cabinet" and "Inventory:Cabinet".
10856
+ */
10017
10857
  name: string;
10018
10858
  barcode?: BarCodeRequest | null;
10019
10859
  classId?: string | null;
@@ -10024,31 +10864,69 @@ export type UpdateInventoryItemRequest = {
10024
10864
  isTaxIncluded?: boolean | null;
10025
10865
  salesTaxCodeId?: string | null;
10026
10866
  salesDescription?: string | null;
10867
+ /**
10868
+ * The price at which this inventory item is sold to customers, represented as a decimal string.
10869
+ */
10027
10870
  salesPrice?: number | null;
10028
10871
  incomeAccountId?: string | null;
10029
10872
  applyIncomeAccountRefToExistingTxns?: boolean | null;
10030
10873
  purchaseDescription?: string | null;
10874
+ /**
10875
+ * The cost at which this inventory item is purchased from vendors, represented as a decimal string.
10876
+ */
10031
10877
  purchaseCost?: number | null;
10032
10878
  purchaseTaxCodeId?: string | null;
10033
10879
  cogsAccountId?: string | null;
10034
10880
  applyCOGSAccountRefToExistingTxns?: boolean | null;
10035
10881
  preferredVendorId?: string | null;
10036
10882
  assetAccountId?: string | null;
10883
+ /**
10884
+ * The minimum quantity of this inventory item at which QuickBooks prompts for reordering.
10885
+ */
10037
10886
  reorderPoint?: number | null;
10038
10887
  maximumQuantityOnHand?: number | null;
10888
+ /**
10889
+ * Indicates whether this inventory item is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
10890
+ */
10039
10891
  isActive?: boolean | null;
10040
10892
  revisionNumber: string;
10041
10893
  };
10042
10894
  export type UpdateInventorySiteRequest = {
10043
10895
  revisionNumber: string;
10896
+ /**
10897
+ * The case-insensitive unique name of this inventory site, unique across all inventory sites.
10898
+ *
10899
+ * **NOTE**: Inventory sites do not have a `fullName` field because they are not hierarchical objects, which is why `name` is unique for them but not for objects that have parents.
10900
+ */
10044
10901
  name?: string | null;
10902
+ /**
10903
+ * Indicates whether this inventory site is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
10904
+ */
10045
10905
  isActive?: boolean | null;
10046
10906
  parentId?: string | null;
10907
+ /**
10908
+ * A description of this inventory site.
10909
+ */
10047
10910
  description?: string | null;
10911
+ /**
10912
+ * The name of the primary contact person for this inventory site.
10913
+ */
10048
10914
  contact?: string | null;
10915
+ /**
10916
+ * The inventory site's primary telephone number.
10917
+ */
10049
10918
  phone?: string | null;
10919
+ /**
10920
+ * The inventory site's fax number.
10921
+ */
10050
10922
  fax?: string | null;
10923
+ /**
10924
+ * The inventory site's email address.
10925
+ */
10051
10926
  email?: string | null;
10927
+ /**
10928
+ * The inventory site's address.
10929
+ */
10052
10930
  address?: AddressRequest | null;
10053
10931
  };
10054
10932
  /**
@@ -10112,14 +10990,30 @@ export type UpdateInvoiceRequest = {
10112
10990
  */
10113
10991
  export type UpdateItemDiscountRequest = {
10114
10992
  revisionNumber: string;
10993
+ /**
10994
+ * The case-insensitive name of this discount item. Not guaranteed to be unique because it does not include the names of its hierarchical parent objects like `fullName` does. For example, two discount items could both have the `name` "10% labor discount", but they could have unique `fullName` values, such as "Discounts:10% labor discount" and "Promotions:10% labor discount".
10995
+ */
10115
10996
  name?: string | null;
10997
+ /**
10998
+ * Indicates whether this discount item is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
10999
+ */
10116
11000
  isActive?: boolean | null;
10117
11001
  parentId?: string | null;
10118
11002
  parentName?: string | null;
10119
11003
  itemDesc?: string | null;
10120
11004
  salesTaxCodeId?: string | null;
10121
11005
  salesTaxCodeName?: string | null;
11006
+ /**
11007
+ * The monetary amount to subtract from the total or subtotal when applying this discount item to a transaction, represented as a decimal string.
11008
+ *
11009
+ * **NOTE**: A flat rate discount applies to ALL lines recorded above it and distributes the discount amount equally across those lines, which affects tax calculations. For example, a $10 discount applied to a $100 taxable item and $100 non-taxable item would result in a $5 taxable discount and $5 non-taxable discount.
11010
+ */
10122
11011
  discountRate?: number | null;
11012
+ /**
11013
+ * The percentage amount to subtract from the total or subtotal when applying this discount item to a transaction.
11014
+ *
11015
+ * **NOTE**: A percentage discount only applies to the line immediately above it, so tax implications only affect that specific line.
11016
+ */
10123
11017
  discountRatePercent?: number | null;
10124
11018
  accountId?: string | null;
10125
11019
  accountName?: string | null;
@@ -10180,8 +11074,16 @@ export type UpdateItemGroupLineRequest = {
10180
11074
  * Implements IUpdateRequest for the new abstraction.
10181
11075
  */
10182
11076
  export type UpdateItemGroupRequest = {
11077
+ /**
11078
+ * The case-insensitive unique name of this item group, unique across all item groups.
11079
+ *
11080
+ * **NOTE**: Item groups do not have a `fullName` field because they are not hierarchical objects, which is why `name` is unique for them but not for objects that have parents.
11081
+ */
10183
11082
  name?: string | null;
10184
11083
  barCode?: BarCodeRequest | null;
11084
+ /**
11085
+ * Indicates whether this item group is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
11086
+ */
10185
11087
  isActive?: boolean | null;
10186
11088
  description?: string | null;
10187
11089
  unitOfMeasureSetId?: string | null;
@@ -10199,7 +11101,7 @@ export type UpdateItemInventoryAssemblyLineRequest = {
10199
11101
  * Request model for updating an ItemInventoryAssembly.
10200
11102
  * Updates an inventory assembly item. If you change the income account,
10201
11103
  * set updateExistingTransactionsIncomeAccount to true so QuickBooks applies
10202
- * ]the new account to existing transactions that use the assembly.
11104
+ * the new account to existing transactions that use the assembly.
10203
11105
  *
10204
11106
  * Updating quantity on hand: The number of units of this inventory assembly
10205
11107
  * item currently in inventory. quantityOnHand multiplied by averageCost
@@ -10209,8 +11111,14 @@ export type UpdateItemInventoryAssemblyLineRequest = {
10209
11111
  */
10210
11112
  export type UpdateItemInventoryAssemblyRequest = {
10211
11113
  revisionNumber: string;
11114
+ /**
11115
+ * The case-insensitive name of this inventory assembly item. Not guaranteed to be unique because it does not include the names of its hierarchical parent objects like `fullName` does. For example, two inventory assembly items could both have the `name` "Deluxe Kit", but they could have unique `fullName` values, such as "Assemblies:Deluxe Kit" and "Inventory:Deluxe Kit".
11116
+ */
10212
11117
  name?: string | null;
10213
11118
  barCode?: BarCodeRequest | null;
11119
+ /**
11120
+ * Indicates whether this inventory assembly item is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
11121
+ */
10214
11122
  isActive?: boolean | null;
10215
11123
  classId?: string | null;
10216
11124
  parentId?: string | null;
@@ -10219,16 +11127,31 @@ export type UpdateItemInventoryAssemblyRequest = {
10219
11127
  isTaxIncluded?: boolean | null;
10220
11128
  salesTaxCodeId?: string | null;
10221
11129
  salesDescription?: string | null;
11130
+ /**
11131
+ * The price at which this inventory assembly item is sold to customers, represented as a decimal string.
11132
+ */
10222
11133
  salesPrice?: number | null;
10223
11134
  incomeAccountId?: string | null;
10224
11135
  purchaseDescription?: string | null;
11136
+ /**
11137
+ * The cost at which this inventory assembly item is purchased from vendors, represented as a decimal string.
11138
+ */
10225
11139
  purchaseCost?: number | null;
10226
11140
  purchaseTaxCodeId?: string | null;
10227
11141
  cogsAccountId?: string | null;
10228
11142
  preferredVendorId?: string | null;
10229
11143
  assetAccountId?: string | null;
11144
+ /**
11145
+ * The inventory assembly item's minimum quantity threshold that triggers a build notification in QuickBooks. When the sum of `quantityOnHand` (current inventory) and `quantityOnOrder` (pending purchase orders) drops below this threshold, QuickBooks will notify users that more units need to be built or assembled. This helps ensure adequate inventory levels for inventory assembly items.
11146
+ */
10230
11147
  buildNotificationThreshold?: number | null;
11148
+ /**
11149
+ * The maximum quantity of this inventory assembly item desired in inventory.
11150
+ */
10231
11151
  maximumQuantityOnHand?: number | null;
11152
+ /**
11153
+ * The inventory assembly item's lines.
11154
+ */
10232
11155
  lines?: Array<UpdateItemInventoryAssemblyLineRequest> | null;
10233
11156
  };
10234
11157
  /**
@@ -10309,8 +11232,14 @@ export type UpdateItemLineRequest = {
10309
11232
  */
10310
11233
  export type UpdateItemNonInventoryRequest = {
10311
11234
  revisionNumber: string;
11235
+ /**
11236
+ * The case-insensitive name of this non-inventory item. Not guaranteed to be unique because it does not include the names of its hierarchical parent objects like `fullName` does. For example, two non-inventory items could both have the `name` "Printer Ink Cartridge", but they could have unique `fullName` values, such as "Office Supplies:Printer Ink Cartridge" and "Miscellaneous:Printer Ink Cartridge".
11237
+ */
10312
11238
  name?: string | null;
10313
11239
  barcode?: BarCodeRequest | null;
11240
+ /**
11241
+ * Indicates whether this non-inventory item is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
11242
+ */
10314
11243
  isActive?: boolean | null;
10315
11244
  classId?: string | null;
10316
11245
  parentId?: string | null;
@@ -10318,7 +11247,17 @@ export type UpdateItemNonInventoryRequest = {
10318
11247
  unitOfMeasureSetId?: string | null;
10319
11248
  isTaxIncluded?: boolean | null;
10320
11249
  salesTaxCodeId?: string | null;
11250
+ /**
11251
+ * Details for non-inventory items that are exclusively sold or exclusively purchased, but not both. This typically applies to non-inventory items (like a purchased office supply that isn't resold) or service items (like consulting services that are sold but not purchased).
11252
+ *
11253
+ * **IMPORTANT**: A non-inventory item will have either `salesAndPurchaseDetails` or `salesOrPurchaseDetails`, but never both because an item cannot have both configurations.
11254
+ */
10321
11255
  salesOrPurchaseDetails?: ItemNonInventorySalesOrPurchaseDetailsRequest | null;
11256
+ /**
11257
+ * Details for non-inventory items that are both purchased and sold, such as reimbursable expenses or inventory items that are bought from vendors and sold to customers.
11258
+ *
11259
+ * **IMPORTANT**: A non-inventory item will have either `salesAndPurchaseDetails` or `salesOrPurchaseDetails`, but never both because an item cannot have both configurations.
11260
+ */
10322
11261
  salesAndPurchaseDetails?: ItemNonInventorySalesAndPurchaseDetailsRequest | null;
10323
11262
  };
10324
11263
  /**
@@ -10326,14 +11265,30 @@ export type UpdateItemNonInventoryRequest = {
10326
11265
  */
10327
11266
  export type UpdateItemOtherChargeRequest = {
10328
11267
  revisionNumber: string;
11268
+ /**
11269
+ * The case-insensitive name of this other charge item. Not guaranteed to be unique because it does not include the names of its hierarchical parent objects like `fullName` does. For example, two other charge items could both have the `name` "Overnight Delivery", but they could have unique `fullName` values, such as "Shipping Charges:Overnight Delivery" and "Misc Fees:Overnight Delivery".
11270
+ */
10329
11271
  name?: string | null;
10330
11272
  barcode?: BarCodeRequest | null;
11273
+ /**
11274
+ * Indicates whether this other charge item is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
11275
+ */
10331
11276
  isActive?: boolean | null;
10332
11277
  classId?: string | null;
10333
11278
  parentId?: string | null;
10334
11279
  isTaxIncluded?: boolean | null;
10335
11280
  salesTaxCodeId?: string | null;
11281
+ /**
11282
+ * Details for other charge items that are exclusively sold or exclusively purchased, but not both. This typically applies to non-inventory items (like a purchased office supply that isn't resold) or service items (like consulting services that are sold but not purchased).
11283
+ *
11284
+ * **IMPORTANT**: An other charge item will have either `salesAndPurchaseDetails` or `salesOrPurchaseDetails`, but never both because an item cannot have both configurations.
11285
+ */
10336
11286
  salesOrPurchaseDetails?: ItemOtherChargeSalesOrPurchaseDetailsRequest | null;
11287
+ /**
11288
+ * Details for other charge items that are both purchased and sold, such as reimbursable expenses or inventory items that are bought from vendors and sold to customers.
11289
+ *
11290
+ * **IMPORTANT**: An other charge item will have either `salesAndPurchaseDetails` or `salesOrPurchaseDetails`, but never both because an item cannot have both configurations.
11291
+ */
10337
11292
  salesAndPurchaseDetails?: ItemOtherChargeSalesAndPurchaseDetailsRequest | null;
10338
11293
  };
10339
11294
  /**
@@ -10548,20 +11503,60 @@ export type UpdateJournalLineRequest = {
10548
11503
  * Implements IUpdateRequest for the abstraction pattern.
10549
11504
  */
10550
11505
  export type UpdateOtherNameRequest = {
11506
+ /**
11507
+ * The case-insensitive unique name of this other-name, unique across all other-names.
11508
+ *
11509
+ * **NOTE**: Other-names do not have a `fullName` field because they are not hierarchical objects, which is why `name` is unique for them but not for objects that have parents.
11510
+ */
10551
11511
  name?: string | null;
11512
+ /**
11513
+ * The name of the company associated with this other-name. This name is used on invoices, checks, and other forms.
11514
+ */
10552
11515
  companyName?: string | null;
11516
+ /**
11517
+ * The formal salutation title that precedes the name of the contact person for this other-name, such as "Mr.", "Ms.", or "Dr.".
11518
+ */
10553
11519
  salutation?: string | null;
11520
+ /**
11521
+ * The first name of the contact person for this other-name.
11522
+ */
10554
11523
  firstName?: string | null;
11524
+ /**
11525
+ * The middle name of the contact person for this other-name.
11526
+ */
10555
11527
  middleName?: string | null;
11528
+ /**
11529
+ * The last name of the contact person for this other-name.
11530
+ */
10556
11531
  lastName?: string | null;
11532
+ /**
11533
+ * The other-name's address.
11534
+ */
10557
11535
  address?: Address | null;
10558
11536
  addressBlock?: AddressBlock | null;
11537
+ /**
11538
+ * The other-name's primary telephone number.
11539
+ */
10559
11540
  phone?: string | null;
10560
11541
  alternatePhone?: string | null;
11542
+ /**
11543
+ * The other-name's fax number.
11544
+ */
10561
11545
  fax?: string | null;
11546
+ /**
11547
+ * The other-name's email address.
11548
+ */
10562
11549
  email?: string | null;
11550
+ /**
11551
+ * The name of the primary contact person for this other-name.
11552
+ */
10563
11553
  contact?: string | null;
10564
11554
  alternateContact?: string | null;
11555
+ /**
11556
+ * The other-name's account number, which appears in the QuickBooks chart of accounts, reports, and graphs.
11557
+ *
11558
+ * Note that if the "Use Account Numbers" preference is turned off in QuickBooks, the account number may not be visible in the user interface, but it can still be set and retrieved through the API.
11559
+ */
10565
11560
  accountNumber?: string | null;
10566
11561
  notes?: string | null;
10567
11562
  customFields?: Array<DataExtRequest> | null;
@@ -10572,11 +11567,18 @@ export type UpdateOtherNameRequest = {
10572
11567
  * Implements IUpdateRequest for the abstraction pattern.
10573
11568
  */
10574
11569
  export type UpdatePaymentMethodRequest = {
11570
+ /**
11571
+ * The case-insensitive unique name of this payment method, unique across all payment methods.
11572
+ *
11573
+ * **NOTE**: Payment methods do not have a `fullName` field because they are not hierarchical objects, which is why `name` is unique for them but not for objects that have parents.
11574
+ */
10575
11575
  name: string;
11576
+ /**
11577
+ * Indicates whether this payment method is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
11578
+ */
10576
11579
  isActive?: boolean | null;
10577
11580
  /**
10578
- * (Optional) The type of payment method.
10579
- * Valid values: american_express, cash, check, debit_card, discover, e_check, gift_card, master_card, other, other_credit_card, visa.
11581
+ * This payment method's type.
10580
11582
  */
10581
11583
  paymentMethodType?: string | null;
10582
11584
  revisionNumber: string;
@@ -10597,11 +11599,13 @@ export type UpdatePaymentMethodRequest = {
10597
11599
  export type UpdatePriceLevelRequest = {
10598
11600
  revisionNumber: string;
10599
11601
  /**
10600
- * (Optional) The new name for the price level. Max length: 31 characters.
11602
+ * The case-insensitive unique name of this price level, unique across all price levels.
11603
+ *
11604
+ * **NOTE**: Price levels do not have a `fullName` field because they are not hierarchical objects, which is why `name` is unique for them but not for objects that have parents.
10601
11605
  */
10602
11606
  name?: string | null;
10603
11607
  /**
10604
- * (Optional) Whether the price level is active.
11608
+ * Indicates whether this price level is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
10605
11609
  */
10606
11610
  isActive?: boolean | null;
10607
11611
  /**
@@ -11028,20 +12032,21 @@ export type UpdateSalesReceiptRequest = {
11028
12032
  export type UpdateSalesTaxCodeRequest = {
11029
12033
  revisionNumber: string;
11030
12034
  /**
11031
- * (Optional) The new name of the sales tax code. (Max 31 characters)
12035
+ * The case-insensitive unique name of this sales-tax code, unique across all sales-tax codes. This short name will appear on sales forms to identify the tax status of an item.
12036
+ *
12037
+ * **NOTE**: Sales-tax codes do not have a `fullName` field because they are not hierarchical objects, which is why `name` is unique for them but not for objects that have parents.
11032
12038
  */
11033
12039
  name?: string | null;
11034
12040
  /**
11035
- * (Optional) If false, this Sales Tax Code will be made inactive.
12041
+ * Indicates whether this sales-tax code is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
11036
12042
  */
11037
12043
  isActive?: boolean | null;
11038
12044
  /**
11039
- * (Optional) Indicates whether the sales tax code represents a taxable (true) or non-taxable (false) item.
11040
- * NOTE: You cannot change this after the code has been used in a transaction.
12045
+ * Indicates whether this sales-tax code is tracking taxable sales. This field cannot be modified once the sales-tax code has been used in a transaction.
11041
12046
  */
11042
12047
  isTaxable?: boolean | null;
11043
12048
  /**
11044
- * (Optional) The new description for the sales tax code. (Max 50 characters)
12049
+ * A description of this sales-tax code.
11045
12050
  */
11046
12051
  description?: string | null;
11047
12052
  /**
@@ -11083,8 +12088,14 @@ export type UpdateSalesTaxPaymentCheckRequest = {
11083
12088
  };
11084
12089
  export type UpdateServiceItemRequest = {
11085
12090
  revisionNumber: string;
12091
+ /**
12092
+ * The case-insensitive name of this service item. Not guaranteed to be unique because it does not include the names of its hierarchical parent objects like `fullName` does. For example, two service items could both have the `name` "Web-Design", but they could have unique `fullName` values, such as "Consulting:Web-Design" and "Contracting:Web-Design".
12093
+ */
11086
12094
  name?: string | null;
11087
12095
  barCode?: BarCodeRequest | null;
12096
+ /**
12097
+ * Indicates whether this service item is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
12098
+ */
11088
12099
  isActive?: boolean | null;
11089
12100
  parentId?: string | null;
11090
12101
  salesTaxCodeId?: string | null;
@@ -11105,11 +12116,13 @@ export type UpdateServiceItemRequest = {
11105
12116
  export type UpdateShipMethodRequest = {
11106
12117
  revisionNumber: string;
11107
12118
  /**
11108
- * (Optional) The new name of the shipping method. (Max 15 characters)
12119
+ * The case-insensitive unique name of this shipping method, unique across all shipping methods.
12120
+ *
12121
+ * **NOTE**: Shipping methods do not have a `fullName` field because they are not hierarchical objects, which is why `name` is unique for them but not for objects that have parents.
11109
12122
  */
11110
12123
  name?: string | null;
11111
12124
  /**
11112
- * (Optional) If false, this Shipping Method is inactive.
12125
+ * Indicates whether this shipping method is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
11113
12126
  */
11114
12127
  isActive?: boolean | null;
11115
12128
  };
@@ -11231,41 +12244,111 @@ export type UpdateVendorCreditRequest = {
11231
12244
  */
11232
12245
  export type UpdateVendorRequest = {
11233
12246
  revisionNumber: string;
12247
+ /**
12248
+ * The case-insensitive unique name of this vendor, unique across all vendors.
12249
+ *
12250
+ * **NOTE**: Vendors do not have a `fullName` field because they are not hierarchical objects, which is why `name` is unique for them but not for objects that have parents.
12251
+ */
11234
12252
  name?: string | null;
12253
+ /**
12254
+ * Indicates whether this vendor is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
12255
+ */
11235
12256
  isActive?: boolean;
11236
12257
  classId?: string | null;
12258
+ /**
12259
+ * The name of the company associated with this vendor. This name is used on invoices, checks, and other forms.
12260
+ */
11237
12261
  companyName?: string | null;
12262
+ /**
12263
+ * The formal salutation title that precedes the name of the contact person for this vendor, such as "Mr.", "Ms.", or "Dr.".
12264
+ */
11238
12265
  salutation?: string | null;
12266
+ /**
12267
+ * The first name of the contact person for this vendor.
12268
+ */
11239
12269
  firstName?: string | null;
12270
+ /**
12271
+ * The middle name of the contact person for this vendor.
12272
+ */
11240
12273
  middleName?: string | null;
12274
+ /**
12275
+ * The last name of the contact person for this vendor.
12276
+ */
11241
12277
  lastName?: string | null;
12278
+ /**
12279
+ * The job title of the contact person for this vendor.
12280
+ */
11242
12281
  jobTitle?: string | null;
11243
12282
  billingAddress?: AddressRequest | null;
11244
12283
  shippingAddress?: AddressRequest | null;
12284
+ /**
12285
+ * The vendor's primary telephone number.
12286
+ */
11245
12287
  phone?: string | null;
11246
12288
  alternatePhone?: string | null;
12289
+ /**
12290
+ * The vendor's fax number.
12291
+ */
11247
12292
  fax?: string | null;
12293
+ /**
12294
+ * The vendor's email address.
12295
+ */
11248
12296
  email?: string | null;
11249
12297
  ccEmail?: string | null;
12298
+ /**
12299
+ * The name of the primary contact person for this vendor.
12300
+ */
11250
12301
  contact?: string | null;
11251
12302
  alternateContact?: string | null;
12303
+ /**
12304
+ * Additional custom contact fields for this vendor, such as phone numbers or email addresses.
12305
+ */
11252
12306
  customContactFields?: Array<CustomContactField> | null;
12307
+ /**
12308
+ * Additional alternate contacts for this vendor.
12309
+ */
11253
12310
  additionalContacts?: Array<Contact> | null;
12311
+ /**
12312
+ * The vendor's name as it should appear on checks issued to this vendor.
12313
+ */
11254
12314
  nameOnCheck?: string | null;
12315
+ /**
12316
+ * The vendor's account number, which appears in the QuickBooks chart of accounts, reports, and graphs.
12317
+ *
12318
+ * Note that if the "Use Account Numbers" preference is turned off in QuickBooks, the account number may not be visible in the user interface, but it can still be set and retrieved through the API.
12319
+ */
11255
12320
  accountNumber?: string | null;
11256
12321
  note?: string | null;
12322
+ /**
12323
+ * Additional notes about this vendor.
12324
+ */
11257
12325
  additionalNotes?: Array<AdditionalNote> | null;
11258
12326
  vendorTypeId?: string | null;
11259
12327
  termsId?: string | null;
12328
+ /**
12329
+ * The vendor's credit limit, represented as a decimal string. This is the maximum amount of money that can be spent being before billed by this vendor. If `null`, there is no credit limit.
12330
+ */
11260
12331
  creditLimit?: number | null;
11261
12332
  taxIdentificationNumber?: string | null;
11262
12333
  isEligibleFor1099?: boolean | null;
11263
12334
  billingRateId?: string | null;
11264
12335
  salesTaxCodeId?: string | null;
12336
+ /**
12337
+ * The country for which sales tax is collected for this vendor.
12338
+ */
11265
12339
  salesTaxCountry?: string | null;
12340
+ /**
12341
+ * Indicates whether this vendor is a sales tax agency.
12342
+ */
11266
12343
  isSalesTaxAgency?: boolean | null;
11267
12344
  salesTaxReturnId?: string | null;
12345
+ /**
12346
+ * The vendor's tax registration number, for use in Canada or the UK.
12347
+ */
11268
12348
  taxRegistrationNumber?: string | null;
12349
+ /**
12350
+ * The vendor's tax reporting period, for use in Canada or the UK.
12351
+ */
11269
12352
  reportingPeriod?: string | null;
11270
12353
  isTrackingPurchaseTax?: boolean | null;
11271
12354
  purchaseTaxAccountId?: string | null;
@@ -11290,11 +12373,13 @@ export type UpdateVendorRequest = {
11290
12373
  export type UpdateWorkersCompCodeRequest = {
11291
12374
  revisionNumber: string;
11292
12375
  /**
11293
- * (Optional) New name for the code. Max length: 13.
12376
+ * The case-insensitive unique name of this employee, unique across all employees. A concatenation of the employee's `firstName`, `middleName`, and `lastName` fields.
12377
+ *
12378
+ * **NOTE**: Employees do not have a `fullName` field because they are not hierarchical objects, which is why `name` is unique for them but not for objects that have parents.
11294
12379
  */
11295
12380
  name?: string | null;
11296
12381
  /**
11297
- * (Optional) Update the active status.
12382
+ * Indicates whether this employee is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.
11298
12383
  */
11299
12384
  isActive?: boolean | null;
11300
12385
  /**
@@ -12253,10 +13338,14 @@ export type ListBillsData = {
12253
13338
  */
12254
13339
  fromTransactionDate?: string | null;
12255
13340
  /**
12256
- * Filter for paid, not paid, or both. Values: All, PaidOnly, NotPaidOnly
13341
+ * Filters bills by their payment state.
13342
+ * Supported values: `All`, `PaidOnly`, `NotPaidOnly`.
12257
13343
  */
12258
13344
  paymentStatus?: string;
12259
- CurrencyIds?: Array<string>;
13345
+ /**
13346
+ * Filter records by one or more Currency IDs.
13347
+ */
13348
+ currencyIds?: Array<string>;
12260
13349
  /**
12261
13350
  * Filter by starting reference number (startsWith).
12262
13351
  */
@@ -21888,13 +22977,15 @@ export type ListAccountsData = {
21888
22977
  */
21889
22978
  IncludeRetElementList?: Array<string>;
21890
22979
  /**
21891
- * Optional: Filter by account type (e.g., Bank, AccountsReceivable, Expense, Income, etc.)
21892
- * Binds from query parameter: ?accountType=Bank
22980
+ * Filter by a specific account type.
21893
22981
  */
21894
22982
  accountType?: NullableAccountType;
22983
+ /**
22984
+ * Filter accounts by multiple account type values.
22985
+ */
21895
22986
  accountTypes?: Array<AccountType>;
21896
22987
  /**
21897
- * Optional: Filter by OwnerID (GUIDs).
22988
+ * Filter by one or more external owner identifiers.
21898
22989
  */
21899
22990
  ownerIds?: Array<string>;
21900
22991
  };
@@ -27246,8 +28337,7 @@ export type ListPaymentMethodsData = {
27246
28337
  */
27247
28338
  IncludeRetElementList?: Array<string>;
27248
28339
  /**
27249
- * (Optional) Filter by type.
27250
- * Valid values: american_express, cash, check, debit_card, discover, e_check, gift_card, master_card, other, other_credit_card, visa.
28340
+ * This payment method's type.
27251
28341
  */
27252
28342
  PaymentMethodType?: string;
27253
28343
  };