qubesync 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (258) hide show
  1. package/CHANGELOG.md +38 -2
  2. package/README.md +188 -5
  3. package/client.js +660 -0
  4. package/index.d.ts +211 -1
  5. package/index.js +5 -1
  6. package/index.mjs +2 -0
  7. package/operations/account.d.ts +263 -0
  8. package/operations/account.js +50 -0
  9. package/operations/account_tax_line_info.d.ts +31 -0
  10. package/operations/account_tax_line_info.js +26 -0
  11. package/operations/aging_report.d.ts +100 -0
  12. package/operations/aging_report.js +26 -0
  13. package/operations/alert.d.ts +118 -0
  14. package/operations/alert.js +50 -0
  15. package/operations/ar_refund_credit_card.d.ts +201 -0
  16. package/operations/ar_refund_credit_card.js +38 -0
  17. package/operations/bar_code.d.ts +40 -0
  18. package/operations/bar_code.js +26 -0
  19. package/operations/bill.d.ts +612 -0
  20. package/operations/bill.js +50 -0
  21. package/operations/bill_payment_check.d.ts +276 -0
  22. package/operations/bill_payment_check.js +50 -0
  23. package/operations/bill_payment_credit_card.d.ts +178 -0
  24. package/operations/bill_payment_credit_card.js +38 -0
  25. package/operations/bill_to_pay.d.ts +54 -0
  26. package/operations/bill_to_pay.js +26 -0
  27. package/operations/billing_rate.d.ts +159 -0
  28. package/operations/billing_rate.js +38 -0
  29. package/operations/budget_summary_report.d.ts +71 -0
  30. package/operations/budget_summary_report.js +26 -0
  31. package/operations/build_assembly.d.ts +264 -0
  32. package/operations/build_assembly.js +50 -0
  33. package/operations/charge.d.ts +330 -0
  34. package/operations/charge.js +50 -0
  35. package/operations/check.d.ts +394 -0
  36. package/operations/check.js +50 -0
  37. package/operations/class.d.ts +170 -0
  38. package/operations/class.js +50 -0
  39. package/operations/cleared_status.d.ts +43 -0
  40. package/operations/cleared_status.js +26 -0
  41. package/operations/client.d.ts +254 -0
  42. package/operations/company.d.ts +36 -0
  43. package/operations/company.js +26 -0
  44. package/operations/company_activity.d.ts +32 -0
  45. package/operations/company_activity.js +26 -0
  46. package/operations/credit_card_charge.d.ts +280 -0
  47. package/operations/credit_card_charge.js +50 -0
  48. package/operations/credit_card_credit.d.ts +280 -0
  49. package/operations/credit_card_credit.js +50 -0
  50. package/operations/credit_memo.d.ts +642 -0
  51. package/operations/credit_memo.js +50 -0
  52. package/operations/currency.d.ts +195 -0
  53. package/operations/currency.js +50 -0
  54. package/operations/custom_detail_report.d.ts +108 -0
  55. package/operations/custom_detail_report.js +26 -0
  56. package/operations/custom_summary_report.d.ts +119 -0
  57. package/operations/custom_summary_report.js +26 -0
  58. package/operations/customer.d.ts +639 -0
  59. package/operations/customer.js +50 -0
  60. package/operations/customer_msg.d.ts +121 -0
  61. package/operations/customer_msg.js +38 -0
  62. package/operations/customer_type.d.ts +127 -0
  63. package/operations/customer_type.js +38 -0
  64. package/operations/data_event_recovery_info.d.ts +61 -0
  65. package/operations/data_event_recovery_info.js +38 -0
  66. package/operations/data_ext.d.ts +197 -0
  67. package/operations/data_ext.js +50 -0
  68. package/operations/data_ext_def.d.ts +173 -0
  69. package/operations/data_ext_def.js +62 -0
  70. package/operations/date_driven_terms.d.ts +141 -0
  71. package/operations/date_driven_terms.js +38 -0
  72. package/operations/deposit.d.ts +402 -0
  73. package/operations/deposit.js +50 -0
  74. package/operations/employee.d.ts +683 -0
  75. package/operations/employee.js +50 -0
  76. package/operations/employee_default.d.ts +133 -0
  77. package/operations/employee_default.js +38 -0
  78. package/operations/entity.d.ts +96 -0
  79. package/operations/entity.js +26 -0
  80. package/operations/estimate.d.ts +590 -0
  81. package/operations/estimate.js +50 -0
  82. package/operations/form1099_category_account_mapping.d.ts +89 -0
  83. package/operations/form1099_category_account_mapping.js +38 -0
  84. package/operations/general_detail_report.d.ts +108 -0
  85. package/operations/general_detail_report.js +26 -0
  86. package/operations/general_summary_report.d.ts +115 -0
  87. package/operations/general_summary_report.js +26 -0
  88. package/operations/host.d.ts +43 -0
  89. package/operations/host.js +26 -0
  90. package/operations/index.js +397 -0
  91. package/operations/inventory_adjustment.d.ts +389 -0
  92. package/operations/inventory_adjustment.js +50 -0
  93. package/operations/inventory_site.d.ts +247 -0
  94. package/operations/inventory_site.js +50 -0
  95. package/operations/invoice.d.ts +682 -0
  96. package/operations/invoice.js +50 -0
  97. package/operations/item.d.ts +100 -0
  98. package/operations/item.js +26 -0
  99. package/operations/item_assemblies_can_build.d.ts +41 -0
  100. package/operations/item_assemblies_can_build.js +26 -0
  101. package/operations/item_discount.d.ts +256 -0
  102. package/operations/item_discount.js +50 -0
  103. package/operations/item_fixed_asset.d.ts +382 -0
  104. package/operations/item_fixed_asset.js +50 -0
  105. package/operations/item_group.d.ts +236 -0
  106. package/operations/item_group.js +50 -0
  107. package/operations/item_inventory.d.ts +350 -0
  108. package/operations/item_inventory.js +50 -0
  109. package/operations/item_inventory_assembly.d.ts +368 -0
  110. package/operations/item_inventory_assembly.js +50 -0
  111. package/operations/item_non_inventory.d.ts +264 -0
  112. package/operations/item_non_inventory.js +50 -0
  113. package/operations/item_other_charge.d.ts +244 -0
  114. package/operations/item_other_charge.js +50 -0
  115. package/operations/item_payment.d.ts +220 -0
  116. package/operations/item_payment.js +50 -0
  117. package/operations/item_receipt.d.ts +362 -0
  118. package/operations/item_receipt.js +50 -0
  119. package/operations/item_sales_tax.d.ts +228 -0
  120. package/operations/item_sales_tax.js +50 -0
  121. package/operations/item_sales_tax_group.d.ts +192 -0
  122. package/operations/item_sales_tax_group.js +50 -0
  123. package/operations/item_service.d.ts +256 -0
  124. package/operations/item_service.js +50 -0
  125. package/operations/item_sites.d.ts +81 -0
  126. package/operations/item_sites.js +26 -0
  127. package/operations/item_subtotal.d.ts +188 -0
  128. package/operations/item_subtotal.js +50 -0
  129. package/operations/job_report.d.ts +99 -0
  130. package/operations/job_report.js +26 -0
  131. package/operations/job_type.d.ts +127 -0
  132. package/operations/job_type.js +38 -0
  133. package/operations/journal_entry.d.ts +339 -0
  134. package/operations/journal_entry.js +50 -0
  135. package/operations/lead.d.ts +291 -0
  136. package/operations/lead.js +50 -0
  137. package/operations/list.d.ts +39 -0
  138. package/operations/list.js +26 -0
  139. package/operations/list_deleted.d.ts +44 -0
  140. package/operations/list_deleted.js +26 -0
  141. package/operations/list_display.d.ts +65 -0
  142. package/operations/list_display.js +38 -0
  143. package/operations/list_merge.d.ts +58 -0
  144. package/operations/list_merge.js +26 -0
  145. package/operations/other_name.d.ts +280 -0
  146. package/operations/other_name.js +50 -0
  147. package/operations/paycheck.d.ts +82 -0
  148. package/operations/paycheck.js +26 -0
  149. package/operations/payment_method.d.ts +131 -0
  150. package/operations/payment_method.js +38 -0
  151. package/operations/payroll_detail_report.d.ts +97 -0
  152. package/operations/payroll_detail_report.js +26 -0
  153. package/operations/payroll_item.d.ts +83 -0
  154. package/operations/payroll_item.js +26 -0
  155. package/operations/payroll_item_addition.d.ts +95 -0
  156. package/operations/payroll_item_addition.js +38 -0
  157. package/operations/payroll_item_company_contribution.d.ts +105 -0
  158. package/operations/payroll_item_company_contribution.js +38 -0
  159. package/operations/payroll_item_deduction.d.ts +101 -0
  160. package/operations/payroll_item_deduction.js +38 -0
  161. package/operations/payroll_item_direct_deposit.d.ts +65 -0
  162. package/operations/payroll_item_direct_deposit.js +38 -0
  163. package/operations/payroll_item_non_wage.d.ts +92 -0
  164. package/operations/payroll_item_non_wage.js +26 -0
  165. package/operations/payroll_item_tax.d.ts +108 -0
  166. package/operations/payroll_item_tax.js +38 -0
  167. package/operations/payroll_item_wage.d.ts +169 -0
  168. package/operations/payroll_item_wage.js +50 -0
  169. package/operations/payroll_item_workers_compensation.d.ts +77 -0
  170. package/operations/payroll_item_workers_compensation.js +38 -0
  171. package/operations/payroll_last_period.d.ts +31 -0
  172. package/operations/payroll_last_period.js +26 -0
  173. package/operations/payroll_liability_adjustment.d.ts +137 -0
  174. package/operations/payroll_liability_adjustment.js +38 -0
  175. package/operations/payroll_liability_check.d.ts +82 -0
  176. package/operations/payroll_liability_check.js +26 -0
  177. package/operations/payroll_prior_payment.d.ts +126 -0
  178. package/operations/payroll_prior_payment.js +38 -0
  179. package/operations/payroll_summary_report.d.ts +107 -0
  180. package/operations/payroll_summary_report.js +26 -0
  181. package/operations/payroll_year_to_date_adjustment.d.ts +156 -0
  182. package/operations/payroll_year_to_date_adjustment.js +38 -0
  183. package/operations/preferences.d.ts +64 -0
  184. package/operations/preferences.js +38 -0
  185. package/operations/price_level.d.ts +234 -0
  186. package/operations/price_level.js +50 -0
  187. package/operations/purchase_order.d.ts +620 -0
  188. package/operations/purchase_order.js +50 -0
  189. package/operations/qb_command_exec.d.ts +49 -0
  190. package/operations/qb_command_exec.js +26 -0
  191. package/operations/receive_payment.d.ts +450 -0
  192. package/operations/receive_payment.js +50 -0
  193. package/operations/receive_payment_to_deposit.d.ts +36 -0
  194. package/operations/receive_payment_to_deposit.js +26 -0
  195. package/operations/sales_order.d.ts +612 -0
  196. package/operations/sales_order.js +50 -0
  197. package/operations/sales_receipt.d.ts +650 -0
  198. package/operations/sales_receipt.js +50 -0
  199. package/operations/sales_rep.d.ts +170 -0
  200. package/operations/sales_rep.js +50 -0
  201. package/operations/sales_tax_code.d.ts +194 -0
  202. package/operations/sales_tax_code.js +50 -0
  203. package/operations/sales_tax_payable.d.ts +42 -0
  204. package/operations/sales_tax_payable.js +26 -0
  205. package/operations/sales_tax_payment_check.d.ts +254 -0
  206. package/operations/sales_tax_payment_check.js +50 -0
  207. package/operations/sales_tax_return.d.ts +35 -0
  208. package/operations/sales_tax_return.js +26 -0
  209. package/operations/sales_tax_return_line.d.ts +36 -0
  210. package/operations/sales_tax_return_line.js +26 -0
  211. package/operations/ship_method.d.ts +121 -0
  212. package/operations/ship_method.js +38 -0
  213. package/operations/special_account.d.ts +40 -0
  214. package/operations/special_account.js +26 -0
  215. package/operations/special_item.d.ts +44 -0
  216. package/operations/special_item.js +26 -0
  217. package/operations/standard_terms.d.ts +133 -0
  218. package/operations/standard_terms.js +38 -0
  219. package/operations/template.d.ts +36 -0
  220. package/operations/template.js +26 -0
  221. package/operations/terms.d.ts +90 -0
  222. package/operations/terms.js +26 -0
  223. package/operations/time_report.d.ts +84 -0
  224. package/operations/time_report.js +26 -0
  225. package/operations/time_tracking.d.ts +214 -0
  226. package/operations/time_tracking.js +50 -0
  227. package/operations/to_do.d.ts +254 -0
  228. package/operations/to_do.js +50 -0
  229. package/operations/transaction.d.ts +244 -0
  230. package/operations/transaction.js +26 -0
  231. package/operations/transfer.d.ts +178 -0
  232. package/operations/transfer.js +50 -0
  233. package/operations/transfer_inventory.d.ts +290 -0
  234. package/operations/transfer_inventory.js +50 -0
  235. package/operations/txn.d.ts +39 -0
  236. package/operations/txn.js +26 -0
  237. package/operations/txn_deleted.d.ts +44 -0
  238. package/operations/txn_deleted.js +26 -0
  239. package/operations/txn_display.d.ts +69 -0
  240. package/operations/txn_display.js +38 -0
  241. package/operations/txn_void.d.ts +39 -0
  242. package/operations/txn_void.js +26 -0
  243. package/operations/types.d.ts +1259 -0
  244. package/operations/unit_of_measure_set.d.ts +168 -0
  245. package/operations/unit_of_measure_set.js +38 -0
  246. package/operations/vehicle.d.ts +168 -0
  247. package/operations/vehicle.js +50 -0
  248. package/operations/vehicle_mileage.d.ts +147 -0
  249. package/operations/vehicle_mileage.js +38 -0
  250. package/operations/vendor.d.ts +541 -0
  251. package/operations/vendor.js +50 -0
  252. package/operations/vendor_credit.d.ts +365 -0
  253. package/operations/vendor_credit.js +50 -0
  254. package/operations/vendor_type.d.ts +127 -0
  255. package/operations/vendor_type.js +38 -0
  256. package/operations/workers_comp_code.d.ts +199 -0
  257. package/operations/workers_comp_code.js +50 -0
  258. package/package.json +14 -4
@@ -0,0 +1,50 @@
1
+ // Generated from operations.json by scripts/generate-operations.js: don't edit.
2
+ "use strict";
3
+
4
+ /** QuickBooks purchase order operations. Types: purchase_order.d.ts. */
5
+ class PurchaseOrder {
6
+ #client;
7
+
8
+ /** @param {import("../index").Client} client */
9
+ constructor(client) {
10
+ this.#client = client;
11
+ }
12
+
13
+ /**
14
+ * Create purchase order.
15
+ * @param {string} connectionId
16
+ * @param {import("./purchase_order").PurchaseOrderCreateParams} params
17
+ * @param {import("./types").OperationOptions} options
18
+ * @returns {Promise<import("./types").QueuedRequest>}
19
+ * @see https://docs.qubesync.com/api-reference/v2/purchase-orders/create-purchase-order
20
+ */
21
+ create(connectionId, params, options) {
22
+ return this.#client.queue("purchase_order.create", connectionId, params, options);
23
+ }
24
+
25
+ /**
26
+ * List purchase orders (answers in pages, one webhook each).
27
+ * @param {string} connectionId
28
+ * @param {import("./purchase_order").PurchaseOrderQueryParams} params
29
+ * @param {import("./types").OperationOptions} options
30
+ * @returns {Promise<import("./types").QueuedRequest>}
31
+ * @see https://docs.qubesync.com/api-reference/v2/purchase-orders/list-purchase-orders
32
+ */
33
+ query(connectionId, params, options) {
34
+ return this.#client.queue("purchase_order.query", connectionId, params, options);
35
+ }
36
+
37
+ /**
38
+ * Update purchase order.
39
+ * @param {string} connectionId
40
+ * @param {import("./purchase_order").PurchaseOrderUpdateParams} params
41
+ * @param {import("./types").OperationOptions} options
42
+ * @returns {Promise<import("./types").QueuedRequest>}
43
+ * @see https://docs.qubesync.com/api-reference/v2/purchase-orders/update-purchase-order
44
+ */
45
+ update(connectionId, params, options) {
46
+ return this.#client.queue("purchase_order.update", connectionId, params, options);
47
+ }
48
+ }
49
+
50
+ module.exports = { PurchaseOrder };
@@ -0,0 +1,49 @@
1
+ // Generated from operations.json by scripts/generate-operations.js: don't edit.
2
+
3
+ import type { Client } from "../index";
4
+ import type { OperationOptions, QueuedRequest } from "./types";
5
+
6
+ /** QuickBooks qb command exec operations: `qube.qbCommandExec.<action>(connectionId, params, { webhookUrl })`. */
7
+ export declare class QbCommandExec {
8
+ constructor(client: Client);
9
+ /**
10
+ * Execute QB command exec: `POST /connections/{connection_id}/qb-command-exec`, queued for QuickBooks.
11
+ *
12
+ * The answer comes to `webhookUrl` as one webhook.
13
+ * Params go in the JSON body.
14
+ *
15
+ * Fields: `argument`, `qb_command` (required), `request_id`.
16
+ *
17
+ * Resolves to the queued request.
18
+ * @see https://docs.qubesync.com/api-reference/v2/qb-command-exec/execute-qb-command-exec
19
+ */
20
+ execute(connectionId: string, params: QbCommandExecExecuteParams, options: OperationOptions): Promise<QueuedRequest>;
21
+ }
22
+
23
+ /**
24
+ * The params of `qb_command_exec.execute`: Execute QB command exec.
25
+ */
26
+ export interface QbCommandExecExecuteParams {
27
+ argument?: Argument[];
28
+ qb_command: "Backup" | "ExportQBDT2QBO" | "ExportReport" | "IIFImport" | "MobiLinkSync" | "Restore" | "ScheduledReport";
29
+ /**
30
+ * Your own label for the request, sent to QuickBooks as its qbXML `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's webhook already carries the request's `id`.
31
+ */
32
+ request_id?: string;
33
+ }
34
+
35
+ export interface Argument {
36
+ arg_name: string;
37
+ /**
38
+ * Choose exactly one of: `arg_value`, or `list_id`, or `txn_id`.
39
+ */
40
+ arg_value?: string;
41
+ /**
42
+ * Choose exactly one of: `arg_value`, or `list_id`, or `txn_id`.
43
+ */
44
+ list_id?: string;
45
+ /**
46
+ * Choose exactly one of: `arg_value`, or `list_id`, or `txn_id`.
47
+ */
48
+ txn_id?: string;
49
+ }
@@ -0,0 +1,26 @@
1
+ // Generated from operations.json by scripts/generate-operations.js: don't edit.
2
+ "use strict";
3
+
4
+ /** QuickBooks qb command exec operations. Types: qb_command_exec.d.ts. */
5
+ class QbCommandExec {
6
+ #client;
7
+
8
+ /** @param {import("../index").Client} client */
9
+ constructor(client) {
10
+ this.#client = client;
11
+ }
12
+
13
+ /**
14
+ * Execute QB command exec.
15
+ * @param {string} connectionId
16
+ * @param {import("./qb_command_exec").QbCommandExecExecuteParams} params
17
+ * @param {import("./types").OperationOptions} options
18
+ * @returns {Promise<import("./types").QueuedRequest>}
19
+ * @see https://docs.qubesync.com/api-reference/v2/qb-command-exec/execute-qb-command-exec
20
+ */
21
+ execute(connectionId, params, options) {
22
+ return this.#client.queue("qb_command_exec.execute", connectionId, params, options);
23
+ }
24
+ }
25
+
26
+ module.exports = { QbCommandExec };
@@ -0,0 +1,450 @@
1
+ // Generated from operations.json by scripts/generate-operations.js: don't edit.
2
+
3
+ import type { Client } from "../index";
4
+ import type { OperationOptions, QueuedRequest, AccountFilter, CreditCardTxnInfo, CurrencyFilter, CurrencyRef, ModifiedDateRangeFilter, RefNumberFilter, RefNumberRangeFilter, TxnDateRangeFilter, TxnLineDetail } from "./types";
5
+
6
+ /** QuickBooks receive payment operations: `qube.receivePayment.<action>(connectionId, params, { webhookUrl })`. */
7
+ export declare class ReceivePayment {
8
+ constructor(client: Client);
9
+ /**
10
+ * Record payment: `POST /connections/{connection_id}/payments`, queued for QuickBooks.
11
+ *
12
+ * The answer comes to `webhookUrl` as one webhook.
13
+ * Params go in the JSON body.
14
+ *
15
+ * Fields: `applied_to_txn_add`, `ar_account_ref`, `credit_card_txn_info`, `customer_ref` (required), `def_macro`, `deposit_to_account_ref`, `exchange_rate`, `external_guid`, `include_ret_element`, `is_auto_apply`, `memo`, `payment_method_ref`, `ref_number`, `request_id`, `total_amount`, `txn_date`.
16
+ *
17
+ * Give exactly one of: `is_auto_apply`, or `applied_to_txn_add`.
18
+ *
19
+ * Resolves to the queued request.
20
+ * @see https://docs.qubesync.com/api-reference/v2/payments/record-payment
21
+ */
22
+ create(connectionId: string, params: ReceivePaymentCreateParams, options: OperationOptions): Promise<QueuedRequest>;
23
+ /**
24
+ * List receive payments: `GET /connections/{connection_id}/receive-payments`, queued for QuickBooks.
25
+ *
26
+ * QuickBooks answers in pages: each page comes to `webhookUrl` as its own webhook.
27
+ * Params go in the query string.
28
+ *
29
+ * Fields: `account_filter`, `currency_filter`, `entity_filter`, `include_line_items`, `include_ret_element`, `iterator`, `max_returned`, `meta_data`, `modified_date_range_filter`, `owner_id`, `ref_number`, `ref_number_case_sensitive`, `ref_number_filter`, `ref_number_range_filter`, `request_id`, `txn_date_range_filter`, `txn_id`.
30
+ *
31
+ * Resolves to the queued request.
32
+ * @see https://docs.qubesync.com/api-reference/v2/receive-payments/list-receive-payments
33
+ */
34
+ query(connectionId: string, params: ReceivePaymentQueryParams | undefined, options: OperationOptions): Promise<QueuedRequest>;
35
+ /**
36
+ * Update receive payment: `PUT /connections/{connection_id}/receive-payments`, queued for QuickBooks.
37
+ *
38
+ * The answer comes to `webhookUrl` as one webhook.
39
+ * Params go in the JSON body.
40
+ *
41
+ * Fields: `applied_to_txn_mod`, `ar_account_ref`, `credit_card_txn_info_mod`, `customer_ref`, `deposit_to_account_ref`, `edit_sequence` (required), `exchange_rate`, `include_ret_element`, `memo`, `payment_method_ref`, `ref_number`, `request_id`, `total_amount`, `txn_date`, `txn_id` (required).
42
+ *
43
+ * Resolves to the queued request.
44
+ * @see https://docs.qubesync.com/api-reference/v2/receive-payments/update-receive-payment
45
+ */
46
+ update(connectionId: string, params: ReceivePaymentUpdateParams, options: OperationOptions): Promise<QueuedRequest>;
47
+ }
48
+
49
+ /**
50
+ * The params of `receive_payment.create`: Record payment.
51
+ *
52
+ * Give exactly one of: `is_auto_apply`, or `applied_to_txn_add`.
53
+ */
54
+ export interface ReceivePaymentCreateParams {
55
+ applied_to_txn_add?: AppliedToTxnAddReceivePayment[];
56
+ /**
57
+ * `ar_account_ref` points to an Accounts Receivable account. If both `full_name` and `list_id` are provided, `full_name` is ignored.
58
+ */
59
+ ar_account_ref?: CurrencyRef;
60
+ /**
61
+ * Contains data from the credit card transaction used in the payment. This data originates from a previous qbmsXML credit card transaction. The data following the element `credit_card_txn_input_info`” data is the data from the original qbmsXML request. The “`credit_card_txn_result_info`” is the data from the original qbmsXML response.
62
+ */
63
+ credit_card_txn_info?: CreditCardTxnInfo;
64
+ /**
65
+ * `customer_ref` identifies a customer or customer job. If both `full_name` and `list_id` are provided, `full_name` is ignored. In SalesReceipt and ReceivePayment, it identifies who receives credit. In TimeTracking, it identifies who the time can be billed to and is required in TimeTrackingAdd when IsBillable is true.
66
+ */
67
+ customer_ref: CurrencyRef;
68
+ /**
69
+ * `def_macro` lets you assign a reusable name to a returned `txn_id` or `txn_line_id` so later requests can reference it with `useMacro`. This feature requires SDK 2.0+.
70
+ */
71
+ def_macro?: string;
72
+ /**
73
+ * Refers to the account where these funds will be (or have been) deposited. In a ReceivePaymentAdd request, the default is Undeposited Funds if this isn’t included in the request. In a request, if a `deposit_to_account_ref` aggregate includes both `full_name` and `list_id`, `full_name` will be ignored.
74
+ */
75
+ deposit_to_account_ref?: CurrencyRef;
76
+ /**
77
+ * `exchange_rate` is the rate from this currency to the company’s home currency at AsOfDate. You can supply a rate when adding transactions, but QuickBooks does not provide rates through the SDK. If your home currency is USD and internet access is available, rates can be downloaded in the QuickBooks UI via Lists > Currency > Activities > Download Latest Exchange Rates.
78
+ */
79
+ exchange_rate?: number;
80
+ /**
81
+ * Allows for the attachment of a user defined GUID value.
82
+ */
83
+ external_guid?: string;
84
+ include_ret_element?: Array<"ARAccountRef" | "AppliedToTxnRet" | "CreditCardTxnInfo" | "CurrencyRef" | "CustomerRef" | "DataExtRet" | "DepositToAccountRef" | "EditSequence" | "ExchangeRate" | "ExternalGUID" | "ListID" | "Memo" | "OwnerID" | "PaymentMethodRef" | "RefNumber" | "TimeCreated" | "TimeModified" | "TotalAmount" | "TotalAmountInHomeCurrency" | "TxnDate" | "TxnID" | "TxnNumber" | "UnusedCredits" | "UnusedPayment">;
85
+ /**
86
+ * If `is_auto_apply` is true, QuickBooks applies `total_amount` to any outstanding transaction that exactly matches `total_amount`. If no exact match is found, the payment is applied to the customer job’s outstanding transactions, beginning with the oldest one. If `is_auto_apply` is false, QuickBooks receives the payment but doesn’t apply it to any outstanding transaction.
87
+ */
88
+ is_auto_apply?: boolean;
89
+ /**
90
+ * The beginning of this memo will appear in reports that show details of this receive payment.
91
+ */
92
+ memo?: string;
93
+ /**
94
+ * `payment_method_ref` identifies how a payment is made (for example, cash, check, or card type). If both `full_name` and `list_id` are provided, `full_name` is ignored.
95
+ */
96
+ payment_method_ref?: CurrencyRef;
97
+ /**
98
+ * `ref_number` is a user-managed transaction reference (for example, a check number). It can be edited and is not guaranteed to be globally unique. Some transaction types auto-populate `ref_number` when omitted, based on QuickBooks preferences and numbering state.
99
+ */
100
+ ref_number?: string;
101
+ /**
102
+ * Your own label for the request, sent to QuickBooks as its qbXML `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's webhook already carries the request's `id`.
103
+ */
104
+ request_id?: string;
105
+ /**
106
+ * Total amount of money received. For ReceivePaymentAdd, the sum of the `payment_amount` amounts (in the `applied_to_txn_add` aggregates that are included) can’t be greater than the `total_amount`, or you will receive an error.
107
+ */
108
+ total_amount?: number;
109
+ /**
110
+ * The date of the transaction. In some cases, if you leave `txn_date` out of an -Add message, QuickBooks will prefill `txn_date` with the date of the last-saved transaction of the same type.
111
+ *
112
+ * Format: date.
113
+ */
114
+ txn_date?: string;
115
+ }
116
+
117
+ /**
118
+ * The params of `receive_payment.query`: List receive payments.
119
+ */
120
+ export interface ReceivePaymentQueryParams {
121
+ /**
122
+ * Filters according to the account name or `list_id`. If the “Use account numbers” preference is enabled in the QuickBooks company file, you can specify an account number (instead of an account name) for `full_name` and get the account you’re looking for. But if numbers have been used as account names, confusion could arise.
123
+ *
124
+ * Choose at most one of: `txn_id`, or `ref_number`, or `ref_number_case_sensitive`, or the set (`account_filter`, `currency_filter`, `entity_filter`, `max_returned`, `modified_date_range_filter`, `ref_number_filter`, `ref_number_range_filter`, `txn_date_range_filter`). Members of a set combine with each other, not with the other choices.
125
+ */
126
+ account_filter?: AccountFilter;
127
+ /**
128
+ * Filters by the specified currency.
129
+ *
130
+ * Choose at most one of: `txn_id`, or `ref_number`, or `ref_number_case_sensitive`, or the set (`account_filter`, `currency_filter`, `entity_filter`, `max_returned`, `modified_date_range_filter`, `ref_number_filter`, `ref_number_range_filter`, `txn_date_range_filter`). Members of a set combine with each other, not with the other choices.
131
+ */
132
+ currency_filter?: CurrencyFilter;
133
+ /**
134
+ * An entity refers to a person on the QuickBooks Customer list, Vendor list, Employee list, or Other Names list. You can use an EntityQuery request to get information about all the entities that are set up in the QuickBooks file. In an ARRefundCreditCard query, this must be a customer/customer job.
135
+ *
136
+ * Choose at most one of: `txn_id`, or `ref_number`, or `ref_number_case_sensitive`, or the set (`account_filter`, `currency_filter`, `entity_filter`, `max_returned`, `modified_date_range_filter`, `ref_number_filter`, `ref_number_range_filter`, `txn_date_range_filter`). Members of a set combine with each other, not with the other choices.
137
+ */
138
+ entity_filter?: AccountFilter;
139
+ /**
140
+ * This filter allows you to omit line items from a query response to get a smaller result. The default value is false, so line items are omitted by default. Set `include_line_items` to true to include line items in the response if you don’t mind getting a larger result.
141
+ */
142
+ include_line_items?: boolean;
143
+ include_ret_element?: Array<"ARAccountRef" | "AppliedToTxnRet" | "CreditCardTxnInfo" | "CurrencyRef" | "CustomerRef" | "DataExtRet" | "DepositToAccountRef" | "EditSequence" | "ExchangeRate" | "ExternalGUID" | "Memo" | "PaymentMethodRef" | "RefNumber" | "TimeCreated" | "TimeModified" | "TotalAmount" | "TotalAmountInHomeCurrency" | "TxnDate" | "TxnID" | "TxnNumber" | "UnusedCredits" | "UnusedPayment">;
144
+ /**
145
+ * Page through every match: QuBe Sync asks QuickBooks for each page in turn and sends each to your `webhook_url` as it arrives, all with the same `id`. On by default, with pages of 100 records (25 with `include_line_items`); send `iterator=true` with `max_returned` for another size. Off when you send `iterator=false` (every match in one answer) or `max_returned` alone (at most that many, in one answer). It pages a filtered query only: with `ref_number`, `ref_number_case_sensitive` or `txn_id` every match comes back in one answer, so leave `iterator` out.
146
+ */
147
+ iterator?: boolean;
148
+ /**
149
+ * Limits the number of objects that a query returns. (To get a count of how many objects could possibly be returned, use the `meta_data` query attribute.) If you include a `max_returned` value, it must be at least 1.
150
+ *
151
+ * The page size, with `iterator=true`. Sent without `iterator`, or with `iterator=false`, it's a cap instead: at most this many records come back, in one answer, and QuickBooks doesn't say whether more matched.
152
+ *
153
+ * Choose at most one of: `txn_id`, or `ref_number`, or `ref_number_case_sensitive`, or the set (`account_filter`, `currency_filter`, `entity_filter`, `max_returned`, `modified_date_range_filter`, `ref_number_filter`, `ref_number_range_filter`, `txn_date_range_filter`). Members of a set combine with each other, not with the other choices.
154
+ *
155
+ * Minimum 1.
156
+ */
157
+ max_returned?: number;
158
+ /**
159
+ * Use the `meta_data` attribute to control whether query responses include counts. Options are NoMetaData (default), MetaDataOnly (count only), and MetaDataAndResponseData (count plus objects). Counts are approximate and may vary slightly if records are created or deleted during processing.
160
+ */
161
+ meta_data?: "MetaDataAndResponseData" | "MetaDataOnly" | "NoMetaData";
162
+ /**
163
+ * Filters according to the dates when transactions were last modified. The `modified_date_range_filter` aggregate isn’t required to contain any elements, but if it is empty, we recommend that you leave it out altogether. Note that the time portion of the `from_modified_date` and `to_modified_date` fields wasn’t supported in qbXML version 1.0 or 1.1.
164
+ *
165
+ * Choose at most one of: `txn_id`, or `ref_number`, or `ref_number_case_sensitive`, or the set (`account_filter`, `currency_filter`, `entity_filter`, `max_returned`, `modified_date_range_filter`, `ref_number_filter`, `ref_number_range_filter`, `txn_date_range_filter`). Members of a set combine with each other, not with the other choices.
166
+ */
167
+ modified_date_range_filter?: ModifiedDateRangeFilter;
168
+ /**
169
+ * `owner_id` identifies who owns the data extension. Use 0 for QuickBooks custom fields that appear in the UI, or use a GUID for private extensions owned by an app. Keep private GUIDs confidential unless you intentionally share extensions across apps. If you do share them, both apps must use the same `owner_id` and `data_ext_name`, because that pair uniquely identifies the extension.
170
+ */
171
+ owner_id?: string[];
172
+ /**
173
+ * `ref_number` is a user-managed transaction reference (for example, a check number). It can be edited and is not guaranteed to be globally unique. Some transaction types auto-populate `ref_number` when omitted, based on QuickBooks preferences and numbering state.
174
+ *
175
+ * Choose at most one of: `txn_id`, or `ref_number`, or `ref_number_case_sensitive`, or the set (`account_filter`, `currency_filter`, `entity_filter`, `max_returned`, `modified_date_range_filter`, `ref_number_filter`, `ref_number_range_filter`, `txn_date_range_filter`). Members of a set combine with each other, not with the other choices.
176
+ */
177
+ ref_number?: string[];
178
+ /**
179
+ * Choose at most one of: `txn_id`, or `ref_number`, or `ref_number_case_sensitive`, or the set (`account_filter`, `currency_filter`, `entity_filter`, `max_returned`, `modified_date_range_filter`, `ref_number_filter`, `ref_number_range_filter`, `txn_date_range_filter`). Members of a set combine with each other, not with the other choices.
180
+ */
181
+ ref_number_case_sensitive?: string[];
182
+ /**
183
+ * Filters by `ref_number` range. Numeric-only bounds are compared numerically; otherwise comparison is lexicographic.
184
+ *
185
+ * Choose at most one of: `txn_id`, or `ref_number`, or `ref_number_case_sensitive`, or the set (`account_filter`, `currency_filter`, `entity_filter`, `max_returned`, `modified_date_range_filter`, `ref_number_filter`, `ref_number_range_filter`, `txn_date_range_filter`). Members of a set combine with each other, not with the other choices.
186
+ */
187
+ ref_number_filter?: RefNumberFilter;
188
+ /**
189
+ * Filters by `ref_number` range. Numeric-only bounds are compared numerically; otherwise comparison is lexicographic.
190
+ *
191
+ * Choose at most one of: `txn_id`, or `ref_number`, or `ref_number_case_sensitive`, or the set (`account_filter`, `currency_filter`, `entity_filter`, `max_returned`, `modified_date_range_filter`, `ref_number_filter`, `ref_number_range_filter`, `txn_date_range_filter`). Members of a set combine with each other, not with the other choices.
192
+ */
193
+ ref_number_range_filter?: RefNumberRangeFilter;
194
+ /**
195
+ * Your own label for the request, sent to QuickBooks as its qbXML `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's webhook already carries the request's `id`.
196
+ */
197
+ request_id?: string;
198
+ /**
199
+ * Filters according to the original transaction dates.
200
+ *
201
+ * Choose at most one of: `txn_id`, or `ref_number`, or `ref_number_case_sensitive`, or the set (`account_filter`, `currency_filter`, `entity_filter`, `max_returned`, `modified_date_range_filter`, `ref_number_filter`, `ref_number_range_filter`, `txn_date_range_filter`). Members of a set combine with each other, not with the other choices.
202
+ */
203
+ txn_date_range_filter?: TxnDateRangeFilter;
204
+ /**
205
+ * `txn_id` is the unique QuickBooks identifier for a transaction. Use it to reference that transaction in later requests. `txn_id` values are transaction-specific and should not be reused across unrelated transaction types.
206
+ *
207
+ * Choose at most one of: `txn_id`, or `ref_number`, or `ref_number_case_sensitive`, or the set (`account_filter`, `currency_filter`, `entity_filter`, `max_returned`, `modified_date_range_filter`, `ref_number_filter`, `ref_number_range_filter`, `txn_date_range_filter`). Members of a set combine with each other, not with the other choices.
208
+ */
209
+ txn_id?: string[];
210
+ }
211
+
212
+ /**
213
+ * The params of `receive_payment.update`: Update receive payment.
214
+ */
215
+ export interface ReceivePaymentUpdateParams {
216
+ applied_to_txn_mod?: AppliedToTxnModReceivePayment[];
217
+ /**
218
+ * `ar_account_ref` points to an Accounts Receivable account. If both `full_name` and `list_id` are provided, `full_name` is ignored.
219
+ */
220
+ ar_account_ref?: CurrencyRef;
221
+ /**
222
+ * Contains data from the credit card transaction used in the payment. This data originates from a previous qbmsXML credit card transaction. The data following the element `credit_card_txn_input_info`” data is the data from the original qbmsXML request. The “`credit_card_txn_result_info`” is the data from the original qbmsXML response.
223
+ */
224
+ credit_card_txn_info_mod?: CreditCardTxnInfoMod;
225
+ /**
226
+ * `customer_ref` identifies a customer or customer job. If both `full_name` and `list_id` are provided, `full_name` is ignored. In SalesReceipt and ReceivePayment, it identifies who receives credit. In TimeTracking, it identifies who the time can be billed to and is required in TimeTrackingAdd when IsBillable is true.
227
+ */
228
+ customer_ref?: CurrencyRef;
229
+ /**
230
+ * Refers to the account where these funds will be (or have been) deposited. In a ReceivePaymentAdd request, the default is Undeposited Funds if this isn’t included in the request. In a request, if a `deposit_to_account_ref` aggregate includes both `full_name` and `list_id`, `full_name` will be ignored.
231
+ */
232
+ deposit_to_account_ref?: CurrencyRef;
233
+ /**
234
+ * `edit_sequence` is a server-generated revision token. It changes each time the object is updated. To modify an existing object, you must send the current `edit_sequence`. If your value is stale, the update is rejected to prevent overwriting newer changes.
235
+ */
236
+ edit_sequence: string;
237
+ /**
238
+ * `exchange_rate` is the rate from this currency to the company’s home currency at AsOfDate. You can supply a rate when adding transactions, but QuickBooks does not provide rates through the SDK. If your home currency is USD and internet access is available, rates can be downloaded in the QuickBooks UI via Lists > Currency > Activities > Download Latest Exchange Rates.
239
+ */
240
+ exchange_rate?: number;
241
+ include_ret_element?: Array<"ARAccountRef" | "AppliedToTxnRet" | "CreditCardTxnInfo" | "CurrencyRef" | "CustomerRef" | "DataExtRet" | "DepositToAccountRef" | "EditSequence" | "ExchangeRate" | "ExternalGUID" | "ListID" | "Memo" | "OwnerID" | "PaymentMethodRef" | "RefNumber" | "TimeCreated" | "TimeModified" | "TotalAmount" | "TotalAmountInHomeCurrency" | "TxnDate" | "TxnID" | "TxnNumber" | "UnusedCredits" | "UnusedPayment">;
242
+ /**
243
+ * The beginning of this memo will appear in reports that show details of this receive payment.
244
+ */
245
+ memo?: string;
246
+ /**
247
+ * `payment_method_ref` identifies how a payment is made (for example, cash, check, or card type). If both `full_name` and `list_id` are provided, `full_name` is ignored.
248
+ */
249
+ payment_method_ref?: CurrencyRef;
250
+ /**
251
+ * `ref_number` is a user-managed transaction reference (for example, a check number). It can be edited and is not guaranteed to be globally unique. Some transaction types auto-populate `ref_number` when omitted, based on QuickBooks preferences and numbering state.
252
+ */
253
+ ref_number?: string;
254
+ /**
255
+ * Your own label for the request, sent to QuickBooks as its qbXML `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's webhook already carries the request's `id`.
256
+ */
257
+ request_id?: string;
258
+ /**
259
+ * Total amount of money received. For ReceivePaymentAdd, the sum of the `payment_amount` amounts (in the AppliedToTxnAdd aggregates that are included) can’t be greater than the `total_amount`, or you will receive an error.
260
+ */
261
+ total_amount?: number;
262
+ /**
263
+ * The date of the transaction. In some cases, if you leave `txn_date` out of an -Add message, QuickBooks will prefill `txn_date` with the date of the last-saved transaction of the same type.
264
+ *
265
+ * Format: date.
266
+ */
267
+ txn_date?: string;
268
+ /**
269
+ * `txn_id` is the unique QuickBooks identifier for a transaction. Use it to reference that transaction in later requests. `txn_id` values are transaction-specific and should not be reused across unrelated transaction types.
270
+ */
271
+ txn_id: string;
272
+ }
273
+
274
+ export interface AppliedToTxnAddReceivePayment {
275
+ /**
276
+ * Refers to the account where this discount is tracked. In a request, if a `discount_account_ref` aggregate includes both `full_name` and `list_id`, `full_name` will be ignored.
277
+ */
278
+ discount_account_ref?: CurrencyRef;
279
+ /**
280
+ * Reduces the receivable amount.
281
+ */
282
+ discount_amount?: number;
283
+ /**
284
+ * Class reference used in the Discount object.
285
+ */
286
+ discount_class_ref?: CurrencyRef;
287
+ /**
288
+ * Represents the amount assigned to a particular receivable. The sum of all `payment_amount` elements in any given receive payment transaction must not be greater than `total_amount`.
289
+ */
290
+ payment_amount?: number;
291
+ set_credit?: SetCreditReceivePayment[];
292
+ /**
293
+ * `txn_id` is the unique QuickBooks identifier for a transaction. Use it to reference that transaction in later requests. `txn_id` values are transaction-specific and should not be reused across unrelated transaction types.
294
+ */
295
+ txn_id: string;
296
+ txn_line_detail?: TxnLineDetail[];
297
+ }
298
+
299
+ export interface AppliedToTxnModReceivePayment {
300
+ /**
301
+ * Refers to the account where this discount is tracked. In a request, if a `discount_account_ref` aggregate includes both `full_name` and `list_id`, `full_name` will be ignored.
302
+ */
303
+ discount_account_ref?: CurrencyRef;
304
+ /**
305
+ * Reduces the receivable amount.
306
+ */
307
+ discount_amount?: number;
308
+ /**
309
+ * Class reference used in the Discount object.
310
+ */
311
+ discount_class_ref?: CurrencyRef;
312
+ /**
313
+ * Represents the amount assigned to a particular receivable. The sum of all `payment_amount` elements in any given receive payment transaction must not be greater than `total_amount`.
314
+ */
315
+ payment_amount?: number;
316
+ set_credit?: SetCreditReceivePayment[];
317
+ /**
318
+ * `txn_id` is the unique QuickBooks identifier for a transaction. Use it to reference that transaction in later requests. `txn_id` values are transaction-specific and should not be reused across unrelated transaction types.
319
+ */
320
+ txn_id: string;
321
+ }
322
+
323
+ export interface CreditCardTxnInfoMod {
324
+ /**
325
+ * This contains data originally supplied in the QBMS transaction request. This information block shouldn’t be used in CreditMemo requests for QuickBooks 2007 and new versions. Instead, use the ARRefundCreditCard request.
326
+ */
327
+ credit_card_txn_input_info_mod?: CreditCardTxnInputInfoMod;
328
+ /**
329
+ * This contains data returned in the QBMS transaction response. This information block shouldn’t be used in CreditMemo requests for QuickBooks 2007 and new versions. Instead, use the ARRefundCreditCard request.
330
+ */
331
+ credit_card_txn_result_info_mod?: CreditCardTxnResultInfoMod;
332
+ }
333
+
334
+ export interface CreditCardTxnInputInfoMod {
335
+ /**
336
+ * This optional field is used only for Visa and Master Card commercial cards. There are three types of these cards: purchase, corporate, and business. Normally, special lower transaction fee rates apply when these cards are used and this field is filled out. If this field is left blank, then the usual (and higher) discount rate applies.
337
+ */
338
+ commercial_card_code?: string;
339
+ /**
340
+ * The address associated with this credit card.
341
+ */
342
+ credit_card_address?: string;
343
+ /**
344
+ * Credit-card number for this customer or this payment. Beginning with qbXML spec 6.0 and QuickBooks 2007, you must mask the credit card number with lower case “x” and no dashes. For example, xxxxxxxxxxxx1234.
345
+ */
346
+ credit_card_number?: string;
347
+ /**
348
+ * The postal code associated with the address for this credit card.
349
+ */
350
+ credit_card_postal_code?: string;
351
+ /**
352
+ * Indicates the QBMS transaction from which the current transaction data originated, for example, Charge, Authorization, Capture, Refund, VoiceAuthorization, or Void.
353
+ */
354
+ credit_card_txn_type?: "Authorization" | "Capture" | "Charge" | "Refund" | "VoiceAuthorization";
355
+ /**
356
+ * The month when the credit card expires.
357
+ *
358
+ * Minimum 1. Maximum 12.
359
+ */
360
+ expiration_month?: number;
361
+ /**
362
+ * The year when the credit card expires.
363
+ */
364
+ expiration_year?: number;
365
+ /**
366
+ * The name on the customer’s credit card.
367
+ */
368
+ name_on_card?: string;
369
+ /**
370
+ * Indicates whether this transaction came from a card swipe (tmCardPresent) or not (tmCardNotPresent).
371
+ */
372
+ transaction_mode?: "CardNotPresent" | "CardPresent";
373
+ }
374
+
375
+ export interface CreditCardTxnResultInfoMod {
376
+ /**
377
+ * The authorization code is returned from the credit card processor to indicate that the charge will be paid by the card issuer. In a voice authorization request (CustomerCreditCardVoiceAuthRq), the authorization code is supplied by the card issuer over the telephone.
378
+ */
379
+ authorization_code?: string;
380
+ /**
381
+ * This field contains the value avssPass if the street address supplied in the transaction request matches the customer’s address on file at the card issuer. It contains the value avssFail if there isn’t a match, or avssNotAvailable if the card issuer doesn’t support AVS. Note: This field was required in qbXML 4.1, but is optional in qbXML 5.0 and later.
382
+ */
383
+ avs_street?: "Fail" | "NotAvailable" | "Pass";
384
+ /**
385
+ * This field contains the value avszPass if the customer postal ZIP code supplied in the transaction request matches the customer’s postal code recognized at the card issuer. It contains the value avszFail if there isn’t a match, or avszNotAvailable if the card issuer doesn’t support AVS. Note: This field was required in qbXML 4.1, but is optional in qbXML 5.0 and later.
386
+ */
387
+ avs_zip?: "Fail" | "NotAvailable" | "Pass";
388
+ /**
389
+ * This field contains the value Pass if the card security code supplied in the transaction request matches the card security code recognized for that credit card number at the card issuer. It contains the value Fail if there isn’t a match.
390
+ */
391
+ card_security_code_match?: "Fail" | "NotAvailable" | "Pass";
392
+ /**
393
+ * This value is returned from QBMS transactions for future use by the QuickBooks Reconciliation feature.
394
+ */
395
+ client_trans_id?: string;
396
+ /**
397
+ * This transaction ID is returned from the credit card processor. You should save this value for any possible QBMS SDK transaction requests that need it, for example, CustomerCreditCardTxnVoidRq, or CustomerCreditCardCaptureRq.
398
+ */
399
+ credit_card_trans_id?: string;
400
+ /**
401
+ * This is the QBMS account number of the merchant who is running the transaction using the customer’s credit card. It is returned from the transaction request and should be stored for subsequent transactions, such as using it in the QB SDK SalesReceiptAdd, ReceivePaymentAdd, ARRefundCreditCard requests to save the transaction data in QuickBooks.
402
+ */
403
+ merchant_account_number?: string;
404
+ /**
405
+ * Internal code needed for the QuickBooks reconciliation feature, if integrating with QuickBooks. This value is returned in the QBMS response to a QBMS transaction request, and must be subsequently supplied by your application in the QB SDK ReceivePaymentAdd or SalesReceiptAdd request.
406
+ */
407
+ payment_grouping_code?: number;
408
+ /**
409
+ * Indicates payment processing status as known by QuickBooks/QBMS integration state. `psCompleted` indicates confirmed success; `psUnknown` indicates status could not be definitively confirmed.
410
+ */
411
+ payment_status?: "Completed" | "Unknown";
412
+ /**
413
+ * This value is returned by QBMS from the transaction request, and is used internally by the QuickBooks/QBMS Recon (reconcile) feature. You should save this value without modification and include it in the QB SDK SalesReceiptAdd or ReceivePaymentAdd requests if you want to save the transaction data in QuickBooks.
414
+ */
415
+ recon_batch_id?: string;
416
+ /**
417
+ * This contains the status code returned in the original QBMS transaction response.
418
+ */
419
+ result_code?: number;
420
+ /**
421
+ * This contains the status message returned in the original QBMS transaction response.
422
+ */
423
+ result_message?: string;
424
+ /**
425
+ * This value is used to support the credit card transaction Reconcile feature within QuickBooks.
426
+ */
427
+ txn_authorization_stamp?: number;
428
+ /**
429
+ * Timestamp indicating the time in which the card processor authorized the transaction.
430
+ *
431
+ * Format: date-time.
432
+ */
433
+ txn_authorization_time?: string;
434
+ }
435
+
436
+ export interface SetCreditReceivePayment {
437
+ /**
438
+ * Amount of a credit that is applied to a customer’s invoice, or amount of a payment that is applied to a particular bill or vendor credit.
439
+ */
440
+ applied_amount: number;
441
+ /**
442
+ * The ID of the credit memo that you are applying to this invoice or bill.
443
+ */
444
+ credit_txn_id: string;
445
+ /**
446
+ * Option to override credit.
447
+ */
448
+ override?: boolean;
449
+ txn_line_id?: string;
450
+ }
@@ -0,0 +1,50 @@
1
+ // Generated from operations.json by scripts/generate-operations.js: don't edit.
2
+ "use strict";
3
+
4
+ /** QuickBooks receive payment operations. Types: receive_payment.d.ts. */
5
+ class ReceivePayment {
6
+ #client;
7
+
8
+ /** @param {import("../index").Client} client */
9
+ constructor(client) {
10
+ this.#client = client;
11
+ }
12
+
13
+ /**
14
+ * Record payment.
15
+ * @param {string} connectionId
16
+ * @param {import("./receive_payment").ReceivePaymentCreateParams} params
17
+ * @param {import("./types").OperationOptions} options
18
+ * @returns {Promise<import("./types").QueuedRequest>}
19
+ * @see https://docs.qubesync.com/api-reference/v2/payments/record-payment
20
+ */
21
+ create(connectionId, params, options) {
22
+ return this.#client.queue("receive_payment.create", connectionId, params, options);
23
+ }
24
+
25
+ /**
26
+ * List receive payments (answers in pages, one webhook each).
27
+ * @param {string} connectionId
28
+ * @param {import("./receive_payment").ReceivePaymentQueryParams} params
29
+ * @param {import("./types").OperationOptions} options
30
+ * @returns {Promise<import("./types").QueuedRequest>}
31
+ * @see https://docs.qubesync.com/api-reference/v2/receive-payments/list-receive-payments
32
+ */
33
+ query(connectionId, params, options) {
34
+ return this.#client.queue("receive_payment.query", connectionId, params, options);
35
+ }
36
+
37
+ /**
38
+ * Update receive payment.
39
+ * @param {string} connectionId
40
+ * @param {import("./receive_payment").ReceivePaymentUpdateParams} params
41
+ * @param {import("./types").OperationOptions} options
42
+ * @returns {Promise<import("./types").QueuedRequest>}
43
+ * @see https://docs.qubesync.com/api-reference/v2/receive-payments/update-receive-payment
44
+ */
45
+ update(connectionId, params, options) {
46
+ return this.#client.queue("receive_payment.update", connectionId, params, options);
47
+ }
48
+ }
49
+
50
+ module.exports = { ReceivePayment };