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,446 @@
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 inventory operations, reached as `client.item_inventory`. Each queues a request and
7
+ # returns it (the response's `data`); the answer comes to `webhook_url`.
8
+ class ItemInventory < Base
9
+ # Create item inventory: POST /connections/{connection_id}/item-inventories
10
+ # (`item_inventory.create`).
11
+ #
12
+ # QuickBooks answers in one webhook.
13
+ #
14
+ # Params, sent as the JSON body:
15
+ # - `asset_account_ref` (Hash): Refers to the account QuickBooks uses to track the current
16
+ # value of the company’s inventory. (The AccountType of this account will be FixedAsset,
17
+ # OtherAsset, or OtherCurrentAsset.) In a request, if an `asset_account_ref` aggregate
18
+ # includes both `full_name` and `list_id`, `full_name` will be ignored.
19
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
20
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
21
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
22
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
23
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
24
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
25
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
26
+ # - `bar_code` (Hash): Barcode reference information.
27
+ # - `allow_override` (Boolean): Allows for barcode to be overridden for an item.
28
+ # - `assign_even_if_used` (Boolean): Allow barcode to be assigned to item, even if already
29
+ # in use.
30
+ # - `bar_code_value` (String): Value of the barcode in the item.
31
+ # - `class_ref` (Hash): Use classes to categorize transactions (for example, by department,
32
+ # location, or work type). Class tracking is off by default in QuickBooks. A `class_ref`
33
+ # points to one class; if both `full_name` and `list_id` are provided, `full_name` is
34
+ # ignored. In InvoiceAdd, a header-level `class_ref` is applied to line items unless you
35
+ # override or clear it on individual lines.
36
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
37
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
38
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
39
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
40
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
41
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
42
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
43
+ # - `cogs_account_ref` (Hash): Refers to the account that QuickBooks uses to track the
44
+ # original cost of goods that are eventually sold. (The AccountType of this account will be
45
+ # CostOfGoodsSold.) In a request, if a `cogs_account_ref` aggregate includes both
46
+ # `full_name` and `list_id`, `full_name` will be ignored.
47
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
48
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
49
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
50
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
51
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
52
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
53
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
54
+ # - `external_guid` (String): Allows for the attachment of a user defined GUID value.
55
+ # - `include_ret_element` (Array<one of "AssetAccountRef", "AverageCost", "BarCodeValue",
56
+ # "COGSAccountRef", "ClassRef", "DataExtRet", "EditSequence", "ExternalGUID", "FullName",
57
+ # "IncomeAccountRef", "IsActive", "IsTaxIncluded", "ListID", "ManufacturerPartNumber",
58
+ # "Max", "Name", "OwnerID", "ParentRef", "PrefVendorRef", "PurchaseCost", "PurchaseDesc",
59
+ # "PurchaseTaxCodeRef", "QuantityOnHand", "QuantityOnOrder", "QuantityOnSalesOrder",
60
+ # "ReorderPoint", "SalesDesc", "SalesPrice", "SalesTaxCodeRef", "Sublevel", "TimeCreated",
61
+ # "TimeModified", "TxnID", "TxnNumber", "UnitOfMeasureSetRef">)
62
+ # - `income_account_ref` (Hash): Refers to an income account. If an `income_account_ref`
63
+ # aggregate includes both `full_name` and `list_id`, `full_name` will be ignored.
64
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
65
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
66
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
67
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
68
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
69
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
70
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
71
+ # - `inventory_date` (String): The date when an item was converted into an inventory item from
72
+ # some other type of item.
73
+ # - `is_active` (Boolean): If `is_active` is true, this object is currently enabled for use by
74
+ # QuickBooks. The default value is true.
75
+ # - `is_tax_included` (Boolean): For future use with international versions of QuickBooks.
76
+ # - `manufacturer_part_number` (String): The part number used by the manufacturer of the item.
77
+ # - `max` (Numeric): Maximum number of items in inventory.
78
+ # - `name` (String, required): Name is the case-insensitive short name of a list object
79
+ # (without ancestors). It must be unique within its hierarchy scope. Hierarchical lists can
80
+ # reuse the same Name in different branches because `full_name` remains distinct.
81
+ # - `parent_ref` (Hash): A reference to the list object that is one level above this one. For
82
+ # example, an inventory item with the `full_name` of GermanCars:Mercedes-Benz:CL500I99AA
83
+ # might have a parent object with the `full_name` of GermanCars:Mercedes-Benz. In a request,
84
+ # if a `parent_ref` aggregate includes both `full_name` and `list_id`, `full_name` will be
85
+ # ignored.
86
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
87
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
88
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
89
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
90
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
91
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
92
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
93
+ # - `pref_vendor_ref` (Hash): The preferred vendor for this item. If a `pref_vendor_ref`
94
+ # aggregate includes both `full_name` and `list_id`, `full_name` will be ignored.
95
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
96
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
97
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
98
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
99
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
100
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
101
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
102
+ # - `purchase_cost` (Numeric): Amount that the QuickBooks user expects to pay when ordering or
103
+ # buying this item, or the amount that was actually paid for this item.
104
+ # - `purchase_desc` (String): Appears in the Description column of checks, bills, credit card
105
+ # charges, and item receipts when this item is reordered.
106
+ # - `purchase_tax_code_ref` (Hash): Account used for taxes on purchases in CA or UK.
107
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
108
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
109
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
110
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
111
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
112
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
113
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
114
+ # - `quantity_on_hand` (Numeric): The number of these items in inventory. `quantity_on_hand`
115
+ # times `average_cost` is `total_value` in an inventory item list. To change the
116
+ # `quantity_on_hand` for an item, you would have to use InventoryAdjustmentAdd not an
117
+ # ItemInventoryMod.
118
+ # - `reorder_point` (Numeric): Quantity at which QuickBooks will remind the user to reorder
119
+ # this inventory item.
120
+ # - `request_id` (String): Your own label for the request, sent to QuickBooks as its qbXML
121
+ # `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's
122
+ # webhook already carries the request's `id`.
123
+ # - `sales_desc` (String): Appears in the Description column of a sales form when the
124
+ # QuickBooks user sells this item. For a fixed asset, describes the sale of the asset (for
125
+ # accounting purposes).
126
+ # - `sales_price` (Numeric): Price charged for this item.
127
+ # - `sales_tax_code_ref` (Hash): `sales_tax_code_ref` points to the sales-tax code used for an
128
+ # item or customer context. QuickBooks includes default TAX and NON codes, and a code can be
129
+ # deleted only when nothing references it. If sales tax is disabled, QuickBooks assigns the
130
+ # default non-taxable code. If both `full_name` and `list_id` are provided in
131
+ # `sales_tax_code_ref`, `full_name` is ignored.
132
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
133
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
134
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
135
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
136
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
137
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
138
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
139
+ # - `total_value` (Numeric): The total value of this inventory. If `total_value` is included,
140
+ # `quantity_on_hand` must also be included and must be greater than zero. If both
141
+ # `quantity_on_hand` and `purchase_cost` are included, then `total_value` will be set to
142
+ # `quantity_on_hand` times `purchase_cost`, regardless of what `total_value` is explicitly
143
+ # set to.
144
+ # - `unit_of_measure_set_ref` (Hash): The unit of measure set consists of a base unit and 0-n
145
+ # related units.
146
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
147
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
148
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
149
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
150
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
151
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
152
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
153
+ #
154
+ # @param connection_id [String]
155
+ # @param params [Hash] the fields above
156
+ # @param webhook_url [String] where QuBe Sync sends the answer
157
+ # @param idempotency_key [String, nil] made for the call when nil, and reused on its retries
158
+ # @return [Hash] the queued request
159
+ # @see https://docs.qubesync.com/api-reference/v2/item-inventories/create-item-inventory
160
+ def create(connection_id, params = {}, webhook_url:, idempotency_key: nil)
161
+ queue("item_inventory.create", connection_id, params, webhook_url: webhook_url, idempotency_key: idempotency_key)
162
+ end
163
+
164
+ # List item inventories: GET /connections/{connection_id}/item-inventories
165
+ # (`item_inventory.query`).
166
+ #
167
+ # QuickBooks answers in pages: one webhook per page, each with its `page`, the last with
168
+ # `iteration_state` `done`.
169
+ #
170
+ # Params, sent as the query string:
171
+ # - `active_status` (one of "ActiveOnly", "All", "InactiveOnly"): Used in filters to select
172
+ # list objects based on whether or not they are currently enabled for use by QuickBooks. The
173
+ # default value is asActiveOnly, which selects only list objects that are active. Choose at
174
+ # most one of: `list_id`, or `full_name`, or the set (`active_status`, `class_filter`,
175
+ # `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`,
176
+ # `to_modified_date`). Members of a set combine with each other, not with the other choices.
177
+ # - `class_filter` (Hash): Filters according to the object’s class. Choose at most one of:
178
+ # `list_id`, or `full_name`, or the set (`active_status`, `class_filter`,
179
+ # `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`,
180
+ # `to_modified_date`). Members of a set combine with each other, not with the other choices.
181
+ # Give at most one of: `list_id`, or `full_name`, or `list_id_with_children`, or
182
+ # `full_name_with_children`.
183
+ # - `full_name` (Array<String>): `full_name` (along with `list_id`) is a way to identify a
184
+ # list object. The `full_name` is the name prefixed by the names of each ancestor, for
185
+ # example Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
186
+ # - `full_name_with_children` (String): Allows you to filter for data that relates to the
187
+ # specified object and its descendants. For names that don’t have children,
188
+ # `full_name_with_children` is exactly the same as `full_name`.
189
+ # - `list_id` (Array<String>): `list_id` and `full_name` both identify a list object.
190
+ # QuickBooks assigns `list_id` when the object is created. `list_id` values are unique
191
+ # within a list type, not globally across all lists. If both `full_name` and `list_id` are
192
+ # supplied in a request, QuickBooks uses `list_id` and ignores `full_name`.
193
+ # - `list_id_with_children` (String): Allows you to filter for data that relates to the
194
+ # specified object and its descendants.
195
+ # - `from_modified_date` (String): Filters results to objects modified on or after this
196
+ # timestamp. QuickBooks Desktop accepts 1970-01-01 through 2038-01-19T03:14:07. If only a
197
+ # date is provided, time defaults to 00:00:00. Choose at most one of: `list_id`, or
198
+ # `full_name`, or the set (`active_status`, `class_filter`, `from_modified_date`,
199
+ # `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set
200
+ # combine with each other, not with the other choices.
201
+ # - `full_name` (Array<String>): `full_name` (along with `list_id`) is a way to identify a
202
+ # list object. The `full_name` is the name prefixed by the names of each ancestor, for
203
+ # example Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive. Choose at most
204
+ # one of: `list_id`, or `full_name`, or the set (`active_status`, `class_filter`,
205
+ # `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`,
206
+ # `to_modified_date`). Members of a set combine with each other, not with the other choices.
207
+ # - `include_ret_element` (Array<one of "AssetAccountRef", "AverageCost", "BarCodeValue",
208
+ # "COGSAccountRef", "ClassRef", "DataExtRet", "EditSequence", "ExternalGUID", "FullName",
209
+ # "IncomeAccountRef", "IsActive", "IsTaxIncluded", "ListID", "ManufacturerPartNumber",
210
+ # "Max", "Name", "ParentRef", "PrefVendorRef", "PurchaseCost", "PurchaseDesc",
211
+ # "PurchaseTaxCodeRef", "QuantityOnHand", "QuantityOnOrder", "QuantityOnSalesOrder",
212
+ # "ReorderPoint", "SalesDesc", "SalesPrice", "SalesTaxCodeRef", "Sublevel", "TimeCreated",
213
+ # "TimeModified", "UnitOfMeasureSetRef">)
214
+ # - `iterator` (Boolean): Page through every match: QuBe Sync asks QuickBooks for each page in
215
+ # turn and sends each to your `webhook_url` as it arrives, all with the same `id`. On by
216
+ # default, with pages of 100 records; send `iterator=true` with `max_returned` for another
217
+ # size. Off when you send `iterator=false` (every match in one answer) or `max_returned`
218
+ # alone (at most that many, in one answer). It pages a filtered query only: with `full_name`
219
+ # or `list_id` every match comes back in one answer, so leave `iterator` out.
220
+ # - `list_id` (Array<String>): `list_id` and `full_name` both identify a list object.
221
+ # QuickBooks assigns `list_id` when the object is created. `list_id` values are unique
222
+ # within a list type, not globally across all lists. If both `full_name` and `list_id` are
223
+ # supplied in a request, QuickBooks uses `list_id` and ignores `full_name`. Choose at most
224
+ # one of: `list_id`, or `full_name`, or the set (`active_status`, `class_filter`,
225
+ # `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`,
226
+ # `to_modified_date`). Members of a set combine with each other, not with the other choices.
227
+ # - `max_returned` (Integer): Limits the number of objects that a query returns. (To get a
228
+ # count of how many objects could possibly be returned, use the `meta_data` query
229
+ # attribute.) If you include a `max_returned` value, it must be at least 1. The page size,
230
+ # with `iterator=true`. Sent without `iterator`, or with `iterator=false`, it's a cap
231
+ # instead: at most this many records come back, in one answer, and QuickBooks doesn't say
232
+ # whether more matched. Choose at most one of: `list_id`, or `full_name`, or the set
233
+ # (`active_status`, `class_filter`, `from_modified_date`, `max_returned`, `name_filter`,
234
+ # `name_range_filter`, `to_modified_date`). Members of a set combine with each other, not
235
+ # with the other choices.
236
+ # - `meta_data` (one of "MetaDataAndResponseData", "MetaDataOnly", "NoMetaData"): Use the
237
+ # `meta_data` attribute to control whether query responses include counts. Options are
238
+ # NoMetaData (default), MetaDataOnly (count only), and MetaDataAndResponseData (count plus
239
+ # objects). Counts are approximate and may vary slightly if records are created or deleted
240
+ # during processing.
241
+ # - `name_filter` (Hash): Filters according to the object’s Name. Choose at most one of:
242
+ # `list_id`, or `full_name`, or the set (`active_status`, `class_filter`,
243
+ # `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`,
244
+ # `to_modified_date`). Members of a set combine with each other, not with the other choices.
245
+ # - `match_criterion` (one of "Contains", "EndsWith", "StartsWith", required): The criterion
246
+ # to match.
247
+ # - `name` (String, required): The string to match.
248
+ # - `name_range_filter` (Hash): Filters according to the object’s Name. Choose at most one of:
249
+ # `list_id`, or `full_name`, or the set (`active_status`, `class_filter`,
250
+ # `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`,
251
+ # `to_modified_date`). Members of a set combine with each other, not with the other choices.
252
+ # - `from_name` (String): The first name or item in the search range. If `from_name` is
253
+ # omitted, the range will begin with first name on the list.
254
+ # - `to_name` (String): The final name or item in the search range. If `to_name` is omitted,
255
+ # the range will end with last name on the list.
256
+ # - `owner_id` (Array<String>): `owner_id` identifies who owns the data extension. Use 0 for
257
+ # QuickBooks custom fields that appear in the UI, or use a GUID for private extensions owned
258
+ # by an app. Keep private GUIDs confidential unless you intentionally share extensions
259
+ # across apps. If you do share them, both apps must use the same `owner_id` and
260
+ # `data_ext_name`, because that pair uniquely identifies the extension.
261
+ # - `request_id` (String): Your own label for the request, sent to QuickBooks as its qbXML
262
+ # `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's
263
+ # webhook already carries the request's `id`.
264
+ # - `to_modified_date` (String): Filters results to objects modified on or before this
265
+ # timestamp. QuickBooks Desktop accepts 1970-01-01 through 2038-01-19T03:14:07. If only a
266
+ # date is provided, time defaults to end-of-day (23:59:59). Choose at most one of:
267
+ # `list_id`, or `full_name`, or the set (`active_status`, `class_filter`,
268
+ # `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`,
269
+ # `to_modified_date`). Members of a set combine with each other, not with the other choices.
270
+ #
271
+ # @param connection_id [String]
272
+ # @param params [Hash] the fields above
273
+ # @param webhook_url [String] where QuBe Sync sends the answer
274
+ # @param idempotency_key [String, nil] made for the call when nil, and reused on its retries
275
+ # @return [Hash] the queued request
276
+ # @see https://docs.qubesync.com/api-reference/v2/item-inventories/list-item-inventories
277
+ def query(connection_id, params = {}, webhook_url:, idempotency_key: nil)
278
+ queue("item_inventory.query", connection_id, params, webhook_url: webhook_url, idempotency_key: idempotency_key)
279
+ end
280
+
281
+ # Update item inventory: PUT /connections/{connection_id}/item-inventories
282
+ # (`item_inventory.update`).
283
+ #
284
+ # QuickBooks answers in one webhook.
285
+ #
286
+ # Params, sent as the JSON body:
287
+ # - `apply_cogs_account_ref_to_existing_txns` (Boolean): Effectively suppresses the UI prompt
288
+ # that is displayed upon a COGS account change when existing transactions use the account.
289
+ # - `apply_income_account_ref_to_existing_txns` (Boolean): Used to support changing the
290
+ # AccountRef in the Mod request. When you do this, the QuickBooks UI normally displays a
291
+ # prompt asking whether the change should apply to existing transactions or not. Specifying
292
+ # False basically dismisses this with a “No” answer; specifying True dismisses it with a
293
+ # “Yes” answer and then changes the existing transactions that use the item with that
294
+ # AccountRef.
295
+ # - `asset_account_ref` (Hash): Refers to the account QuickBooks uses to track the current
296
+ # value of the company’s inventory. (The AccountType of this account will be FixedAsset,
297
+ # OtherAsset, or OtherCurrentAsset.) In a request, if an `asset_account_ref` aggregate
298
+ # includes both `full_name` and `list_id`, `full_name` will be ignored.
299
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
300
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
301
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
302
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
303
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
304
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
305
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
306
+ # - `bar_code` (Hash): Barcode reference information.
307
+ # - `allow_override` (Boolean): Allows for barcode to be overridden for an item.
308
+ # - `assign_even_if_used` (Boolean): Allow barcode to be assigned to item, even if already
309
+ # in use.
310
+ # - `bar_code_value` (String): Value of the barcode in the item.
311
+ # - `class_ref` (Hash): Use classes to categorize transactions (for example, by department,
312
+ # location, or work type). Class tracking is off by default in QuickBooks. A `class_ref`
313
+ # points to one class; if both `full_name` and `list_id` are provided, `full_name` is
314
+ # ignored. In InvoiceAdd, a header-level `class_ref` is applied to line items unless you
315
+ # override or clear it on individual lines.
316
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
317
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
318
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
319
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
320
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
321
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
322
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
323
+ # - `cogs_account_ref` (Hash): Refers to the account that QuickBooks uses to track the
324
+ # original cost of goods that are eventually sold. (The AccountType of this account will be
325
+ # CostOfGoodsSold.) In a request, if a `cogs_account_ref` aggregate includes both
326
+ # `full_name` and `list_id`, `full_name` will be ignored.
327
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
328
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
329
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
330
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
331
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
332
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
333
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
334
+ # - `edit_sequence` (String, required): `edit_sequence` is a server-generated revision token.
335
+ # It changes each time the object is updated. To modify an existing object, you must send
336
+ # the current `edit_sequence`. If your value is stale, the update is rejected to prevent
337
+ # overwriting newer changes.
338
+ # - `force_uom_change` (Boolean): By Default `force_uom_change` is false. However, in item Mod
339
+ # requests, you need to set the `force_uom_change` field to True if you are changing the UOM
340
+ # set and the base unit of the new set doesn’t match the base unit of the UOM set currently
341
+ # assigned to the item. This does the same thing as the user accepting the warning prompt in
342
+ # the UI.
343
+ # - `include_ret_element` (Array<one of "AssetAccountRef", "AverageCost", "BarCodeValue",
344
+ # "COGSAccountRef", "ClassRef", "DataExtRet", "EditSequence", "ExternalGUID", "FullName",
345
+ # "IncomeAccountRef", "IsActive", "IsTaxIncluded", "ListID", "ManufacturerPartNumber",
346
+ # "Max", "Name", "OwnerID", "ParentRef", "PrefVendorRef", "PurchaseCost", "PurchaseDesc",
347
+ # "PurchaseTaxCodeRef", "QuantityOnHand", "QuantityOnOrder", "QuantityOnSalesOrder",
348
+ # "ReorderPoint", "SalesDesc", "SalesPrice", "SalesTaxCodeRef", "Sublevel", "TimeCreated",
349
+ # "TimeModified", "TxnID", "TxnNumber", "UnitOfMeasureSetRef">)
350
+ # - `income_account_ref` (Hash): Refers to an income account. If an `income_account_ref`
351
+ # aggregate includes both `full_name` and `list_id`, `full_name` will be ignored.
352
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
353
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
354
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
355
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
356
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
357
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
358
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
359
+ # - `is_active` (Boolean): If `is_active` is true, this object is currently enabled for use by
360
+ # QuickBooks. The default value is true.
361
+ # - `is_tax_included` (Boolean): For future use with international versions of QuickBooks.
362
+ # - `list_id` (String, required): `list_id` and `full_name` both identify a list object.
363
+ # QuickBooks assigns `list_id` when the object is created. `list_id` values are unique
364
+ # within a list type, not globally across all lists. If both `full_name` and `list_id` are
365
+ # supplied in a request, QuickBooks uses `list_id` and ignores `full_name`.
366
+ # - `manufacturer_part_number` (String): The part number used by the manufacturer of the item.
367
+ # - `max` (Numeric): Maximum number of items in inventory.
368
+ # - `name` (String): Name is the case-insensitive short name of a list object (without
369
+ # ancestors). It must be unique within its hierarchy scope. Hierarchical lists can reuse the
370
+ # same Name in different branches because `full_name` remains distinct.
371
+ # - `parent_ref` (Hash): A reference to the list object that is one level above this one. For
372
+ # example, an inventory item with the `full_name` of GermanCars:Mercedes-Benz:CL500I99AA
373
+ # might have a parent object with the `full_name` of GermanCars:Mercedes-Benz. In a request,
374
+ # if a `parent_ref` aggregate includes both `full_name` and `list_id`, `full_name` will be
375
+ # ignored.
376
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
377
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
378
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
379
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
380
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
381
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
382
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
383
+ # - `pref_vendor_ref` (Hash): The preferred vendor for this item. If a `pref_vendor_ref`
384
+ # aggregate includes both `full_name` and `list_id`, `full_name` will be ignored.
385
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
386
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
387
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
388
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
389
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
390
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
391
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
392
+ # - `purchase_cost` (Numeric): Amount that the QuickBooks user expects to pay when ordering or
393
+ # buying this item, or the amount that was actually paid for this item.
394
+ # - `purchase_desc` (String): Appears in the Description column of checks, bills, credit card
395
+ # charges, and item receipts when this item is reordered.
396
+ # - `purchase_tax_code_ref` (Hash): Account used for taxes on purchases in CA or UK.
397
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
398
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
399
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
400
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
401
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
402
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
403
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
404
+ # - `reorder_point` (Numeric): Quantity at which QuickBooks will remind the user to reorder
405
+ # this inventory item.
406
+ # - `request_id` (String): Your own label for the request, sent to QuickBooks as its qbXML
407
+ # `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's
408
+ # webhook already carries the request's `id`.
409
+ # - `sales_desc` (String): Appears in the Description column of a sales form when the
410
+ # QuickBooks user sells this item. For a fixed asset, describes the sale of the asset (for
411
+ # accounting purposes).
412
+ # - `sales_price` (Numeric): Price charged for this item.
413
+ # - `sales_tax_code_ref` (Hash): `sales_tax_code_ref` points to the sales-tax code used for an
414
+ # item or customer context. QuickBooks includes default TAX and NON codes, and a code can be
415
+ # deleted only when nothing references it. If sales tax is disabled, QuickBooks assigns the
416
+ # default non-taxable code. If both `full_name` and `list_id` are provided in
417
+ # `sales_tax_code_ref`, `full_name` is ignored.
418
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
419
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
420
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
421
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
422
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
423
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
424
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
425
+ # - `unit_of_measure_set_ref` (Hash): The unit of measure set consists of a base unit and 0-n
426
+ # related units.
427
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
428
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
429
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
430
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
431
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
432
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
433
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
434
+ #
435
+ # @param connection_id [String]
436
+ # @param params [Hash] the fields above
437
+ # @param webhook_url [String] where QuBe Sync sends the answer
438
+ # @param idempotency_key [String, nil] made for the call when nil, and reused on its retries
439
+ # @return [Hash] the queued request
440
+ # @see https://docs.qubesync.com/api-reference/v2/item-inventories/update-item-inventory
441
+ def update(connection_id, params = {}, webhook_url:, idempotency_key: nil)
442
+ queue("item_inventory.update", connection_id, params, webhook_url: webhook_url, idempotency_key: idempotency_key)
443
+ end
444
+ end
445
+ end
446
+ end