qube_sync 0.3.0 → 0.4.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 (260) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +48 -0
  3. data/README.md +235 -75
  4. data/Rakefile +12 -0
  5. data/lib/qube_sync/client.rb +579 -0
  6. data/lib/qube_sync/operations/account.rb +337 -0
  7. data/lib/qube_sync/operations/account_tax_line_info.rb +30 -0
  8. data/lib/qube_sync/operations/aging_report.rb +160 -0
  9. data/lib/qube_sync/operations/alert.rb +91 -0
  10. data/lib/qube_sync/operations/ar_refund_credit_card.rb +399 -0
  11. data/lib/qube_sync/operations/bar_code.rb +37 -0
  12. data/lib/qube_sync/operations/bill.rb +1073 -0
  13. data/lib/qube_sync/operations/bill_payment_check.rb +413 -0
  14. data/lib/qube_sync/operations/bill_payment_credit_card.rb +315 -0
  15. data/lib/qube_sync/operations/bill_to_pay.rb +66 -0
  16. data/lib/qube_sync/operations/billing_rate.rb +172 -0
  17. data/lib/qube_sync/operations/budget_summary_report.rb +80 -0
  18. data/lib/qube_sync/operations/build_assembly.rb +318 -0
  19. data/lib/qube_sync/operations/charge.rb +452 -0
  20. data/lib/qube_sync/operations/check.rb +1055 -0
  21. data/lib/qube_sync/operations/class.rb +176 -0
  22. data/lib/qube_sync/operations/cleared_status.rb +39 -0
  23. data/lib/qube_sync/operations/company.rb +39 -0
  24. data/lib/qube_sync/operations/company_activity.rb +31 -0
  25. data/lib/qube_sync/operations/credit_card_charge.rb +1000 -0
  26. data/lib/qube_sync/operations/credit_card_credit.rb +1000 -0
  27. data/lib/qube_sync/operations/credit_memo.rb +1243 -0
  28. data/lib/qube_sync/operations/currency.rb +195 -0
  29. data/lib/qube_sync/operations/custom_detail_report.rb +176 -0
  30. data/lib/qube_sync/operations/custom_summary_report.rb +180 -0
  31. data/lib/qube_sync/operations/customer.rb +744 -0
  32. data/lib/qube_sync/operations/customer_msg.rb +117 -0
  33. data/lib/qube_sync/operations/customer_type.rb +133 -0
  34. data/lib/qube_sync/operations/data_event_recovery_info.rb +54 -0
  35. data/lib/qube_sync/operations/data_ext.rb +201 -0
  36. data/lib/qube_sync/operations/data_ext_def.rb +179 -0
  37. data/lib/qube_sync/operations/date_driven_terms.rb +131 -0
  38. data/lib/qube_sync/operations/deposit.rb +555 -0
  39. data/lib/qube_sync/operations/employee.rb +577 -0
  40. data/lib/qube_sync/operations/employee_default.rb +100 -0
  41. data/lib/qube_sync/operations/entity.rb +118 -0
  42. data/lib/qube_sync/operations/estimate.rb +1055 -0
  43. data/lib/qube_sync/operations/form1099_category_account_mapping.rb +90 -0
  44. data/lib/qube_sync/operations/general_detail_report.rb +185 -0
  45. data/lib/qube_sync/operations/general_summary_report.rb +180 -0
  46. data/lib/qube_sync/operations/host.rb +36 -0
  47. data/lib/qube_sync/operations/inventory_adjustment.rb +482 -0
  48. data/lib/qube_sync/operations/inventory_site.rb +214 -0
  49. data/lib/qube_sync/operations/invoice.rb +1208 -0
  50. data/lib/qube_sync/operations/item.rb +115 -0
  51. data/lib/qube_sync/operations/item_assemblies_can_build.rb +44 -0
  52. data/lib/qube_sync/operations/item_discount.rb +319 -0
  53. data/lib/qube_sync/operations/item_fixed_asset.rb +317 -0
  54. data/lib/qube_sync/operations/item_group.rb +253 -0
  55. data/lib/qube_sync/operations/item_inventory.rb +446 -0
  56. data/lib/qube_sync/operations/item_inventory_assembly.rb +483 -0
  57. data/lib/qube_sync/operations/item_non_inventory.rb +461 -0
  58. data/lib/qube_sync/operations/item_other_charge.rb +434 -0
  59. data/lib/qube_sync/operations/item_payment.rb +268 -0
  60. data/lib/qube_sync/operations/item_receipt.rb +1011 -0
  61. data/lib/qube_sync/operations/item_sales_tax.rb +270 -0
  62. data/lib/qube_sync/operations/item_sales_tax_group.rb +200 -0
  63. data/lib/qube_sync/operations/item_service.rb +455 -0
  64. data/lib/qube_sync/operations/item_sites.rb +96 -0
  65. data/lib/qube_sync/operations/item_subtotal.rb +182 -0
  66. data/lib/qube_sync/operations/job_report.rb +156 -0
  67. data/lib/qube_sync/operations/job_type.rb +131 -0
  68. data/lib/qube_sync/operations/journal_entry.rb +518 -0
  69. data/lib/qube_sync/operations/lead.rb +216 -0
  70. data/lib/qube_sync/operations/list.rb +42 -0
  71. data/lib/qube_sync/operations/list_deleted.rb +57 -0
  72. data/lib/qube_sync/operations/list_display.rb +59 -0
  73. data/lib/qube_sync/operations/list_merge.rb +55 -0
  74. data/lib/qube_sync/operations/other_name.rb +245 -0
  75. data/lib/qube_sync/operations/paycheck.rb +139 -0
  76. data/lib/qube_sync/operations/payment_method.rb +128 -0
  77. data/lib/qube_sync/operations/payroll_detail_report.rb +161 -0
  78. data/lib/qube_sync/operations/payroll_item.rb +75 -0
  79. data/lib/qube_sync/operations/payroll_item_addition.rb +98 -0
  80. data/lib/qube_sync/operations/payroll_item_company_contribution.rb +134 -0
  81. data/lib/qube_sync/operations/payroll_item_deduction.rb +124 -0
  82. data/lib/qube_sync/operations/payroll_item_direct_deposit.rb +70 -0
  83. data/lib/qube_sync/operations/payroll_item_non_wage.rb +93 -0
  84. data/lib/qube_sync/operations/payroll_item_tax.rb +123 -0
  85. data/lib/qube_sync/operations/payroll_item_wage.rb +168 -0
  86. data/lib/qube_sync/operations/payroll_item_workers_compensation.rb +108 -0
  87. data/lib/qube_sync/operations/payroll_last_period.rb +30 -0
  88. data/lib/qube_sync/operations/payroll_liability_adjustment.rb +204 -0
  89. data/lib/qube_sync/operations/payroll_liability_check.rb +137 -0
  90. data/lib/qube_sync/operations/payroll_prior_payment.rb +178 -0
  91. data/lib/qube_sync/operations/payroll_summary_report.rb +157 -0
  92. data/lib/qube_sync/operations/payroll_year_to_date_adjustment.rb +211 -0
  93. data/lib/qube_sync/operations/preferences.rb +61 -0
  94. data/lib/qube_sync/operations/price_level.rb +305 -0
  95. data/lib/qube_sync/operations/purchase_order.rb +1038 -0
  96. data/lib/qube_sync/operations/qb_command_exec.rb +37 -0
  97. data/lib/qube_sync/operations/receive_payment.rb +627 -0
  98. data/lib/qube_sync/operations/receive_payment_to_deposit.rb +38 -0
  99. data/lib/qube_sync/operations/sales_order.rb +1045 -0
  100. data/lib/qube_sync/operations/sales_receipt.rb +1337 -0
  101. data/lib/qube_sync/operations/sales_rep.rb +172 -0
  102. data/lib/qube_sync/operations/sales_tax_code.rb +205 -0
  103. data/lib/qube_sync/operations/sales_tax_payable.rb +37 -0
  104. data/lib/qube_sync/operations/sales_tax_payment_check.rb +375 -0
  105. data/lib/qube_sync/operations/sales_tax_return.rb +35 -0
  106. data/lib/qube_sync/operations/sales_tax_return_line.rb +43 -0
  107. data/lib/qube_sync/operations/ship_method.rb +116 -0
  108. data/lib/qube_sync/operations/special_account.rb +55 -0
  109. data/lib/qube_sync/operations/special_item.rb +44 -0
  110. data/lib/qube_sync/operations/standard_terms.rb +125 -0
  111. data/lib/qube_sync/operations/template.rb +36 -0
  112. data/lib/qube_sync/operations/terms.rb +91 -0
  113. data/lib/qube_sync/operations/time_report.rb +127 -0
  114. data/lib/qube_sync/operations/time_tracking.rb +303 -0
  115. data/lib/qube_sync/operations/to_do.rb +260 -0
  116. data/lib/qube_sync/operations/transaction.rb +356 -0
  117. data/lib/qube_sync/operations/transfer.rb +213 -0
  118. data/lib/qube_sync/operations/transfer_inventory.rb +384 -0
  119. data/lib/qube_sync/operations/txn.rb +38 -0
  120. data/lib/qube_sync/operations/txn_deleted.rb +54 -0
  121. data/lib/qube_sync/operations/txn_display.rb +76 -0
  122. data/lib/qube_sync/operations/txn_void.rb +36 -0
  123. data/lib/qube_sync/operations/unit_of_measure_set.rb +149 -0
  124. data/lib/qube_sync/operations/vehicle.rb +152 -0
  125. data/lib/qube_sync/operations/vehicle_mileage.rb +191 -0
  126. data/lib/qube_sync/operations/vendor.rb +661 -0
  127. data/lib/qube_sync/operations/vendor_credit.rb +1008 -0
  128. data/lib/qube_sync/operations/vendor_type.rb +131 -0
  129. data/lib/qube_sync/operations/workers_comp_code.rb +184 -0
  130. data/lib/qube_sync/operations.rb +1165 -0
  131. data/lib/qube_sync/version.rb +1 -1
  132. data/lib/qube_sync.rb +1 -0
  133. data/sig/qube_sync/client.rbs +82 -0
  134. data/sig/qube_sync/operations/account.rbs +65 -0
  135. data/sig/qube_sync/operations/account_tax_line_info.rbs +13 -0
  136. data/sig/qube_sync/operations/aging_report.rbs +29 -0
  137. data/sig/qube_sync/operations/alert.rbs +53 -0
  138. data/sig/qube_sync/operations/ar_refund_credit_card.rbs +53 -0
  139. data/sig/qube_sync/operations/bar_code.rbs +16 -0
  140. data/sig/qube_sync/operations/bill.rbs +78 -0
  141. data/sig/qube_sync/operations/bill_payment_check.rbs +62 -0
  142. data/sig/qube_sync/operations/bill_payment_credit_card.rbs +45 -0
  143. data/sig/qube_sync/operations/bill_to_pay.rbs +19 -0
  144. data/sig/qube_sync/operations/billing_rate.rbs +40 -0
  145. data/sig/qube_sync/operations/budget_summary_report.rbs +22 -0
  146. data/sig/qube_sync/operations/build_assembly.rbs +64 -0
  147. data/sig/qube_sync/operations/charge.rbs +80 -0
  148. data/sig/qube_sync/operations/check.rbs +81 -0
  149. data/sig/qube_sync/operations/class.rbs +43 -0
  150. data/sig/qube_sync/operations/cleared_status.rbs +16 -0
  151. data/sig/qube_sync/operations/company.rbs +15 -0
  152. data/sig/qube_sync/operations/company_activity.rbs +14 -0
  153. data/sig/qube_sync/operations/credit_card_charge.rbs +69 -0
  154. data/sig/qube_sync/operations/credit_card_credit.rbs +69 -0
  155. data/sig/qube_sync/operations/credit_memo.rbs +162 -0
  156. data/sig/qube_sync/operations/currency.rbs +52 -0
  157. data/sig/qube_sync/operations/custom_detail_report.rbs +31 -0
  158. data/sig/qube_sync/operations/custom_summary_report.rbs +33 -0
  159. data/sig/qube_sync/operations/customer.rbs +174 -0
  160. data/sig/qube_sync/operations/customer_msg.rbs +31 -0
  161. data/sig/qube_sync/operations/customer_type.rbs +32 -0
  162. data/sig/qube_sync/operations/data_event_recovery_info.rbs +20 -0
  163. data/sig/qube_sync/operations/data_ext.rbs +53 -0
  164. data/sig/qube_sync/operations/data_ext_def.rbs +51 -0
  165. data/sig/qube_sync/operations/date_driven_terms.rbs +35 -0
  166. data/sig/qube_sync/operations/deposit.rbs +100 -0
  167. data/sig/qube_sync/operations/employee.rbs +173 -0
  168. data/sig/qube_sync/operations/employee_default.rbs +68 -0
  169. data/sig/qube_sync/operations/entity.rbs +24 -0
  170. data/sig/qube_sync/operations/estimate.rbs +148 -0
  171. data/sig/qube_sync/operations/form1099_category_account_mapping.rbs +33 -0
  172. data/sig/qube_sync/operations/general_detail_report.rbs +31 -0
  173. data/sig/qube_sync/operations/general_summary_report.rbs +32 -0
  174. data/sig/qube_sync/operations/host.rbs +19 -0
  175. data/sig/qube_sync/operations/inventory_adjustment.rbs +105 -0
  176. data/sig/qube_sync/operations/inventory_site.rbs +66 -0
  177. data/sig/qube_sync/operations/invoice.rbs +144 -0
  178. data/sig/qube_sync/operations/item.rbs +25 -0
  179. data/sig/qube_sync/operations/item_assemblies_can_build.rbs +15 -0
  180. data/sig/qube_sync/operations/item_discount.rbs +62 -0
  181. data/sig/qube_sync/operations/item_fixed_asset.rbs +97 -0
  182. data/sig/qube_sync/operations/item_group.rbs +62 -0
  183. data/sig/qube_sync/operations/item_inventory.rbs +87 -0
  184. data/sig/qube_sync/operations/item_inventory_assembly.rbs +94 -0
  185. data/sig/qube_sync/operations/item_non_inventory.rbs +64 -0
  186. data/sig/qube_sync/operations/item_other_charge.rbs +59 -0
  187. data/sig/qube_sync/operations/item_payment.rbs +55 -0
  188. data/sig/qube_sync/operations/item_receipt.rbs +71 -0
  189. data/sig/qube_sync/operations/item_sales_tax.rbs +57 -0
  190. data/sig/qube_sync/operations/item_sales_tax_group.rbs +50 -0
  191. data/sig/qube_sync/operations/item_service.rbs +62 -0
  192. data/sig/qube_sync/operations/item_sites.rbs +26 -0
  193. data/sig/qube_sync/operations/item_subtotal.rbs +48 -0
  194. data/sig/qube_sync/operations/job_report.rbs +28 -0
  195. data/sig/qube_sync/operations/job_type.rbs +32 -0
  196. data/sig/qube_sync/operations/journal_entry.rbs +88 -0
  197. data/sig/qube_sync/operations/lead.rbs +91 -0
  198. data/sig/qube_sync/operations/list.rbs +15 -0
  199. data/sig/qube_sync/operations/list_deleted.rbs +17 -0
  200. data/sig/qube_sync/operations/list_display.rbs +21 -0
  201. data/sig/qube_sync/operations/list_merge.rbs +22 -0
  202. data/sig/qube_sync/operations/other_name.rbs +71 -0
  203. data/sig/qube_sync/operations/paycheck.rbs +27 -0
  204. data/sig/qube_sync/operations/payment_method.rbs +33 -0
  205. data/sig/qube_sync/operations/payroll_detail_report.rbs +29 -0
  206. data/sig/qube_sync/operations/payroll_item.rbs +23 -0
  207. data/sig/qube_sync/operations/payroll_item_addition.rbs +48 -0
  208. data/sig/qube_sync/operations/payroll_item_company_contribution.rbs +58 -0
  209. data/sig/qube_sync/operations/payroll_item_deduction.rbs +54 -0
  210. data/sig/qube_sync/operations/payroll_item_direct_deposit.rbs +30 -0
  211. data/sig/qube_sync/operations/payroll_item_non_wage.rbs +23 -0
  212. data/sig/qube_sync/operations/payroll_item_tax.rbs +58 -0
  213. data/sig/qube_sync/operations/payroll_item_wage.rbs +48 -0
  214. data/sig/qube_sync/operations/payroll_item_workers_compensation.rbs +42 -0
  215. data/sig/qube_sync/operations/payroll_last_period.rbs +13 -0
  216. data/sig/qube_sync/operations/payroll_liability_adjustment.rbs +59 -0
  217. data/sig/qube_sync/operations/payroll_liability_check.rbs +27 -0
  218. data/sig/qube_sync/operations/payroll_prior_payment.rbs +48 -0
  219. data/sig/qube_sync/operations/payroll_summary_report.rbs +30 -0
  220. data/sig/qube_sync/operations/payroll_year_to_date_adjustment.rbs +66 -0
  221. data/sig/qube_sync/operations/preferences.rbs +26 -0
  222. data/sig/qube_sync/operations/price_level.rbs +57 -0
  223. data/sig/qube_sync/operations/purchase_order.rbs +159 -0
  224. data/sig/qube_sync/operations/qb_command_exec.rbs +22 -0
  225. data/sig/qube_sync/operations/receive_payment.rbs +102 -0
  226. data/sig/qube_sync/operations/receive_payment_to_deposit.rbs +15 -0
  227. data/sig/qube_sync/operations/sales_order.rbs +153 -0
  228. data/sig/qube_sync/operations/sales_receipt.rbs +139 -0
  229. data/sig/qube_sync/operations/sales_rep.rbs +43 -0
  230. data/sig/qube_sync/operations/sales_tax_code.rbs +49 -0
  231. data/sig/qube_sync/operations/sales_tax_payable.rbs +16 -0
  232. data/sig/qube_sync/operations/sales_tax_payment_check.rbs +64 -0
  233. data/sig/qube_sync/operations/sales_tax_return.rbs +14 -0
  234. data/sig/qube_sync/operations/sales_tax_return_line.rbs +15 -0
  235. data/sig/qube_sync/operations/ship_method.rbs +31 -0
  236. data/sig/qube_sync/operations/special_account.rbs +16 -0
  237. data/sig/qube_sync/operations/special_item.rbs +17 -0
  238. data/sig/qube_sync/operations/standard_terms.rbs +34 -0
  239. data/sig/qube_sync/operations/template.rbs +15 -0
  240. data/sig/qube_sync/operations/terms.rbs +23 -0
  241. data/sig/qube_sync/operations/time_report.rbs +26 -0
  242. data/sig/qube_sync/operations/time_tracking.rbs +57 -0
  243. data/sig/qube_sync/operations/to_do.rbs +59 -0
  244. data/sig/qube_sync/operations/transaction.rbs +39 -0
  245. data/sig/qube_sync/operations/transfer.rbs +47 -0
  246. data/sig/qube_sync/operations/transfer_inventory.rbs +76 -0
  247. data/sig/qube_sync/operations/txn.rbs +15 -0
  248. data/sig/qube_sync/operations/txn_deleted.rbs +17 -0
  249. data/sig/qube_sync/operations/txn_display.rbs +22 -0
  250. data/sig/qube_sync/operations/txn_void.rbs +15 -0
  251. data/sig/qube_sync/operations/types.rbs +434 -0
  252. data/sig/qube_sync/operations/unit_of_measure_set.rbs +51 -0
  253. data/sig/qube_sync/operations/vehicle.rbs +43 -0
  254. data/sig/qube_sync/operations/vehicle_mileage.rbs +38 -0
  255. data/sig/qube_sync/operations/vendor.rbs +142 -0
  256. data/sig/qube_sync/operations/vendor_credit.rbs +70 -0
  257. data/sig/qube_sync/operations/vendor_type.rbs +32 -0
  258. data/sig/qube_sync/operations/workers_comp_code.rbs +52 -0
  259. data/sig/qube_sync/operations.rbs +147 -0
  260. metadata +255 -2
@@ -0,0 +1,461 @@
1
+ # Generated from operations.json by bin/generate-operations: don't edit.
2
+ # frozen_string_literal: true
3
+
4
+ module QubeSync
5
+ module Operations
6
+ # QuickBooks item non inventory operations, reached as `client.item_non_inventory`. Each queues a request and
7
+ # returns it (the response's `data`); the answer comes to `webhook_url`.
8
+ class ItemNonInventory < Base
9
+ # Create item non inventory: POST /connections/{connection_id}/item-non-inventories
10
+ # (`item_non_inventory.create`).
11
+ #
12
+ # QuickBooks answers in one webhook.
13
+ #
14
+ # Params, sent as the JSON body:
15
+ # Give at most one of: `sales_or_purchase`, or `sales_and_purchase`.
16
+ # - `bar_code` (Hash): Barcode reference information.
17
+ # - `allow_override` (Boolean): Allows for barcode to be overridden for an item.
18
+ # - `assign_even_if_used` (Boolean): Allow barcode to be assigned to item, even if already
19
+ # in use.
20
+ # - `bar_code_value` (String): Value of the barcode in the item.
21
+ # - `class_ref` (Hash): Use classes to categorize transactions (for example, by department,
22
+ # location, or work type). Class tracking is off by default in QuickBooks. A `class_ref`
23
+ # points to one class; if both `full_name` and `list_id` are provided, `full_name` is
24
+ # ignored. In InvoiceAdd, a header-level `class_ref` is applied to line items unless you
25
+ # override or clear it on individual lines.
26
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
27
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
28
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
29
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
30
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
31
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
32
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
33
+ # - `external_guid` (String): Allows for the attachment of a user defined GUID value.
34
+ # - `include_ret_element` (Array<one of "BarCodeValue", "ClassRef", "DataExtRet",
35
+ # "EditSequence", "ExternalGUID", "FullName", "IsActive", "IsTaxIncluded", "ListID",
36
+ # "ManufacturerPartNumber", "Name", "OwnerID", "ParentRef", "SalesAndPurchase",
37
+ # "SalesOrPurchase", "SalesTaxCodeRef", "Sublevel", "TimeCreated", "TimeModified", "TxnID",
38
+ # "TxnNumber", "UnitOfMeasureSetRef">)
39
+ # - `is_active` (Boolean): If `is_active` is true, this object is currently enabled for use by
40
+ # QuickBooks. The default value is true.
41
+ # - `is_tax_included` (Boolean): For future use with international versions of QuickBooks.
42
+ # - `manufacturer_part_number` (String): The part number used by the manufacturer of the item.
43
+ # - `name` (String, required): Name is the case-insensitive short name of a list object
44
+ # (without ancestors). It must be unique within its hierarchy scope. Hierarchical lists can
45
+ # reuse the same Name in different branches because `full_name` remains distinct.
46
+ # - `parent_ref` (Hash): A reference to the list object that is one level above this one. For
47
+ # example, an inventory item with the `full_name` of GermanCars:Mercedes-Benz:CL500I99AA
48
+ # might have a parent object with the `full_name` of GermanCars:Mercedes-Benz. In a request,
49
+ # if a `parent_ref` aggregate includes both `full_name` and `list_id`, `full_name` will be
50
+ # ignored.
51
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
52
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
53
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
54
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
55
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
56
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
57
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
58
+ # - `request_id` (String): Your own label for the request, sent to QuickBooks as its qbXML
59
+ # `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's
60
+ # webhook already carries the request's `id`.
61
+ # - `sales_and_purchase` (Hash): A `sales_and_purchase` aggregate is used for items that are
62
+ # meant to be both purchased and sold, such as an “other charge” item that is reimbursable.
63
+ # - `expense_account_ref` (Hash): Refers to an expense account. If an `expense_account_ref`
64
+ # aggregate includes both `full_name` and `list_id`, `full_name` will be ignored.
65
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
66
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for
67
+ # example Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
68
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
69
+ # assigns `list_id` when the object is created. `list_id` values are unique within a
70
+ # list type, not globally across all lists. If both `full_name` and `list_id` are
71
+ # supplied in a request, QuickBooks uses `list_id` and ignores `full_name`.
72
+ # - `income_account_ref` (Hash): Refers to an income account. If an `income_account_ref`
73
+ # aggregate includes both `full_name` and `list_id`, `full_name` will be ignored.
74
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
75
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for
76
+ # example Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
77
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
78
+ # assigns `list_id` when the object is created. `list_id` values are unique within a
79
+ # list type, not globally across all lists. If both `full_name` and `list_id` are
80
+ # supplied in a request, QuickBooks uses `list_id` and ignores `full_name`.
81
+ # - `pref_vendor_ref` (Hash): The preferred vendor for this item. If a `pref_vendor_ref`
82
+ # aggregate includes both `full_name` and `list_id`, `full_name` will be ignored.
83
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
84
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for
85
+ # example Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
86
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
87
+ # assigns `list_id` when the object is created. `list_id` values are unique within a
88
+ # list type, not globally across all lists. If both `full_name` and `list_id` are
89
+ # supplied in a request, QuickBooks uses `list_id` and ignores `full_name`.
90
+ # - `purchase_cost` (Numeric): Amount that the QuickBooks user expects to pay when ordering
91
+ # or buying this item, or the amount that was actually paid for this item.
92
+ # - `purchase_desc` (String): Description that appears in the Description column of checks,
93
+ # bills, credit card charges, and item receipts (when an item is reordered). For a fixed
94
+ # asset, a description of the item as it was when it was purchased.
95
+ # - `purchase_tax_code_ref` (Hash): Account used for taxes on purchases in CA or UK.
96
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
97
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for
98
+ # example Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
99
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
100
+ # assigns `list_id` when the object is created. `list_id` values are unique within a
101
+ # list type, not globally across all lists. If both `full_name` and `list_id` are
102
+ # supplied in a request, QuickBooks uses `list_id` and ignores `full_name`.
103
+ # - `sales_desc` (String): Appears in the Description column of a sales form when the
104
+ # QuickBooks user sells this item. For a fixed asset, describes the sale of the asset (for
105
+ # accounting purposes).
106
+ # - `sales_price` (Numeric): Price charged for this item.
107
+ # - `sales_or_purchase` (Hash): A `sales_or_purchase` aggregate is used for items that are
108
+ # meant to be either purchased or sold, but not both. For example, a `sales_or_purchase`
109
+ # aggregate would be used for a non-inventory item that is purchased but not sold, or for a
110
+ # service item that is sold but not purchased.
111
+ # - `account_ref` (Hash): `account_ref` points to an account in the company file. If both
112
+ # `full_name` and `list_id` are provided, `full_name` is ignored. Meaning depends on
113
+ # context: for checks it is the funding account; for ExpenseLineAdd it may be required by
114
+ # accounting preferences; for credit-card transactions it identifies the bank or card
115
+ # account involved.
116
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
117
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for
118
+ # example Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
119
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
120
+ # assigns `list_id` when the object is created. `list_id` values are unique within a
121
+ # list type, not globally across all lists. If both `full_name` and `list_id` are
122
+ # supplied in a request, QuickBooks uses `list_id` and ignores `full_name`.
123
+ # - `desc` (String): A descriptive text field.
124
+ # - `price` (Numeric): The purchase price or sales price of this item. Choose at most one
125
+ # of: `price`, or `price_percent`.
126
+ # - `price_percent` (Numeric): The price expressed as a percent. (For example, an auto shop
127
+ # that calculates the cost of labor as a percentage of the cost of parts might have a
128
+ # service item called “Labor” that uses `price_percent` instead of Price.) Choose at most
129
+ # one of: `price`, or `price_percent`.
130
+ # - `sales_tax_code_ref` (Hash): `sales_tax_code_ref` points to the sales-tax code used for an
131
+ # item or customer context. QuickBooks includes default TAX and NON codes, and a code can be
132
+ # deleted only when nothing references it. If sales tax is disabled, QuickBooks assigns the
133
+ # default non-taxable code. If both `full_name` and `list_id` are provided in
134
+ # `sales_tax_code_ref`, `full_name` is ignored.
135
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
136
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
137
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
138
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
139
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
140
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
141
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
142
+ # - `unit_of_measure_set_ref` (Hash): The unit of measure set consists of a base unit and 0-n
143
+ # related units.
144
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
145
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
146
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
147
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
148
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
149
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
150
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
151
+ #
152
+ # @param connection_id [String]
153
+ # @param params [Hash] the fields above
154
+ # @param webhook_url [String] where QuBe Sync sends the answer
155
+ # @param idempotency_key [String, nil] made for the call when nil, and reused on its retries
156
+ # @return [Hash] the queued request
157
+ # @see https://docs.qubesync.com/api-reference/v2/item-non-inventories/create-item-non-inventory
158
+ def create(connection_id, params = {}, webhook_url:, idempotency_key: nil)
159
+ queue("item_non_inventory.create", connection_id, params, webhook_url: webhook_url, idempotency_key: idempotency_key)
160
+ end
161
+
162
+ # List item non inventories: GET /connections/{connection_id}/item-non-inventories
163
+ # (`item_non_inventory.query`).
164
+ #
165
+ # QuickBooks answers in pages: one webhook per page, each with its `page`, the last with
166
+ # `iteration_state` `done`.
167
+ #
168
+ # Params, sent as the query string:
169
+ # - `active_status` (one of "ActiveOnly", "All", "InactiveOnly"): Used in filters to select
170
+ # list objects based on whether or not they are currently enabled for use by QuickBooks. The
171
+ # default value is asActiveOnly, which selects only list objects that are active. Choose at
172
+ # most one of: `list_id`, or `full_name`, or the set (`active_status`, `class_filter`,
173
+ # `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`,
174
+ # `to_modified_date`). Members of a set combine with each other, not with the other choices.
175
+ # - `class_filter` (Hash): Filters according to the object’s class. Choose at most one of:
176
+ # `list_id`, or `full_name`, or the set (`active_status`, `class_filter`,
177
+ # `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`,
178
+ # `to_modified_date`). Members of a set combine with each other, not with the other choices.
179
+ # Give at most one of: `list_id`, or `full_name`, or `list_id_with_children`, or
180
+ # `full_name_with_children`.
181
+ # - `full_name` (Array<String>): `full_name` (along with `list_id`) is a way to identify a
182
+ # list object. The `full_name` is the name prefixed by the names of each ancestor, for
183
+ # example Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
184
+ # - `full_name_with_children` (String): Allows you to filter for data that relates to the
185
+ # specified object and its descendants. For names that don’t have children,
186
+ # `full_name_with_children` is exactly the same as `full_name`.
187
+ # - `list_id` (Array<String>): `list_id` and `full_name` both identify a list object.
188
+ # QuickBooks assigns `list_id` when the object is created. `list_id` values are unique
189
+ # within a list type, not globally across all lists. If both `full_name` and `list_id` are
190
+ # supplied in a request, QuickBooks uses `list_id` and ignores `full_name`.
191
+ # - `list_id_with_children` (String): Allows you to filter for data that relates to the
192
+ # specified object and its descendants.
193
+ # - `from_modified_date` (String): Filters results to objects modified on or after this
194
+ # timestamp. QuickBooks Desktop accepts 1970-01-01 through 2038-01-19T03:14:07. If only a
195
+ # date is provided, time defaults to 00:00:00. Choose at most one of: `list_id`, or
196
+ # `full_name`, or the set (`active_status`, `class_filter`, `from_modified_date`,
197
+ # `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set
198
+ # combine with each other, not with the other choices.
199
+ # - `full_name` (Array<String>): `full_name` (along with `list_id`) is a way to identify a
200
+ # list object. The `full_name` is the name prefixed by the names of each ancestor, for
201
+ # example Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive. Choose at most
202
+ # one of: `list_id`, or `full_name`, or the set (`active_status`, `class_filter`,
203
+ # `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`,
204
+ # `to_modified_date`). Members of a set combine with each other, not with the other choices.
205
+ # - `include_ret_element` (Array<one of "BarCodeValue", "ClassRef", "DataExtRet",
206
+ # "EditSequence", "ExternalGUID", "FullName", "IsActive", "IsTaxIncluded", "ListID",
207
+ # "ManufacturerPartNumber", "Name", "ParentRef", "SalesAndPurchase", "SalesOrPurchase",
208
+ # "SalesTaxCodeRef", "Sublevel", "TimeCreated", "TimeModified", "UnitOfMeasureSetRef">)
209
+ # - `iterator` (Boolean): Page through every match: QuBe Sync asks QuickBooks for each page in
210
+ # turn and sends each to your `webhook_url` as it arrives, all with the same `id`. On by
211
+ # default, with pages of 100 records; send `iterator=true` with `max_returned` for another
212
+ # size. Off when you send `iterator=false` (every match in one answer) or `max_returned`
213
+ # alone (at most that many, in one answer). It pages a filtered query only: with `full_name`
214
+ # or `list_id` every match comes back in one answer, so leave `iterator` out.
215
+ # - `list_id` (Array<String>): `list_id` and `full_name` both identify a list object.
216
+ # QuickBooks assigns `list_id` when the object is created. `list_id` values are unique
217
+ # within a list type, not globally across all lists. If both `full_name` and `list_id` are
218
+ # supplied in a request, QuickBooks uses `list_id` and ignores `full_name`. Choose at most
219
+ # one of: `list_id`, or `full_name`, or the set (`active_status`, `class_filter`,
220
+ # `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`,
221
+ # `to_modified_date`). Members of a set combine with each other, not with the other choices.
222
+ # - `max_returned` (Integer): Limits the number of objects that a query returns. (To get a
223
+ # count of how many objects could possibly be returned, use the `meta_data` query
224
+ # attribute.) If you include a `max_returned` value, it must be at least 1. The page size,
225
+ # with `iterator=true`. Sent without `iterator`, or with `iterator=false`, it's a cap
226
+ # instead: at most this many records come back, in one answer, and QuickBooks doesn't say
227
+ # whether more matched. Choose at most one of: `list_id`, or `full_name`, or the set
228
+ # (`active_status`, `class_filter`, `from_modified_date`, `max_returned`, `name_filter`,
229
+ # `name_range_filter`, `to_modified_date`). Members of a set combine with each other, not
230
+ # with the other choices.
231
+ # - `meta_data` (one of "MetaDataAndResponseData", "MetaDataOnly", "NoMetaData"): Use the
232
+ # `meta_data` attribute to control whether query responses include counts. Options are
233
+ # NoMetaData (default), MetaDataOnly (count only), and MetaDataAndResponseData (count plus
234
+ # objects). Counts are approximate and may vary slightly if records are created or deleted
235
+ # during processing.
236
+ # - `name_filter` (Hash): Filters according to the object’s Name. Choose at most one of:
237
+ # `list_id`, or `full_name`, or the set (`active_status`, `class_filter`,
238
+ # `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`,
239
+ # `to_modified_date`). Members of a set combine with each other, not with the other choices.
240
+ # - `match_criterion` (one of "Contains", "EndsWith", "StartsWith", required): The criterion
241
+ # to match.
242
+ # - `name` (String, required): The string to match.
243
+ # - `name_range_filter` (Hash): Filters according to the object’s Name. Choose at most one of:
244
+ # `list_id`, or `full_name`, or the set (`active_status`, `class_filter`,
245
+ # `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`,
246
+ # `to_modified_date`). Members of a set combine with each other, not with the other choices.
247
+ # - `from_name` (String): The first name or item in the search range. If `from_name` is
248
+ # omitted, the range will begin with first name on the list.
249
+ # - `to_name` (String): The final name or item in the search range. If `to_name` is omitted,
250
+ # the range will end with last name on the list.
251
+ # - `owner_id` (Array<String>): `owner_id` identifies who owns the data extension. Use 0 for
252
+ # QuickBooks custom fields that appear in the UI, or use a GUID for private extensions owned
253
+ # by an app. Keep private GUIDs confidential unless you intentionally share extensions
254
+ # across apps. If you do share them, both apps must use the same `owner_id` and
255
+ # `data_ext_name`, because that pair uniquely identifies the extension.
256
+ # - `request_id` (String): Your own label for the request, sent to QuickBooks as its qbXML
257
+ # `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's
258
+ # webhook already carries the request's `id`.
259
+ # - `to_modified_date` (String): Filters results to objects modified on or before this
260
+ # timestamp. QuickBooks Desktop accepts 1970-01-01 through 2038-01-19T03:14:07. If only a
261
+ # date is provided, time defaults to end-of-day (23:59:59). Choose at most one of:
262
+ # `list_id`, or `full_name`, or the set (`active_status`, `class_filter`,
263
+ # `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`,
264
+ # `to_modified_date`). Members of a set combine with each other, not with the other choices.
265
+ #
266
+ # @param connection_id [String]
267
+ # @param params [Hash] the fields above
268
+ # @param webhook_url [String] where QuBe Sync sends the answer
269
+ # @param idempotency_key [String, nil] made for the call when nil, and reused on its retries
270
+ # @return [Hash] the queued request
271
+ # @see https://docs.qubesync.com/api-reference/v2/item-non-inventories/list-item-non-inventories
272
+ def query(connection_id, params = {}, webhook_url:, idempotency_key: nil)
273
+ queue("item_non_inventory.query", connection_id, params, webhook_url: webhook_url, idempotency_key: idempotency_key)
274
+ end
275
+
276
+ # Update item non inventory: PUT /connections/{connection_id}/item-non-inventories
277
+ # (`item_non_inventory.update`).
278
+ #
279
+ # QuickBooks answers in one webhook.
280
+ #
281
+ # Params, sent as the JSON body:
282
+ # - `bar_code` (Hash): Barcode reference information.
283
+ # - `allow_override` (Boolean): Allows for barcode to be overridden for an item.
284
+ # - `assign_even_if_used` (Boolean): Allow barcode to be assigned to item, even if already
285
+ # in use.
286
+ # - `bar_code_value` (String): Value of the barcode in the item.
287
+ # - `class_ref` (Hash): Use classes to categorize transactions (for example, by department,
288
+ # location, or work type). Class tracking is off by default in QuickBooks. A `class_ref`
289
+ # points to one class; if both `full_name` and `list_id` are provided, `full_name` is
290
+ # ignored. In InvoiceAdd, a header-level `class_ref` is applied to line items unless you
291
+ # override or clear it on individual lines.
292
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
293
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
294
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
295
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
296
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
297
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
298
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
299
+ # - `edit_sequence` (String, required): `edit_sequence` is a server-generated revision token.
300
+ # It changes each time the object is updated. To modify an existing object, you must send
301
+ # the current `edit_sequence`. If your value is stale, the update is rejected to prevent
302
+ # overwriting newer changes.
303
+ # - `force_uom_change` (Boolean): By Default `force_uom_change` is false. However, in item Mod
304
+ # requests, you need to set the `force_uom_change` field to True if you are changing the UOM
305
+ # set and the base unit of the new set doesn’t match the base unit of the UOM set currently
306
+ # assigned to the item. This does the same thing as the user accepting the warning prompt in
307
+ # the UI.
308
+ # - `include_ret_element` (Array<one of "BarCodeValue", "ClassRef", "DataExtRet",
309
+ # "EditSequence", "ExternalGUID", "FullName", "IsActive", "IsTaxIncluded", "ListID",
310
+ # "ManufacturerPartNumber", "Name", "OwnerID", "ParentRef", "SalesAndPurchase",
311
+ # "SalesOrPurchase", "SalesTaxCodeRef", "Sublevel", "TimeCreated", "TimeModified", "TxnID",
312
+ # "TxnNumber", "UnitOfMeasureSetRef">)
313
+ # - `is_active` (Boolean): If `is_active` is true, this object is currently enabled for use by
314
+ # QuickBooks. The default value is true.
315
+ # - `is_tax_included` (Boolean): For future use with international versions of QuickBooks.
316
+ # - `list_id` (String, required): `list_id` and `full_name` both identify a list object.
317
+ # QuickBooks assigns `list_id` when the object is created. `list_id` values are unique
318
+ # within a list type, not globally across all lists. If both `full_name` and `list_id` are
319
+ # supplied in a request, QuickBooks uses `list_id` and ignores `full_name`.
320
+ # - `manufacturer_part_number` (String): The part number used by the manufacturer of the item.
321
+ # - `name` (String): Name is the case-insensitive short name of a list object (without
322
+ # ancestors). It must be unique within its hierarchy scope. Hierarchical lists can reuse the
323
+ # same Name in different branches because `full_name` remains distinct.
324
+ # - `parent_ref` (Hash): A reference to the list object that is one level above this one. For
325
+ # example, an inventory item with the `full_name` of GermanCars:Mercedes-Benz:CL500I99AA
326
+ # might have a parent object with the `full_name` of GermanCars:Mercedes-Benz. In a request,
327
+ # if a `parent_ref` aggregate includes both `full_name` and `list_id`, `full_name` will be
328
+ # ignored.
329
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
330
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
331
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
332
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
333
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
334
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
335
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
336
+ # - `request_id` (String): Your own label for the request, sent to QuickBooks as its qbXML
337
+ # `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's
338
+ # webhook already carries the request's `id`.
339
+ # - `sales_and_purchase_mod` (Hash): A `sales_and_purchase` aggregate is used for items that
340
+ # are meant to be both purchased and sold, such as an “other charge” item that is
341
+ # reimbursable. Choose at most one of: `sales_or_purchase_mod`, or `sales_and_purchase_mod`.
342
+ # - `apply_expense_account_ref_to_existing_txns` (Boolean): Used to support changing the
343
+ # `account_ref` in the Mod request. When you do this, the QuickBooks UI normally displays
344
+ # a prompt asking whether the change should apply to existing transactions or not.
345
+ # Specifying False basically dismisses this with a “No” answer; specifying True dismisses
346
+ # it with a “Yes” answer and then changes the existing transactions that use the item with
347
+ # that `account_ref`.
348
+ # - `apply_income_account_ref_to_existing_txns` (Boolean): Used to support changing the
349
+ # `account_ref` in the Mod request. When you do this, the QuickBooks UI normally displays
350
+ # a prompt asking whether the change should apply to existing transactions or not.
351
+ # Specifying False basically dismisses this with a “No” answer; specifying True dismisses
352
+ # it with a “Yes” answer and then changes the existing transactions that use the item with
353
+ # that `account_ref`.
354
+ # - `expense_account_ref` (Hash): Refers to an expense account. If an `expense_account_ref`
355
+ # aggregate includes both `full_name` and `list_id`, `full_name` will be ignored.
356
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
357
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for
358
+ # example Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
359
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
360
+ # assigns `list_id` when the object is created. `list_id` values are unique within a
361
+ # list type, not globally across all lists. If both `full_name` and `list_id` are
362
+ # supplied in a request, QuickBooks uses `list_id` and ignores `full_name`.
363
+ # - `income_account_ref` (Hash): Refers to an income account. If an `income_account_ref`
364
+ # aggregate includes both `full_name` and `list_id`, `full_name` will be ignored.
365
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
366
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for
367
+ # example Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
368
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
369
+ # assigns `list_id` when the object is created. `list_id` values are unique within a
370
+ # list type, not globally across all lists. If both `full_name` and `list_id` are
371
+ # supplied in a request, QuickBooks uses `list_id` and ignores `full_name`.
372
+ # - `pref_vendor_ref` (Hash): The preferred vendor for this item. If a `pref_vendor_ref`
373
+ # aggregate includes both `full_name` and `list_id`, `full_name` will be ignored.
374
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
375
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for
376
+ # example Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
377
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
378
+ # assigns `list_id` when the object is created. `list_id` values are unique within a
379
+ # list type, not globally across all lists. If both `full_name` and `list_id` are
380
+ # supplied in a request, QuickBooks uses `list_id` and ignores `full_name`.
381
+ # - `purchase_cost` (Numeric): Amount that the QuickBooks user expects to pay when ordering
382
+ # or buying this item, or the amount that was actually paid for this item.
383
+ # - `purchase_desc` (String): Description that appears in the Description column of checks,
384
+ # bills, credit card charges, and item receipts (when an item is reordered). For a fixed
385
+ # asset, a description of the item as it was when it was purchased.
386
+ # - `purchase_tax_code_ref` (Hash): Account used for taxes on purchases in CA or UK.
387
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
388
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for
389
+ # example Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
390
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
391
+ # assigns `list_id` when the object is created. `list_id` values are unique within a
392
+ # list type, not globally across all lists. If both `full_name` and `list_id` are
393
+ # supplied in a request, QuickBooks uses `list_id` and ignores `full_name`.
394
+ # - `sales_desc` (String): Appears in the Description column of a sales form when the
395
+ # QuickBooks user sells this item. For a fixed asset, describes the sale of the asset (for
396
+ # accounting purposes).
397
+ # - `sales_price` (Numeric): Price charged for this item.
398
+ # - `sales_or_purchase_mod` (Hash): A `sales_or_purchase` aggregate is used for items that are
399
+ # meant to be either purchased or sold, but not both. For example, a `sales_or_purchase`
400
+ # aggregate would be used for a non-inventory item that is purchased but not sold, or for a
401
+ # service item that is sold but not purchased. Choose at most one of:
402
+ # `sales_or_purchase_mod`, or `sales_and_purchase_mod`.
403
+ # - `account_ref` (Hash): `account_ref` points to an account in the company file. If both
404
+ # `full_name` and `list_id` are provided, `full_name` is ignored. Meaning depends on
405
+ # context: for checks it is the funding account; for ExpenseLineAdd it may be required by
406
+ # accounting preferences; for credit-card transactions it identifies the bank or card
407
+ # account involved.
408
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
409
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for
410
+ # example Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
411
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
412
+ # assigns `list_id` when the object is created. `list_id` values are unique within a
413
+ # list type, not globally across all lists. If both `full_name` and `list_id` are
414
+ # supplied in a request, QuickBooks uses `list_id` and ignores `full_name`.
415
+ # - `apply_account_ref_to_existing_txns` (Boolean): Used to support changing the
416
+ # `account_ref` in the Mod request. When you do this, the QuickBooks UI normally displays
417
+ # a prompt asking whether the change should apply to existing transactions or not.
418
+ # Specifying False basically dismisses this with a “No” answer; specifying True dismisses
419
+ # it with a “Yes” answer and then changes the existing transactions that use the item with
420
+ # that `account_ref`.
421
+ # - `desc` (String): A descriptive text field.
422
+ # - `price` (Numeric): The purchase price or sales price of this item. Choose at most one
423
+ # of: `price`, or `price_percent`.
424
+ # - `price_percent` (Numeric): The price expressed as a percent. (For example, an auto shop
425
+ # that calculates the cost of labor as a percentage of the cost of parts might have a
426
+ # service item called “Labor” that uses `price_percent` instead of Price.) Choose at most
427
+ # one of: `price`, or `price_percent`.
428
+ # - `sales_tax_code_ref` (Hash): `sales_tax_code_ref` points to the sales-tax code used for an
429
+ # item or customer context. QuickBooks includes default TAX and NON codes, and a code can be
430
+ # deleted only when nothing references it. If sales tax is disabled, QuickBooks assigns the
431
+ # default non-taxable code. If both `full_name` and `list_id` are provided in
432
+ # `sales_tax_code_ref`, `full_name` is ignored.
433
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
434
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
435
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
436
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
437
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
438
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
439
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
440
+ # - `unit_of_measure_set_ref` (Hash): The unit of measure set consists of a base unit and 0-n
441
+ # related units.
442
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
443
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
444
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
445
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
446
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
447
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
448
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
449
+ #
450
+ # @param connection_id [String]
451
+ # @param params [Hash] the fields above
452
+ # @param webhook_url [String] where QuBe Sync sends the answer
453
+ # @param idempotency_key [String, nil] made for the call when nil, and reused on its retries
454
+ # @return [Hash] the queued request
455
+ # @see https://docs.qubesync.com/api-reference/v2/item-non-inventories/update-item-non-inventory
456
+ def update(connection_id, params = {}, webhook_url:, idempotency_key: nil)
457
+ queue("item_non_inventory.update", connection_id, params, webhook_url: webhook_url, idempotency_key: idempotency_key)
458
+ end
459
+ end
460
+ end
461
+ end