conductor-node 11.2.6 → 11.3.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.
- package/README.md +4 -2
- package/dist/package.json +8 -6
- package/dist/src/Client.d.ts +0 -3
- package/dist/src/Client.js +7 -5
- package/dist/src/integrations/qbd/QbdIntegration.d.ts +35 -3
- package/dist/src/integrations/qbd/QbdIntegration.js +35 -3
- package/dist/src/integrations/qbd/qbdTypes.d.ts +78 -0
- package/package.json +8 -6
- package/dist/src/utils/http.d.ts +0 -1
- package/dist/src/utils/http.js +0 -12
package/README.md
CHANGED
|
@@ -24,6 +24,8 @@
|
|
|
24
24
|
|
|
25
25
|
Conductor is a TypeScript-first Node.js API for **QuickBooks Desktop** (also known as QuickBooks Enterprise). In just a few lines, get real-time access to fetch, create, or update [_any_ QuickBooks Desktop object type](https://docs.conductor.is/qbd/api#supported-object-types) and receive a fully-typed response. Check out [the documentation](https://docs.conductor.is) to get started.
|
|
26
26
|
|
|
27
|
+
Conductor, the company, is building a data integration platform for vertical SaaS companies, starting with QuickBooks Desktop. Our team has spent over a decade building companies, scaling vast software systems, and obsessing over quality.
|
|
28
|
+
|
|
27
29
|
<!-- markdownlint-disable MD033 -->
|
|
28
30
|
<div align="center">
|
|
29
31
|
<a href="https://docs.conductor.is"><img src="https://user-images.githubusercontent.com/170023/213273732-83dd6881-0b36-4787-820b-bd55cdc8444f.jpg" alt="QuickBooks Desktop autocomplete" width="600" /></a>
|
|
@@ -39,7 +41,7 @@ Conductor is a TypeScript-first Node.js API for **QuickBooks Desktop** (also kno
|
|
|
39
41
|
|
|
40
42
|
## Requirements
|
|
41
43
|
|
|
42
|
-
1. A Conductor API key pair: one secret key, one publishable key. Please [email us](mailto:hello@conductor.is?subject=Conductor%20Beta) to join the
|
|
44
|
+
1. A Conductor API key pair: one secret key, one publishable key. Please [email us](mailto:hello@conductor.is?subject=Conductor%20Beta%20Access&body=Hello!%20Tell%20us%20a%20bit%20about%20what%20you%20are%20building:%20) to join the beta.
|
|
43
45
|
2. Node.js v16 or later.
|
|
44
46
|
|
|
45
47
|
## Installation
|
|
@@ -85,4 +87,4 @@ main();
|
|
|
85
87
|
|
|
86
88
|
## More Documentation
|
|
87
89
|
|
|
88
|
-
Please see our full documentation
|
|
90
|
+
Please see our [full documentation site](https://docs.conductor.is) for more docs, guides, and code examples.
|
package/dist/package.json
CHANGED
|
@@ -1,17 +1,19 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "conductor-node",
|
|
3
|
-
"version": "11.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "11.3.1",
|
|
4
|
+
"description": "QuickBooks Desktop API for Node.js and TypeScript",
|
|
5
5
|
"keywords": [
|
|
6
|
+
"QuickBooks",
|
|
6
7
|
"QuickBooks Desktop",
|
|
7
8
|
"QuickBooks Enterprise",
|
|
8
|
-
"QuickBooks",
|
|
9
|
-
"Intuit",
|
|
10
9
|
"QuickBooks Web Connector",
|
|
11
|
-
"qbXML",
|
|
12
10
|
"QBWC",
|
|
11
|
+
"qbXML",
|
|
13
12
|
"QB Desktop",
|
|
14
|
-
"
|
|
13
|
+
"QB Enterprise",
|
|
14
|
+
"QBD",
|
|
15
|
+
"QBE",
|
|
16
|
+
"Intuit"
|
|
15
17
|
],
|
|
16
18
|
"homepage": "https://conductor.is",
|
|
17
19
|
"repository": "github:conductor-is/conductor-node",
|
package/dist/src/Client.d.ts
CHANGED
|
@@ -14,9 +14,6 @@ export default class Client {
|
|
|
14
14
|
readonly authSessions: AuthSessionsResource;
|
|
15
15
|
/**
|
|
16
16
|
* Executes any QuickBooks Desktop (QBD) API against the specified end-user.
|
|
17
|
-
* See the official [QuickBooks Desktop API
|
|
18
|
-
* Reference](https://developer.intuit.com/app/developer/qbdesktop/docs/api-reference/qbdesktop)
|
|
19
|
-
* for a complete list of available APIs.
|
|
20
17
|
*/
|
|
21
18
|
readonly qbd: QbdIntegration;
|
|
22
19
|
private readonly httpClient;
|
package/dist/src/Client.js
CHANGED
|
@@ -11,7 +11,6 @@ const AuthSessionsResource_1 = __importDefault(require("./resources/AuthSessions
|
|
|
11
11
|
const EndUsersResource_1 = __importDefault(require("./resources/EndUsersResource"));
|
|
12
12
|
const IntegrationConnectionsResource_1 = __importDefault(require("./resources/IntegrationConnectionsResource"));
|
|
13
13
|
const checkForUpdates_1 = require("./utils/checkForUpdates");
|
|
14
|
-
const http_1 = require("./utils/http");
|
|
15
14
|
const axios_1 = __importDefault(require("axios"));
|
|
16
15
|
class Client {
|
|
17
16
|
endUsers;
|
|
@@ -19,9 +18,6 @@ class Client {
|
|
|
19
18
|
authSessions;
|
|
20
19
|
/**
|
|
21
20
|
* Executes any QuickBooks Desktop (QBD) API against the specified end-user.
|
|
22
|
-
* See the official [QuickBooks Desktop API
|
|
23
|
-
* Reference](https://developer.intuit.com/app/developer/qbdesktop/docs/api-reference/qbdesktop)
|
|
24
|
-
* for a complete list of available APIs.
|
|
25
21
|
*/
|
|
26
22
|
qbd;
|
|
27
23
|
httpClient;
|
|
@@ -34,8 +30,14 @@ class Client {
|
|
|
34
30
|
this.qbd = new QbdIntegration_1.default(this.httpClient);
|
|
35
31
|
}
|
|
36
32
|
createHttpClient(apiKey, verbose) {
|
|
33
|
+
// Use an environment variable for overriding the server URL for testing and
|
|
34
|
+
// development instead of checking `NODE_ENV` to allow `conductor-node`
|
|
35
|
+
// users to use the production API server when their `NODE_ENV` is set to
|
|
36
|
+
// "development".
|
|
37
|
+
const apiServerUrl = process.env["CONDUCTOR__MOCK_API_SERVER_URL"] ??
|
|
38
|
+
"https://api.conductor.is";
|
|
37
39
|
const httpClient = axios_1.default.create({
|
|
38
|
-
baseURL: `${
|
|
40
|
+
baseURL: `${apiServerUrl}/v1`,
|
|
39
41
|
headers: this.createHeaders(apiKey),
|
|
40
42
|
timeout: 0, // No timeout (default).
|
|
41
43
|
});
|
|
@@ -1799,6 +1799,38 @@ export default class QbdIntegration extends BaseIntegration {
|
|
|
1799
1799
|
*/
|
|
1800
1800
|
query: (endUserId: string, params?: QbdTypes.OtherNameQueryRq) => Promise<NonNullable<QbdTypes.OtherNameQueryRs["OtherNameRet"]>>;
|
|
1801
1801
|
};
|
|
1802
|
+
/**
|
|
1803
|
+
* A payroll wage item describes and names a payment scheme, for example,
|
|
1804
|
+
* Regular Pay or Overtime Pay.
|
|
1805
|
+
*/
|
|
1806
|
+
payrollItemWage: {
|
|
1807
|
+
/**
|
|
1808
|
+
* Adds a payroll wage item. Each payroll wage item describes and names a
|
|
1809
|
+
* payment scheme, for example, Regular Pay or Overtime Pay. A
|
|
1810
|
+
* `PayrollItemWageRef` aggregate refers to one of these wage items. In a
|
|
1811
|
+
* request, if a `PayrollItemWageRef` aggregate includes both `FullName` and
|
|
1812
|
+
* `ListID`, `FullName` will be ignored.
|
|
1813
|
+
*
|
|
1814
|
+
* Within QuickBooks, a timesheet can specify a payroll wage item only if
|
|
1815
|
+
* the following criteria are met:
|
|
1816
|
+
* - The name on the timesheet (which corresponds to the EntityRef in the
|
|
1817
|
+
* `TimeTracking` object) is on the QuickBooks Employee list, and
|
|
1818
|
+
* - The “Use time data to create paychecks” preference is turned on in the
|
|
1819
|
+
* QuickBooks Payroll Info window that provides detailed employee
|
|
1820
|
+
* information employee.
|
|
1821
|
+
*
|
|
1822
|
+
*
|
|
1823
|
+
* See more:
|
|
1824
|
+
* https://developer.intuit.com/app/developer/qbdesktop/docs/api-reference/qbdesktop/PayrollItemWageAdd
|
|
1825
|
+
*/
|
|
1826
|
+
add: (endUserId: string, params: QbdTypes.PayrollItemWageAddRq["PayrollItemWageAdd"]) => Promise<NonNullable<QbdTypes.PayrollItemWageAddRs["PayrollItemWageRet"]>>;
|
|
1827
|
+
/**
|
|
1828
|
+
* Queries for the specified payroll wage item or set of items.
|
|
1829
|
+
*
|
|
1830
|
+
* See more: https://developer.intuit.com/app/developer/qbdesktop/docs/api-reference/qbdesktop/PayrollItemWageQuery
|
|
1831
|
+
*/
|
|
1832
|
+
query: (endUserId: string, params?: QbdTypes.PayrollItemWageQueryRq) => Promise<NonNullable<QbdTypes.PayrollItemWageQueryRs["PayrollItemWageRet"]>>;
|
|
1833
|
+
};
|
|
1802
1834
|
/**
|
|
1803
1835
|
* A price level is used to specify custom pricing for specific customers.
|
|
1804
1836
|
* Once you create a price level for a customer, QuickBooks will automatically
|
|
@@ -2127,13 +2159,13 @@ export default class QbdIntegration extends BaseIntegration {
|
|
|
2127
2159
|
/**
|
|
2128
2160
|
* This report returns information from any of three QuickBooks payroll
|
|
2129
2161
|
* reports:
|
|
2130
|
-
* - Payroll summary report This report shows the total wages, taxes
|
|
2162
|
+
* - Payroll summary report: This report shows the total wages, taxes
|
|
2131
2163
|
* withheld, deductions from net pay, additions to net pay, and
|
|
2132
2164
|
* employer-paid taxes and contributions for each employee on the payroll.
|
|
2133
|
-
* - Employee earnings summary report This report shows information similar
|
|
2165
|
+
* - Employee earnings summary report: This report shows information similar
|
|
2134
2166
|
* to the payroll summary report, but in a different layout. The report
|
|
2135
2167
|
* has a row for each employee and a column for each payroll item.
|
|
2136
|
-
* - Payroll liability balances report This report lists the payroll
|
|
2168
|
+
* - Payroll liability balances report: This report lists the payroll
|
|
2137
2169
|
* liabilities the QuickBooks company owes to various agencies, such as
|
|
2138
2170
|
* the federal government, your state government, insurance plan
|
|
2139
2171
|
* administrators, labor unions, etc. The report covers unpaid liabilities
|
|
@@ -1804,6 +1804,38 @@ class QbdIntegration extends BaseIntegration_1.default {
|
|
|
1804
1804
|
*/
|
|
1805
1805
|
query: async (endUserId, params = {}) => this.sendRequestWrapper(endUserId, { OtherNameQueryRq: params }, "OtherNameQueryRs", "OtherNameRet"),
|
|
1806
1806
|
};
|
|
1807
|
+
/**
|
|
1808
|
+
* A payroll wage item describes and names a payment scheme, for example,
|
|
1809
|
+
* Regular Pay or Overtime Pay.
|
|
1810
|
+
*/
|
|
1811
|
+
payrollItemWage = {
|
|
1812
|
+
/**
|
|
1813
|
+
* Adds a payroll wage item. Each payroll wage item describes and names a
|
|
1814
|
+
* payment scheme, for example, Regular Pay or Overtime Pay. A
|
|
1815
|
+
* `PayrollItemWageRef` aggregate refers to one of these wage items. In a
|
|
1816
|
+
* request, if a `PayrollItemWageRef` aggregate includes both `FullName` and
|
|
1817
|
+
* `ListID`, `FullName` will be ignored.
|
|
1818
|
+
*
|
|
1819
|
+
* Within QuickBooks, a timesheet can specify a payroll wage item only if
|
|
1820
|
+
* the following criteria are met:
|
|
1821
|
+
* - The name on the timesheet (which corresponds to the EntityRef in the
|
|
1822
|
+
* `TimeTracking` object) is on the QuickBooks Employee list, and
|
|
1823
|
+
* - The “Use time data to create paychecks” preference is turned on in the
|
|
1824
|
+
* QuickBooks Payroll Info window that provides detailed employee
|
|
1825
|
+
* information employee.
|
|
1826
|
+
*
|
|
1827
|
+
*
|
|
1828
|
+
* See more:
|
|
1829
|
+
* https://developer.intuit.com/app/developer/qbdesktop/docs/api-reference/qbdesktop/PayrollItemWageAdd
|
|
1830
|
+
*/
|
|
1831
|
+
add: async (endUserId, params) => this.sendRequestWrapper(endUserId, { PayrollItemWageAddRq: { PayrollItemWageAdd: params } }, "PayrollItemWageAddRs", "PayrollItemWageRet"),
|
|
1832
|
+
/**
|
|
1833
|
+
* Queries for the specified payroll wage item or set of items.
|
|
1834
|
+
*
|
|
1835
|
+
* See more: https://developer.intuit.com/app/developer/qbdesktop/docs/api-reference/qbdesktop/PayrollItemWageQuery
|
|
1836
|
+
*/
|
|
1837
|
+
query: async (endUserId, params = {}) => this.sendRequestWrapper(endUserId, { PayrollItemWageQueryRq: params }, "PayrollItemWageQueryRs", "PayrollItemWageRet"),
|
|
1838
|
+
};
|
|
1807
1839
|
/**
|
|
1808
1840
|
* A price level is used to specify custom pricing for specific customers.
|
|
1809
1841
|
* Once you create a price level for a customer, QuickBooks will automatically
|
|
@@ -2132,13 +2164,13 @@ class QbdIntegration extends BaseIntegration_1.default {
|
|
|
2132
2164
|
/**
|
|
2133
2165
|
* This report returns information from any of three QuickBooks payroll
|
|
2134
2166
|
* reports:
|
|
2135
|
-
* - Payroll summary report This report shows the total wages, taxes
|
|
2167
|
+
* - Payroll summary report: This report shows the total wages, taxes
|
|
2136
2168
|
* withheld, deductions from net pay, additions to net pay, and
|
|
2137
2169
|
* employer-paid taxes and contributions for each employee on the payroll.
|
|
2138
|
-
* - Employee earnings summary report This report shows information similar
|
|
2170
|
+
* - Employee earnings summary report: This report shows information similar
|
|
2139
2171
|
* to the payroll summary report, but in a different layout. The report
|
|
2140
2172
|
* has a row for each employee and a column for each payroll item.
|
|
2141
|
-
* - Payroll liability balances report This report lists the payroll
|
|
2173
|
+
* - Payroll liability balances report: This report lists the payroll
|
|
2142
2174
|
* liabilities the QuickBooks company owes to various agencies, such as
|
|
2143
2175
|
* the federal government, your state government, insurance plan
|
|
2144
2176
|
* administrators, labor unions, etc. The report covers unpaid liabilities
|
|
@@ -9074,12 +9074,89 @@ export interface PayrollDetailReportQueryRs {
|
|
|
9074
9074
|
ReportRet: ReportRet[];
|
|
9075
9075
|
}
|
|
9076
9076
|
export type PayrollDetailReportType = "EmployeeStateTaxesDetail" | "PayrollItemDetail" | "PayrollReviewDetail" | "PayrollTransactionDetail" | "PayrollTransactionsByPayee";
|
|
9077
|
+
export interface PayrollItemWageAdd {
|
|
9078
|
+
/** Description of the wage: for example, Regular Pay or Overtime Pay. */
|
|
9079
|
+
Name: string;
|
|
9080
|
+
/** If `IsActive` is true, this object is currently enabled for use by QuickBooks. The default value is true. */
|
|
9081
|
+
IsActive?: boolean;
|
|
9082
|
+
/** The type of pay. */
|
|
9083
|
+
WageType: WageType;
|
|
9084
|
+
/** Refers to an expense account. If an `ExpenseAccountRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. */
|
|
9085
|
+
ExpenseAccountRef: ExpenseAccountRef;
|
|
9086
|
+
}
|
|
9087
|
+
export interface PayrollItemWageAddRq {
|
|
9088
|
+
PayrollItemWageAdd: PayrollItemWageAdd;
|
|
9089
|
+
/** You use this if you want to limit the data that will be returned in the response. In this list, you specify the name of each top-level element or aggregate that you want to be returned in the response to the request. You cannot specify fields within an aggregate, for example, you cannot specify a `City` within an `Address`: you must specify `Address` and will get the entire address. The names specified in the list are not parsed, so you must be especially careful to supply valid names, properly cased. No error is returned in the status code if you specify an invalid name. Notice that if you want to return custom data or private data extensions, you must specify the `DataExtRet` element and you must supply the `OwnerID` set to either a value of 0 (custom data) or the GUID for the private data. */
|
|
9090
|
+
IncludeRetElement?: string[] | string;
|
|
9091
|
+
}
|
|
9092
|
+
export interface PayrollItemWageAddRs {
|
|
9093
|
+
PayrollItemWageRet?: PayrollItemWageRet;
|
|
9094
|
+
}
|
|
9095
|
+
export interface PayrollItemWageQueryRq {
|
|
9096
|
+
/** One or more `ListID` values. Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`.
|
|
9097
|
+
|
|
9098
|
+
A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
9099
|
+
ListID?: string[] | string;
|
|
9100
|
+
/** A list of one or more `FullName` values. `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
9101
|
+
FullName?: string[] | string;
|
|
9102
|
+
/** Limits the number of objects that a query returns. (To get a count of how many objects could possibly be returned, use the `metaData` query attribute.) If you include a `MaxReturned` value, it must be at least 1. */
|
|
9103
|
+
MaxReturned?: number;
|
|
9104
|
+
/** Used in filters to select list objects based on whether or not they are currently enabled for use by QuickBooks. The default value is `asActiveOnly`, which selects only list objects that are active. */
|
|
9105
|
+
ActiveStatus?: ActiveStatus;
|
|
9106
|
+
/** Selects objects modified on or after this date. See the note below regarding QBFC usage.
|
|
9107
|
+
|
|
9108
|
+
For desktop versions of QuickBooks, the `FromModifiedDate` and `ToModifiedDate` must be between 1970-01-01 and 2038-01-19T03:14:07 (2038-01-18T19:14:07-08:00 PST). (The time portion of the field was not supported in qbXML version 1.0 or 1.1.) Also, for desktop versions of QuickBooks, if `FromModifiedDate` includes a date but not a time (for example, if you set `FromModifiedDate` to 2003-02-14), the time is assumed to be zero (2003-02-14T00:00:00). If you omit `FromModifiedDate`, it will be set to 1970-01-01T00:00:00 (1969-12-31T16:00:00-08:00 PST).
|
|
9109
|
+
|
|
9110
|
+
For QBOE, the `FromModifiedDate` and `ToModifiedDate` must be between 1900-01-01T00:00:00 and 9999-12-31T00:00:00. If `FromModifiedDate` includes a date but not a time (for example, if you set `FromModifiedDate` to 2003-02-14), the time is assumed to be zero (2003-02-14T00:00:00). If you omit `FromModifiedDate`, it will be set to 1900-01-01T00:00:00.
|
|
9111
|
+
|
|
9112
|
+
Note: When specifying this in QBFC, you need to supply the parameter `asDateOnly`, which is a Boolean. If `asDateOnly` is true, the date value will be represented as a date only (without a time). If `asDateOnly` is false, the date value will be represented as date and time, padded with zeros if necessary, and set to the beginning of the day if no time is provided. The `asDateOnly` parameter is especially useful in the `ToModifiedDate` field of a query: If `asDateOnly` is set to true in the `ToModifiedDate` field of a query, then the query includes elements modified up to the end of the day. If `asDateOnly` is false, the query includes elements modified up to the specified time (or up to the beginning of the day if no time is included). */
|
|
9113
|
+
FromModifiedDate?: string;
|
|
9114
|
+
/** Selects objects modified on or before this date. See the note below on QBFC usage.
|
|
9115
|
+
|
|
9116
|
+
For desktop versions of QuickBooks, the `ToModifiedDate` and `FromModifiedDate` must be between 01/01/1970 and 2038-01-19T03:14:07 (2038-01-18T19:14:07-08:00 PST). (Note that the time portion of the field was not supported in qbXML version 1.0 or 1.1.) If `ToModifiedDate` includes a date but not a time (for example, if you set `ToModifiedDate` to 2003-02-14), the time is assumed to be the end of the day (2003-02-14T23:59:59). If you omit `ToModifiedDate` altogether, it will be set to 2038-01-19T03:14:07 (2038-01-18T19:14:07-08:00 PST).
|
|
9117
|
+
|
|
9118
|
+
For QBOE, the `ToModifiedDate` and `FromModifiedDate` must be between 01/01/1900 and 9999-12-31T00:00:00. If `ToModifiedDate` includes a date but not a time (for example, if you set `ToModifiedDate` to 2003-02-14), the time is assumed to be the end of the day (2003-02-14T23:59:59). If you omit `ToModifiedDate` altogether, it will be set to 9999-12-31T00:00:00.
|
|
9119
|
+
|
|
9120
|
+
Note: When specifying this in QBFC, you need to supply the parameter `asDateOnly`, which is a Boolean. If `asDateOnly` is true, the date value will be represented as a date only (without a time). If `asDateOnly` is false, the date value will be represented as date and time, padded with zeros if necessary, and set to the beginning of the day if no time is provided. The `asDateOnly` parameter is especially useful in the `ToModifiedDate` field of a query: If `asDateOnly` is set to true in the `ToModifiedDate` field of a query, then the query includes elements modified up to the end of the day. If `asDateOnly` is false, the query includes elements modified up to the specified time (or up to the beginning of the day if no time is included). */
|
|
9121
|
+
ToModifiedDate?: string;
|
|
9122
|
+
/** Filters according to the object’s `Name`. */
|
|
9123
|
+
NameFilter?: NameFilter;
|
|
9124
|
+
/** Filters according to the object’s `Name`. */
|
|
9125
|
+
NameRangeFilter?: NameRangeFilter;
|
|
9126
|
+
/** You use this if you want to limit the data that will be returned in the response. In this list, you specify the name of each top-level element or aggregate that you want to be returned in the response to the request. You cannot specify fields within an aggregate, for example, you cannot specify a `City` within an `Address`: you must specify `Address` and will get the entire address.
|
|
9127
|
+
|
|
9128
|
+
The names specified in the list are not parsed, so you must be especially careful to supply valid names, properly cased. No error is returned in the status code if you specify an invalid name.
|
|
9129
|
+
|
|
9130
|
+
Notice that if you want to return custom data or private data extensions, you must specify the `DataExtRet` element and you must supply the `OwnerID` set to either a value of 0 (custom data) or the GUID for the private data. */
|
|
9131
|
+
IncludeRetElement?: string[] | string;
|
|
9132
|
+
}
|
|
9133
|
+
export interface PayrollItemWageQueryRs {
|
|
9134
|
+
PayrollItemWageRet: PayrollItemWageRet[];
|
|
9135
|
+
}
|
|
9077
9136
|
export interface PayrollItemWageRef {
|
|
9078
9137
|
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
9079
9138
|
ListID?: string;
|
|
9080
9139
|
/** `FullName` (along with `ListID`) is a way to identify a list object. The `FullName` is the name prefixed by the names of each ancestor, for example `Jones:Kitchen:Cabinets`. `FullName` values are not case-sensitive. */
|
|
9081
9140
|
FullName?: string;
|
|
9082
9141
|
}
|
|
9142
|
+
export interface PayrollItemWageRet {
|
|
9143
|
+
/** Along with `FullName`, `ListID` is a way to identify a list object. When a list object is added to QuickBooks through the SDK or through the QuickBooks user interface, the server assigns it a `ListID`. A `ListID` is not unique across lists, but it is unique across each particular type of list. For example, two customers could not have the same `ListID`, and a customer could not have the same `ListID` as an employee (because Customer and Employee are both name lists). But a customer could have the same `ListID` as a non-inventory item. */
|
|
9144
|
+
ListID: string;
|
|
9145
|
+
/** Time the object was created. */
|
|
9146
|
+
TimeCreated: string;
|
|
9147
|
+
/** Time the object was last modified. */
|
|
9148
|
+
TimeModified: string;
|
|
9149
|
+
/** A number that the server generates and assigns to this object. Every time the object is changed, the server will change its `EditSequence` value. When you try to modify a list object, you must provide its `EditSequence`. The server compares the `EditSequence` you provide with the `EditSequence` in memory to make sure you are dealing with the latest copy of the object. If you are not, the server will reject the request and return an error. Because `EditSequence` is only used to check whether two objects match, there is no reason to interpret its value. */
|
|
9150
|
+
EditSequence: string;
|
|
9151
|
+
/** Description of the wage: for example, Regular Pay or Overtime Pay. */
|
|
9152
|
+
Name: string;
|
|
9153
|
+
/** If `IsActive` is true, this object is currently enabled for use by QuickBooks. The default value is true. */
|
|
9154
|
+
IsActive?: boolean;
|
|
9155
|
+
/** The type of pay. */
|
|
9156
|
+
WageType: WageType;
|
|
9157
|
+
/** Refers to an expense account. If an `ExpenseAccountRef` aggregate includes both `FullName` and `ListID`, `FullName` will be ignored. */
|
|
9158
|
+
ExpenseAccountRef: ExpenseAccountRef;
|
|
9159
|
+
}
|
|
9083
9160
|
export interface PayrollSummaryReportQueryRq {
|
|
9084
9161
|
/** The type of payroll report: `psrtEmployeeEarningsSummary` This report shows information similar to the payroll summary report, but in a different layout. The report has a row for each employee and a column for each payroll item. `psrtPayrollLiabilityBalances` This report lists the payroll liabilities the QuickBooks company owes to various agencies, such as the federal government, your state government, insurance plan administrators, labor unions, etc. The report covers unpaid liabilities incurred during the period of time shown in the From and To fields. If the company paid a liability incurred within the date range of the report, the report omits that liability, even if the payment occurred after the ending date of the report. `psrtPayrollSummary` This report shows the total wages, taxes withheld, deductions from net pay, additions to net pay, and employer-paid taxes and contributions for each employee on the payroll. */
|
|
9085
9162
|
PayrollSummaryReportType: PayrollSummaryReportType;
|
|
@@ -12986,6 +13063,7 @@ export interface VendorTypeRet {
|
|
|
12986
13063
|
/** The number of ancestors. For example, The customer job with `Name` = carpets and `FullName` = Jones:Building2:carpets would have a sublevel of 2. */
|
|
12987
13064
|
Sublevel: number;
|
|
12988
13065
|
}
|
|
13066
|
+
export type WageType = "Bonus" | "Commission" | "HourlyOvertime" | "HourlyRegular" | "HourlySick" | "HourlyVacation" | "SalaryRegular" | "SalarySick" | "SalaryVacation";
|
|
12989
13067
|
export interface WorkersCompCodeAdd {
|
|
12990
13068
|
/** The case-insensitive name of a list object, not including the names of its ancestors. `Name` must be unique, unless it is the `Name` of a “hierarchical” list object. List objects in different hierarchies can have duplicate names because their `FullNames` will still be unique. For example, two objects could both have the `Name` kitchen, but they could have unique `FullNames`, such as Job12:kitchen and Baker:kitchen. For built-in currencies, `Name` is the internationally accepted currency name and is not editable. */
|
|
12991
13069
|
Name: string;
|
package/package.json
CHANGED
|
@@ -1,17 +1,19 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "conductor-node",
|
|
3
|
-
"version": "11.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "11.3.1",
|
|
4
|
+
"description": "QuickBooks Desktop API for Node.js and TypeScript",
|
|
5
5
|
"keywords": [
|
|
6
|
+
"QuickBooks",
|
|
6
7
|
"QuickBooks Desktop",
|
|
7
8
|
"QuickBooks Enterprise",
|
|
8
|
-
"QuickBooks",
|
|
9
|
-
"Intuit",
|
|
10
9
|
"QuickBooks Web Connector",
|
|
11
|
-
"qbXML",
|
|
12
10
|
"QBWC",
|
|
11
|
+
"qbXML",
|
|
13
12
|
"QB Desktop",
|
|
14
|
-
"
|
|
13
|
+
"QB Enterprise",
|
|
14
|
+
"QBD",
|
|
15
|
+
"QBE",
|
|
16
|
+
"Intuit"
|
|
15
17
|
],
|
|
16
18
|
"homepage": "https://conductor.is",
|
|
17
19
|
"repository": "github:conductor-is/conductor-node",
|
package/dist/src/utils/http.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function getApiServerUrlForEnvironment(): string;
|
package/dist/src/utils/http.js
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getApiServerUrlForEnvironment = void 0;
|
|
4
|
-
function getApiServerUrlForEnvironment() {
|
|
5
|
-
// Do not check if `NODE_ENV` is "production" because that requires the
|
|
6
|
-
// developer to have set `NODE_ENV` to use `conductor` as expected.
|
|
7
|
-
if (["development", "test"].includes(process.env.NODE_ENV)) {
|
|
8
|
-
return "http://localhost:4000";
|
|
9
|
-
}
|
|
10
|
-
return "https://api.conductor.is";
|
|
11
|
-
}
|
|
12
|
-
exports.getApiServerUrlForEnvironment = getApiServerUrlForEnvironment;
|