kintsugi_sdk 5.6.1 → 5.7.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 (312) hide show
  1. checksums.yaml +4 -4
  2. data/lib/kintsugi_sdk/addressvalidation.rb +8 -6
  3. data/lib/kintsugi_sdk/customers.rb +90 -88
  4. data/lib/kintsugi_sdk/exemptions.rb +60 -60
  5. data/lib/kintsugi_sdk/models/errors/{backend_src_products_responses_validationerrorresponse.rb → backend_src_products_schemas_responses_validationerrorresponse.rb} +3 -3
  6. data/lib/kintsugi_sdk/models/errors/backend_src_products_schemas_responses_validationerrorresponse.rbi +13 -0
  7. data/lib/kintsugi_sdk/models/errors.rb +1 -1
  8. data/lib/kintsugi_sdk/models/ops/{search_v1_address_validation_search_post_security.rb → country.rb} +3 -8
  9. data/lib/kintsugi_sdk/models/{shared/registration.rbi → ops/country.rbi} +2 -2
  10. data/lib/kintsugi_sdk/models/ops/country_code.rb +27 -0
  11. data/lib/kintsugi_sdk/models/ops/country_code.rbi +11 -0
  12. data/lib/kintsugi_sdk/models/ops/create_customer_v1_customers_post_request.rb +36 -0
  13. data/lib/kintsugi_sdk/models/ops/create_customer_v1_customers_post_request.rbi +15 -0
  14. data/lib/kintsugi_sdk/models/ops/create_exemption_v1_exemptions_post_request.rb +36 -0
  15. data/lib/kintsugi_sdk/models/ops/create_exemption_v1_exemptions_post_request.rbi +15 -0
  16. data/lib/kintsugi_sdk/models/ops/create_transaction_v1_transactions_post_request.rb +36 -0
  17. data/lib/kintsugi_sdk/models/ops/create_transaction_v1_transactions_post_request.rbi +15 -0
  18. data/lib/kintsugi_sdk/models/ops/createtransactionbycustomer_request.rb +6 -2
  19. data/lib/kintsugi_sdk/models/ops/createtransactionbycustomer_request.rbi +2 -0
  20. data/lib/kintsugi_sdk/models/ops/estimate_tax_v1_tax_estimate_post_request.rb +6 -2
  21. data/lib/kintsugi_sdk/models/ops/estimate_tax_v1_tax_estimate_post_request.rbi +2 -0
  22. data/lib/kintsugi_sdk/models/ops/get_customer_by_external_id_v1_customers_external_external_id_get_request.rb +6 -2
  23. data/lib/kintsugi_sdk/models/ops/get_customer_by_external_id_v1_customers_external_external_id_get_request.rbi +2 -0
  24. data/lib/kintsugi_sdk/models/ops/get_customer_by_id_v1_customers_customer_id_get_request.rb +6 -2
  25. data/lib/kintsugi_sdk/models/ops/get_customer_by_id_v1_customers_customer_id_get_request.rbi +2 -0
  26. data/lib/kintsugi_sdk/models/ops/get_customers_v1_request.rb +13 -5
  27. data/lib/kintsugi_sdk/models/ops/get_customers_v1_request.rbi +4 -0
  28. data/lib/kintsugi_sdk/models/ops/get_exemption_by_id_v1_exemptions_exemption_id_get_request.rb +6 -2
  29. data/lib/kintsugi_sdk/models/ops/get_exemption_by_id_v1_exemptions_exemption_id_get_request.rbi +2 -0
  30. data/lib/kintsugi_sdk/models/ops/get_exemptions_v1_exemptions_get_request.rb +17 -9
  31. data/lib/kintsugi_sdk/models/ops/get_exemptions_v1_exemptions_get_request.rbi +6 -2
  32. data/lib/kintsugi_sdk/models/ops/get_nexus_for_org_v1_nexus_get_request.rb +29 -13
  33. data/lib/kintsugi_sdk/models/ops/get_nexus_for_org_v1_nexus_get_request.rbi +14 -6
  34. data/lib/kintsugi_sdk/models/ops/get_nexus_for_org_v1_nexus_get_response_get_nexus_for_org_v1_nexus_get.rb +27 -0
  35. data/lib/kintsugi_sdk/models/ops/get_nexus_for_org_v1_nexus_get_response_get_nexus_for_org_v1_nexus_get.rbi +11 -0
  36. data/lib/kintsugi_sdk/models/ops/get_product_by_id_v1_products_product_id_get_request.rb +6 -2
  37. data/lib/kintsugi_sdk/models/ops/get_product_by_id_v1_products_product_id_get_request.rbi +2 -0
  38. data/lib/kintsugi_sdk/models/ops/get_transaction_by_id_v1_transactions_transaction_id_get_request.rb +6 -2
  39. data/lib/kintsugi_sdk/models/ops/get_transaction_by_id_v1_transactions_transaction_id_get_request.rbi +2 -0
  40. data/lib/kintsugi_sdk/models/ops/get_transactions_v1_transactions_get_request.rb +44 -18
  41. data/lib/kintsugi_sdk/models/ops/get_transactions_v1_transactions_get_request.rbi +14 -4
  42. data/lib/kintsugi_sdk/models/ops/getexemptionattachments_request.rb +6 -2
  43. data/lib/kintsugi_sdk/models/ops/getexemptionattachments_request.rbi +2 -0
  44. data/lib/kintsugi_sdk/models/ops/gettransactionbyexternalid_request.rb +6 -2
  45. data/lib/kintsugi_sdk/models/ops/gettransactionbyexternalid_request.rbi +2 -0
  46. data/lib/kintsugi_sdk/models/ops/gettransactionsbycustomer_request.rb +14 -2
  47. data/lib/kintsugi_sdk/models/ops/gettransactionsbycustomer_request.rbi +6 -0
  48. data/lib/kintsugi_sdk/models/ops/gettransactionsbycustomer_response_get_transactions_by_customer_id_v1_cus_6a2c85.rb +27 -0
  49. data/lib/kintsugi_sdk/models/ops/gettransactionsbycustomer_response_get_transactions_by_customer_id_v1_cus_6a2c85.rbi +11 -0
  50. data/lib/kintsugi_sdk/models/ops/gettransactionsbyfiling_request.rb +6 -2
  51. data/lib/kintsugi_sdk/models/ops/gettransactionsbyfiling_request.rbi +2 -0
  52. data/lib/kintsugi_sdk/models/ops/queryparam_country.rb +27 -0
  53. data/lib/kintsugi_sdk/models/ops/queryparam_country.rbi +11 -0
  54. data/lib/kintsugi_sdk/models/ops/suggestions_v1_address_validation_suggestions_post_request.rb +36 -0
  55. data/lib/kintsugi_sdk/models/ops/suggestions_v1_address_validation_suggestions_post_request.rbi +15 -0
  56. data/lib/kintsugi_sdk/models/ops/update_customer_v1_customers_customer_id_put_request.rb +6 -2
  57. data/lib/kintsugi_sdk/models/ops/update_customer_v1_customers_customer_id_put_request.rbi +2 -0
  58. data/lib/kintsugi_sdk/models/ops/update_product_v1_products_product_id_put_product.rb +27 -0
  59. data/lib/kintsugi_sdk/models/ops/update_product_v1_products_product_id_put_product.rbi +11 -0
  60. data/lib/kintsugi_sdk/models/ops/update_product_v1_products_product_id_put_request.rb +9 -5
  61. data/lib/kintsugi_sdk/models/ops/update_product_v1_products_product_id_put_request.rbi +4 -2
  62. data/lib/kintsugi_sdk/models/ops/update_transaction_v1_transactions_transaction_id_put_request.rb +6 -2
  63. data/lib/kintsugi_sdk/models/ops/update_transaction_v1_transactions_transaction_id_put_request.rbi +2 -0
  64. data/lib/kintsugi_sdk/models/ops/uploadexemptioncert_request.rb +6 -2
  65. data/lib/kintsugi_sdk/models/ops/uploadexemptioncert_request.rbi +2 -0
  66. data/lib/kintsugi_sdk/models/ops.rb +10 -1
  67. data/lib/kintsugi_sdk/models/shared/addressbase.rb +1 -1
  68. data/lib/kintsugi_sdk/models/shared/addresses.rb +7 -3
  69. data/lib/kintsugi_sdk/models/shared/addresses.rbi +2 -0
  70. data/lib/kintsugi_sdk/models/shared/amount.rb +27 -0
  71. data/lib/kintsugi_sdk/models/shared/amount.rbi +11 -0
  72. data/lib/kintsugi_sdk/models/shared/{backend_src_exemptions_models_exemptionread.rb → backend_src_exemptions_schemas_exemption_exemptionread.rb} +11 -10
  73. data/lib/kintsugi_sdk/models/shared/{backend_src_exemptions_models_exemptionread.rbi → backend_src_exemptions_schemas_exemption_exemptionread.rbi} +4 -4
  74. data/lib/kintsugi_sdk/models/shared/backend_src_exemptions_serializers_exemptionread.rb +9 -9
  75. data/lib/kintsugi_sdk/models/shared/backend_src_exemptions_serializers_exemptionread.rbi +2 -2
  76. data/lib/kintsugi_sdk/models/shared/{backend_src_products_responses_validationerroritem.rb → backend_src_products_schemas_responses_validationerroritem.rb} +1 -1
  77. data/lib/kintsugi_sdk/models/shared/{backend_src_products_responses_validationerroritem.rbi → backend_src_products_schemas_responses_validationerroritem.rbi} +2 -2
  78. data/lib/kintsugi_sdk/models/shared/body_upload_exemption_certificate_v1_exemptions_exemption_id_attachments_post.rb +2 -2
  79. data/lib/kintsugi_sdk/models/shared/{registration.rb → context.rb} +1 -1
  80. data/lib/kintsugi_sdk/models/shared/context.rbi +11 -0
  81. data/lib/kintsugi_sdk/models/shared/conversion_rate.rb +27 -0
  82. data/lib/kintsugi_sdk/models/shared/conversion_rate.rbi +11 -0
  83. data/lib/kintsugi_sdk/models/shared/converted_amount.rb +27 -0
  84. data/lib/kintsugi_sdk/models/shared/converted_amount.rbi +11 -0
  85. data/lib/kintsugi_sdk/models/shared/converted_subtotal.rb +27 -0
  86. data/lib/kintsugi_sdk/models/shared/converted_subtotal.rbi +11 -0
  87. data/lib/kintsugi_sdk/models/shared/converted_tax_amount_calculated.rb +27 -0
  88. data/lib/kintsugi_sdk/models/shared/converted_tax_amount_calculated.rbi +11 -0
  89. data/lib/kintsugi_sdk/models/shared/converted_tax_amount_imported.rb +27 -0
  90. data/lib/kintsugi_sdk/models/shared/converted_tax_amount_imported.rbi +11 -0
  91. data/lib/kintsugi_sdk/models/shared/converted_taxable_amount.rb +27 -0
  92. data/lib/kintsugi_sdk/models/shared/converted_taxable_amount.rbi +11 -0
  93. data/lib/kintsugi_sdk/models/shared/converted_total_amount.rb +27 -0
  94. data/lib/kintsugi_sdk/models/shared/converted_total_amount.rbi +11 -0
  95. data/lib/kintsugi_sdk/models/shared/converted_total_discount.rb +27 -0
  96. data/lib/kintsugi_sdk/models/shared/converted_total_discount.rbi +11 -0
  97. data/lib/kintsugi_sdk/models/shared/converted_total_tax_amount_calculated.rb +27 -0
  98. data/lib/kintsugi_sdk/models/shared/converted_total_tax_amount_calculated.rbi +11 -0
  99. data/lib/kintsugi_sdk/models/shared/converted_total_tax_amount_imported.rb +27 -0
  100. data/lib/kintsugi_sdk/models/shared/converted_total_tax_amount_imported.rbi +11 -0
  101. data/lib/kintsugi_sdk/models/shared/converted_total_tax_liability_amount.rb +27 -0
  102. data/lib/kintsugi_sdk/models/shared/converted_total_tax_liability_amount.rbi +11 -0
  103. data/lib/kintsugi_sdk/models/shared/customer.rb +27 -0
  104. data/lib/kintsugi_sdk/models/shared/customer.rbi +11 -0
  105. data/lib/kintsugi_sdk/models/shared/customerbase.rb +16 -12
  106. data/lib/kintsugi_sdk/models/shared/customerbase.rbi +6 -4
  107. data/lib/kintsugi_sdk/models/shared/customerbasebase.rb +16 -12
  108. data/lib/kintsugi_sdk/models/shared/customerbasebase.rbi +6 -4
  109. data/lib/kintsugi_sdk/models/shared/customerbasepublic.rb +16 -12
  110. data/lib/kintsugi_sdk/models/shared/customerbasepublic.rbi +6 -4
  111. data/lib/kintsugi_sdk/models/shared/customercreate.rb +20 -16
  112. data/lib/kintsugi_sdk/models/shared/customercreate.rbi +8 -6
  113. data/lib/kintsugi_sdk/models/shared/customerread.rb +24 -16
  114. data/lib/kintsugi_sdk/models/shared/customerread.rbi +10 -6
  115. data/lib/kintsugi_sdk/models/shared/customerupdate.rb +13 -9
  116. data/lib/kintsugi_sdk/models/shared/customerupdate.rbi +4 -2
  117. data/lib/kintsugi_sdk/models/shared/discount_amount.rb +27 -0
  118. data/lib/kintsugi_sdk/models/shared/discount_amount.rbi +11 -0
  119. data/lib/kintsugi_sdk/models/shared/discountbuilder.rb +6 -6
  120. data/lib/kintsugi_sdk/models/shared/discountbuilder.rbi +2 -2
  121. data/lib/kintsugi_sdk/models/shared/disregardedtypeenum.rb +20 -0
  122. data/lib/kintsugi_sdk/models/shared/disregardedtypeenum.rbi +11 -0
  123. data/lib/kintsugi_sdk/models/shared/documenttypeenum.rb +21 -0
  124. data/lib/kintsugi_sdk/models/shared/documenttypeenum.rbi +11 -0
  125. data/lib/kintsugi_sdk/models/shared/exemption.rb +23 -14
  126. data/lib/kintsugi_sdk/models/shared/exemption.rbi +8 -4
  127. data/lib/kintsugi_sdk/models/shared/exemptioncreate.rb +3 -3
  128. data/lib/kintsugi_sdk/models/shared/exemptionrequired.rb +22 -2
  129. data/lib/kintsugi_sdk/models/shared/exemptionrequired.rbi +10 -0
  130. data/lib/kintsugi_sdk/models/shared/exemptionsourceenum.rb +42 -0
  131. data/lib/kintsugi_sdk/models/shared/exemptionsourceenum.rbi +11 -0
  132. data/lib/kintsugi_sdk/models/shared/exemptiontype.rb +1 -0
  133. data/lib/kintsugi_sdk/models/shared/fastapi_pagination_default_page_exemptionread_2.rb +2 -2
  134. data/lib/kintsugi_sdk/models/shared/loc.rb +27 -0
  135. data/lib/kintsugi_sdk/models/shared/loc.rbi +11 -0
  136. data/lib/kintsugi_sdk/models/shared/nexusresponse.rb +112 -82
  137. data/lib/kintsugi_sdk/models/shared/nexusresponse.rbi +52 -40
  138. data/lib/kintsugi_sdk/models/shared/nexustypeenum.rb +1 -0
  139. data/lib/kintsugi_sdk/models/shared/periodmodelenum.rb +2 -0
  140. data/lib/kintsugi_sdk/models/shared/processingstatusenum.rb +1 -0
  141. data/lib/kintsugi_sdk/models/shared/productread.rb +40 -12
  142. data/lib/kintsugi_sdk/models/shared/productread.rbi +18 -4
  143. data/lib/kintsugi_sdk/models/shared/productstatusenum.rb +1 -0
  144. data/lib/kintsugi_sdk/models/shared/productupdate.rb +6 -6
  145. data/lib/kintsugi_sdk/models/shared/productupdate.rbi +2 -2
  146. data/lib/kintsugi_sdk/models/shared/productupdatev2.rb +64 -0
  147. data/lib/kintsugi_sdk/models/shared/productupdatev2.rbi +29 -0
  148. data/lib/kintsugi_sdk/models/shared/quantity.rb +27 -0
  149. data/lib/kintsugi_sdk/models/shared/quantity.rbi +11 -0
  150. data/lib/kintsugi_sdk/models/shared/quantity_of_the_product_.rb +27 -0
  151. data/lib/kintsugi_sdk/models/shared/quantity_of_the_product_.rbi +11 -0
  152. data/lib/kintsugi_sdk/models/shared/rate.rb +27 -0
  153. data/lib/kintsugi_sdk/models/shared/rate.rbi +11 -0
  154. data/lib/kintsugi_sdk/models/shared/security.rb +3 -7
  155. data/lib/kintsugi_sdk/models/shared/security.rbi +0 -2
  156. data/lib/kintsugi_sdk/models/shared/sourceenum.rb +15 -0
  157. data/lib/kintsugi_sdk/models/shared/tax_amount_calculated.rb +27 -0
  158. data/lib/kintsugi_sdk/models/shared/tax_amount_calculated.rbi +11 -0
  159. data/lib/kintsugi_sdk/models/shared/tax_amount_imported.rb +27 -0
  160. data/lib/kintsugi_sdk/models/shared/tax_amount_imported.rbi +11 -0
  161. data/lib/kintsugi_sdk/models/shared/tax_rate_calculated.rb +27 -0
  162. data/lib/kintsugi_sdk/models/shared/tax_rate_calculated.rbi +11 -0
  163. data/lib/kintsugi_sdk/models/shared/tax_rate_imported.rb +27 -0
  164. data/lib/kintsugi_sdk/models/shared/tax_rate_imported.rbi +11 -0
  165. data/lib/kintsugi_sdk/models/shared/taxable_amount.rb +27 -0
  166. data/lib/kintsugi_sdk/models/shared/taxable_amount.rbi +11 -0
  167. data/lib/kintsugi_sdk/models/shared/taxexemptionenum.rb +1 -0
  168. data/lib/kintsugi_sdk/models/shared/taxitembuilder.rb +14 -14
  169. data/lib/kintsugi_sdk/models/shared/taxitembuilder.rbi +4 -4
  170. data/lib/kintsugi_sdk/models/shared/taxitembuilder_amount.rb +27 -0
  171. data/lib/kintsugi_sdk/models/shared/taxitembuilder_amount.rbi +11 -0
  172. data/lib/kintsugi_sdk/models/shared/taxitembuilder_converted_amount.rb +27 -0
  173. data/lib/kintsugi_sdk/models/shared/taxitembuilder_converted_amount.rbi +11 -0
  174. data/lib/kintsugi_sdk/models/shared/taxitemestimate.rb +10 -10
  175. data/lib/kintsugi_sdk/models/shared/taxitemestimate.rbi +4 -4
  176. data/lib/kintsugi_sdk/models/shared/taxitemread.rb +10 -10
  177. data/lib/kintsugi_sdk/models/shared/taxitemread.rbi +4 -4
  178. data/lib/kintsugi_sdk/models/shared/taxitemreturnreasonenum.rb +1 -0
  179. data/lib/kintsugi_sdk/models/shared/taxtypeenum.rb +26 -0
  180. data/lib/kintsugi_sdk/models/shared/taxtypeenum.rbi +11 -0
  181. data/lib/kintsugi_sdk/models/shared/total_amount.rb +27 -0
  182. data/lib/kintsugi_sdk/models/shared/total_amount.rbi +11 -0
  183. data/lib/kintsugi_sdk/models/shared/total_amount_of_this_transaction_item_after_discounts_.rb +27 -0
  184. data/lib/kintsugi_sdk/models/shared/total_amount_of_this_transaction_item_after_discounts_.rbi +11 -0
  185. data/lib/kintsugi_sdk/models/shared/total_tax_amount_calculated.rb +27 -0
  186. data/lib/kintsugi_sdk/models/shared/total_tax_amount_calculated.rbi +11 -0
  187. data/lib/kintsugi_sdk/models/shared/total_tax_amount_imported.rb +27 -0
  188. data/lib/kintsugi_sdk/models/shared/total_tax_amount_imported.rbi +11 -0
  189. data/lib/kintsugi_sdk/models/shared/total_tax_liability_amount.rb +27 -0
  190. data/lib/kintsugi_sdk/models/shared/total_tax_liability_amount.rbi +11 -0
  191. data/lib/kintsugi_sdk/models/shared/transactionaddressbuilder.rb +11 -7
  192. data/lib/kintsugi_sdk/models/shared/transactionaddressbuilder.rbi +4 -2
  193. data/lib/kintsugi_sdk/models/shared/transactionaddresspublic.rb +8 -4
  194. data/lib/kintsugi_sdk/models/shared/transactionaddresspublic.rbi +2 -0
  195. data/lib/kintsugi_sdk/models/shared/transactionaddressread_output.rb +11 -7
  196. data/lib/kintsugi_sdk/models/shared/transactionaddressread_output.rbi +4 -2
  197. data/lib/kintsugi_sdk/models/shared/transactioncreate.rb +84 -78
  198. data/lib/kintsugi_sdk/models/shared/transactioncreate.rbi +34 -28
  199. data/lib/kintsugi_sdk/models/shared/transactiondirectionenum.rb +19 -0
  200. data/lib/kintsugi_sdk/models/shared/transactiondirectionenum.rbi +11 -0
  201. data/lib/kintsugi_sdk/models/shared/transactionestimatepublicrequest.rb +9 -7
  202. data/lib/kintsugi_sdk/models/shared/transactionestimatepublicrequest.rbi +2 -2
  203. data/lib/kintsugi_sdk/models/shared/transactionestimateresponse.rb +10 -8
  204. data/lib/kintsugi_sdk/models/shared/transactionestimateresponse.rbi +2 -2
  205. data/lib/kintsugi_sdk/models/shared/transactionestimateresponse_addresses.rb +7 -3
  206. data/lib/kintsugi_sdk/models/shared/transactionestimateresponse_addresses.rbi +2 -0
  207. data/lib/kintsugi_sdk/models/shared/transactionimportcustomer.rb +104 -0
  208. data/lib/kintsugi_sdk/models/shared/transactionimportcustomer.rbi +49 -0
  209. data/lib/kintsugi_sdk/models/shared/transactionitembuilder.rb +53 -53
  210. data/lib/kintsugi_sdk/models/shared/transactionitembuilder.rbi +20 -20
  211. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_amount.rb +27 -0
  212. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_amount.rbi +11 -0
  213. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_converted_amount.rb +27 -0
  214. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_converted_amount.rbi +11 -0
  215. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_converted_subtotal.rb +27 -0
  216. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_converted_subtotal.rbi +11 -0
  217. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_converted_tax_amount_calculated.rb +27 -0
  218. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_converted_tax_amount_calculated.rbi +11 -0
  219. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_converted_tax_amount_imported.rb +27 -0
  220. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_converted_tax_amount_imported.rbi +11 -0
  221. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_converted_taxable_amount.rb +27 -0
  222. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_converted_taxable_amount.rbi +11 -0
  223. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_converted_total_discount.rb +27 -0
  224. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_converted_total_discount.rbi +11 -0
  225. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_quantity.rb +27 -0
  226. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_quantity.rbi +11 -0
  227. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_tax_amount_calculated.rb +27 -0
  228. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_tax_amount_calculated.rbi +11 -0
  229. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_tax_amount_imported.rb +27 -0
  230. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_tax_amount_imported.rbi +11 -0
  231. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_tax_rate_calculated.rb +27 -0
  232. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_tax_rate_calculated.rbi +11 -0
  233. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_tax_rate_imported.rb +27 -0
  234. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_tax_rate_imported.rbi +11 -0
  235. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_taxable_amount.rb +27 -0
  236. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_taxable_amount.rbi +11 -0
  237. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate.rb +53 -53
  238. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate.rbi +20 -20
  239. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate_converted_subtotal.rb +27 -0
  240. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate_converted_subtotal.rbi +11 -0
  241. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate_converted_taxable_amount.rb +27 -0
  242. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate_converted_taxable_amount.rbi +11 -0
  243. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate_converted_total_discount.rb +27 -0
  244. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate_converted_total_discount.rbi +11 -0
  245. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate_tax_rate_calculated.rb +27 -0
  246. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate_tax_rate_calculated.rbi +11 -0
  247. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate_tax_rate_imported.rb +27 -0
  248. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate_tax_rate_imported.rbi +11 -0
  249. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate_taxable_amount.rb +27 -0
  250. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate_taxable_amount.rbi +11 -0
  251. data/lib/kintsugi_sdk/models/shared/transactionitemestimatebase.rb +17 -7
  252. data/lib/kintsugi_sdk/models/shared/transactionitemestimatebase.rbi +4 -2
  253. data/lib/kintsugi_sdk/models/shared/transactionitemestimateresponse.rb +20 -10
  254. data/lib/kintsugi_sdk/models/shared/transactionitemestimateresponse.rbi +6 -4
  255. data/lib/kintsugi_sdk/models/shared/transactionitemread.rb +51 -43
  256. data/lib/kintsugi_sdk/models/shared/transactionitemread.rbi +22 -18
  257. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest.rb +64 -62
  258. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest.rbi +28 -24
  259. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_tax_rate_calculated.rb +27 -0
  260. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_tax_rate_calculated.rbi +11 -0
  261. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_tax_rate_imported.rb +27 -0
  262. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_tax_rate_imported.rbi +11 -0
  263. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_taxable_amount.rb +27 -0
  264. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_taxable_amount.rbi +11 -0
  265. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_total_amount.rb +27 -0
  266. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_total_amount.rbi +11 -0
  267. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_total_tax_amount_calculated.rb +27 -0
  268. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_total_tax_amount_calculated.rbi +11 -0
  269. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_total_tax_amount_imported.rb +27 -0
  270. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_total_tax_amount_imported.rbi +11 -0
  271. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_total_tax_liability_amount.rb +27 -0
  272. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_total_tax_liability_amount.rbi +11 -0
  273. data/lib/kintsugi_sdk/models/shared/transactionread.rb +89 -71
  274. data/lib/kintsugi_sdk/models/shared/transactionread.rbi +40 -28
  275. data/lib/kintsugi_sdk/models/shared/transactiontypeenum.rb +1 -0
  276. data/lib/kintsugi_sdk/models/shared/transactionupdate.rb +63 -61
  277. data/lib/kintsugi_sdk/models/shared/transactionupdate.rbi +28 -24
  278. data/lib/kintsugi_sdk/models/shared/transactionupdate_tax_rate_calculated.rb +27 -0
  279. data/lib/kintsugi_sdk/models/shared/transactionupdate_tax_rate_calculated.rbi +11 -0
  280. data/lib/kintsugi_sdk/models/shared/transactionupdate_tax_rate_imported.rb +27 -0
  281. data/lib/kintsugi_sdk/models/shared/transactionupdate_tax_rate_imported.rbi +11 -0
  282. data/lib/kintsugi_sdk/models/shared/transactionupdate_taxable_amount.rb +27 -0
  283. data/lib/kintsugi_sdk/models/shared/transactionupdate_taxable_amount.rbi +11 -0
  284. data/lib/kintsugi_sdk/models/shared/transactionupdate_total_amount.rb +27 -0
  285. data/lib/kintsugi_sdk/models/shared/transactionupdate_total_amount.rbi +11 -0
  286. data/lib/kintsugi_sdk/models/shared/transactionupdate_total_tax_amount_calculated.rb +27 -0
  287. data/lib/kintsugi_sdk/models/shared/transactionupdate_total_tax_amount_calculated.rbi +11 -0
  288. data/lib/kintsugi_sdk/models/shared/transactionupdate_total_tax_amount_imported.rb +27 -0
  289. data/lib/kintsugi_sdk/models/shared/transactionupdate_total_tax_amount_imported.rbi +11 -0
  290. data/lib/kintsugi_sdk/models/shared/transactionupdate_total_tax_liability_amount.rb +27 -0
  291. data/lib/kintsugi_sdk/models/shared/transactionupdate_total_tax_liability_amount.rbi +11 -0
  292. data/lib/kintsugi_sdk/models/shared/validationaddress.rb +12 -12
  293. data/lib/kintsugi_sdk/models/shared/validationaddress.rbi +4 -4
  294. data/lib/kintsugi_sdk/models/shared/validationerror.rb +11 -3
  295. data/lib/kintsugi_sdk/models/shared/validationerror.rbi +4 -0
  296. data/lib/kintsugi_sdk/models/shared.rb +73 -5
  297. data/lib/kintsugi_sdk/nexus.rb +4 -4
  298. data/lib/kintsugi_sdk/openapisdk.rb +5 -5
  299. data/lib/kintsugi_sdk/products.rb +11 -9
  300. data/lib/kintsugi_sdk/sdkconfiguration.rb +8 -8
  301. data/lib/kintsugi_sdk/taxestimation.rb +6 -6
  302. data/lib/kintsugi_sdk/transactions.rb +73 -73
  303. data/lib/kintsugi_sdk/utils/retries.rb +41 -2
  304. data/lib/kintsugi_sdk/utils/utils.rb +6 -2
  305. data/lib/kintsugi_sdk.rb +1 -1
  306. metadata +170 -16
  307. data/lib/kintsugi_sdk/models/errors/backend_src_products_responses_validationerrorresponse.rbi +0 -13
  308. data/lib/kintsugi_sdk/models/ops/search_v1_address_validation_search_post_security.rbi +0 -13
  309. data/lib/kintsugi_sdk/models/shared/file.rb +0 -36
  310. data/lib/kintsugi_sdk/models/shared/file.rbi +0 -15
  311. data/lib/kintsugi_sdk/models/shared/page_transactionestimateresponse_.rb +0 -48
  312. data/lib/kintsugi_sdk/models/shared/page_transactionestimateresponse_.rbi +0 -21
@@ -16,6 +16,12 @@ module KintsugiSDK
16
16
  field :id, ::String, { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('id'), required: true } }
17
17
  # Unique identifier for the organization associated with the customer. Required.
18
18
  field :organization_id, ::String, { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('organization_id'), required: true } }
19
+
20
+ field :status, Crystalline::Nilable.new(Models::Shared::StatusEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('status'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::StatusEnum, true) } }
21
+
22
+ field :address_status, Crystalline::Nilable.new(Models::Shared::AddressStatus), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('address_status'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::AddressStatus, true) } }
23
+ # Customer tax registrations associated with the customer.
24
+ field :customer_tax_registrations, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::CustomerTaxRegistrationRead)), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('customer_tax_registrations') } }
19
25
  # Customer's phone number
20
26
  field :phone, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('phone') } }
21
27
  # Primary street address.
@@ -30,7 +36,7 @@ module KintsugiSDK
30
36
  field :state, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('state') } }
31
37
  # ZIP or Postal code of the customer.
32
38
  field :postal_code, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('postal_code') } }
33
-
39
+ # Country code in ISO 3166-1 alpha-2 format
34
40
  field :country, Crystalline::Nilable.new(Models::Shared::CountryCodeEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('country'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::CountryCodeEnum, true) } }
35
41
  # Complete address string of the customer, which can be used as an alternative to individual fields.
36
42
  field :full_address, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('full_address') } }
@@ -38,27 +44,28 @@ module KintsugiSDK
38
44
  field :name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('name') } }
39
45
  # External identifier associated with the customer.
40
46
  field :external_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('external_id') } }
41
-
42
- field :status, Crystalline::Nilable.new(Models::Shared::StatusEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('status'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::StatusEnum, true) } }
43
47
  # Customer's email address
44
48
  field :email, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('email') } }
45
-
49
+ # Registered or legal business name of the customer.
50
+ field :company_name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('company_name') } }
51
+ # Source of the customer's record.
46
52
  field :source, Crystalline::Nilable.new(Models::Shared::SourceEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('source'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::SourceEnum, true) } }
47
53
  # Identifier for the connection source, if applicable.
48
54
  field :connection_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('connection_id') } }
49
-
50
- field :address_status, Crystalline::Nilable.new(Models::Shared::AddressStatus), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('address_status'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::AddressStatus, true) } }
51
55
  # Registration number of the customer.
52
56
  field :registration_number, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('registration_number') } }
53
57
  # External friendly identifier associated with the customer. We need it for netsuite.
54
58
  field :external_friendly_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('external_friendly_id') } }
55
- # Customer tax registrations associated with the customer.
56
- field :customer_tax_registrations, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::CustomerTaxRegistrationRead)), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('customer_tax_registrations') } }
59
+ # Store name resolved from the customer's connection, if available.
60
+ field :store_name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('store_name') } }
57
61
 
58
- sig { params(id: ::String, organization_id: ::String, phone: T.nilable(::String), street_1: T.nilable(::String), street_2: T.nilable(::String), city: T.nilable(::String), county: T.nilable(::String), state: T.nilable(::String), postal_code: T.nilable(::String), country: T.nilable(Models::Shared::CountryCodeEnum), full_address: T.nilable(::String), name: T.nilable(::String), external_id: T.nilable(::String), status: T.nilable(Models::Shared::StatusEnum), email: T.nilable(::String), source: T.nilable(Models::Shared::SourceEnum), connection_id: T.nilable(::String), address_status: T.nilable(Models::Shared::AddressStatus), registration_number: T.nilable(::String), external_friendly_id: T.nilable(::String), customer_tax_registrations: T.nilable(T::Array[Models::Shared::CustomerTaxRegistrationRead])).void }
59
- def initialize(id:, organization_id:, phone: nil, street_1: nil, street_2: nil, city: nil, county: nil, state: nil, postal_code: nil, country: nil, full_address: nil, name: nil, external_id: nil, status: nil, email: nil, source: nil, connection_id: nil, address_status: nil, registration_number: nil, external_friendly_id: nil, customer_tax_registrations: nil)
62
+ sig { params(id: ::String, organization_id: ::String, status: T.nilable(Models::Shared::StatusEnum), address_status: T.nilable(Models::Shared::AddressStatus), customer_tax_registrations: T.nilable(T::Array[Models::Shared::CustomerTaxRegistrationRead]), phone: T.nilable(::String), street_1: T.nilable(::String), street_2: T.nilable(::String), city: T.nilable(::String), county: T.nilable(::String), state: T.nilable(::String), postal_code: T.nilable(::String), country: T.nilable(Models::Shared::CountryCodeEnum), full_address: T.nilable(::String), name: T.nilable(::String), external_id: T.nilable(::String), email: T.nilable(::String), company_name: T.nilable(::String), source: T.nilable(Models::Shared::SourceEnum), connection_id: T.nilable(::String), registration_number: T.nilable(::String), external_friendly_id: T.nilable(::String), store_name: T.nilable(::String)).void }
63
+ def initialize(id:, organization_id:, status: nil, address_status: nil, customer_tax_registrations: nil, phone: nil, street_1: nil, street_2: nil, city: nil, county: nil, state: nil, postal_code: nil, country: nil, full_address: nil, name: nil, external_id: nil, email: nil, company_name: nil, source: nil, connection_id: nil, registration_number: nil, external_friendly_id: nil, store_name: nil)
60
64
  @id = id
61
65
  @organization_id = organization_id
66
+ @status = status
67
+ @address_status = address_status
68
+ @customer_tax_registrations = customer_tax_registrations
62
69
  @phone = phone
63
70
  @street_1 = street_1
64
71
  @street_2 = street_2
@@ -70,14 +77,13 @@ module KintsugiSDK
70
77
  @full_address = full_address
71
78
  @name = name
72
79
  @external_id = external_id
73
- @status = status
74
80
  @email = email
81
+ @company_name = company_name
75
82
  @source = source
76
83
  @connection_id = connection_id
77
- @address_status = address_status
78
84
  @registration_number = registration_number
79
85
  @external_friendly_id = external_friendly_id
80
- @customer_tax_registrations = customer_tax_registrations
86
+ @store_name = store_name
81
87
  end
82
88
 
83
89
  sig { params(other: T.untyped).returns(T::Boolean) }
@@ -85,6 +91,9 @@ module KintsugiSDK
85
91
  return false unless other.is_a? self.class
86
92
  return false unless @id == other.id
87
93
  return false unless @organization_id == other.organization_id
94
+ return false unless @status == other.status
95
+ return false unless @address_status == other.address_status
96
+ return false unless @customer_tax_registrations == other.customer_tax_registrations
88
97
  return false unless @phone == other.phone
89
98
  return false unless @street_1 == other.street_1
90
99
  return false unless @street_2 == other.street_2
@@ -96,14 +105,13 @@ module KintsugiSDK
96
105
  return false unless @full_address == other.full_address
97
106
  return false unless @name == other.name
98
107
  return false unless @external_id == other.external_id
99
- return false unless @status == other.status
100
108
  return false unless @email == other.email
109
+ return false unless @company_name == other.company_name
101
110
  return false unless @source == other.source
102
111
  return false unless @connection_id == other.connection_id
103
- return false unless @address_status == other.address_status
104
112
  return false unless @registration_number == other.registration_number
105
113
  return false unless @external_friendly_id == other.external_friendly_id
106
- return false unless @customer_tax_registrations == other.customer_tax_registrations
114
+ return false unless @store_name == other.store_name
107
115
  true
108
116
  end
109
117
  end
@@ -12,6 +12,12 @@ class KintsugiSDK::Models::Shared::CustomerRead
12
12
  def id=(str_); end
13
13
  def organization_id(); end
14
14
  def organization_id=(str_); end
15
+ def status(); end
16
+ def status=(str_); end
17
+ def address_status(); end
18
+ def address_status=(str_); end
19
+ def customer_tax_registrations(); end
20
+ def customer_tax_registrations=(str_); end
15
21
  def phone(); end
16
22
  def phone=(str_); end
17
23
  def street_1(); end
@@ -34,20 +40,18 @@ class KintsugiSDK::Models::Shared::CustomerRead
34
40
  def name=(str_); end
35
41
  def external_id(); end
36
42
  def external_id=(str_); end
37
- def status(); end
38
- def status=(str_); end
39
43
  def email(); end
40
44
  def email=(str_); end
45
+ def company_name(); end
46
+ def company_name=(str_); end
41
47
  def source(); end
42
48
  def source=(str_); end
43
49
  def connection_id(); end
44
50
  def connection_id=(str_); end
45
- def address_status(); end
46
- def address_status=(str_); end
47
51
  def registration_number(); end
48
52
  def registration_number=(str_); end
49
53
  def external_friendly_id(); end
50
54
  def external_friendly_id=(str_); end
51
- def customer_tax_registrations(); end
52
- def customer_tax_registrations=(str_); end
55
+ def store_name(); end
56
+ def store_name=(str_); end
53
57
  end
@@ -12,6 +12,8 @@ module KintsugiSDK
12
12
  extend T::Sig
13
13
  include Crystalline::MetadataFields
14
14
 
15
+
16
+ field :address_status, Crystalline::Nilable.new(Models::Shared::AddressStatus), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('address_status'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::AddressStatus, true) } }
15
17
  # Phone number associated with the customer.
16
18
  field :phone, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('phone') } }
17
19
  # Primary street address.
@@ -26,27 +28,28 @@ module KintsugiSDK
26
28
  field :state, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('state') } }
27
29
  # ZIP or Postal code of the customer.
28
30
  field :postal_code, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('postal_code') } }
29
-
31
+ # Country code in ISO 3166-1 alpha-2 format
30
32
  field :country, Crystalline::Nilable.new(Models::Shared::CountryCodeEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('country'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::CountryCodeEnum, true) } }
31
33
  # Complete address string of the customer, which can be used as an alternative to individual fields.
32
34
  field :full_address, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('full_address') } }
33
35
  # Name of the customer.
34
36
  field :name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('name') } }
35
-
37
+ # Status of the customer.
36
38
  field :status, Crystalline::Nilable.new(Models::Shared::StatusEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('status'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::StatusEnum, true) } }
37
39
  # Email address of the customer.
38
40
  field :email, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('email') } }
39
-
41
+ # Registered or legal business name of the customer.
42
+ field :company_name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('company_name') } }
43
+ # Source of the customer's record
40
44
  field :source, Crystalline::Nilable.new(Models::Shared::SourceEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('source'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::SourceEnum, true) } }
41
-
42
- field :address_status, Crystalline::Nilable.new(Models::Shared::AddressStatus), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('address_status'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::AddressStatus, true) } }
43
45
  # External identifier associated with the customer
44
46
  field :external_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('external_id') } }
45
47
  # External friendly identifier associated with the customer. We need it for netsuite.
46
48
  field :external_friendly_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('external_friendly_id') } }
47
49
 
48
- sig { params(phone: T.nilable(::String), street_1: T.nilable(::String), street_2: T.nilable(::String), city: T.nilable(::String), county: T.nilable(::String), state: T.nilable(::String), postal_code: T.nilable(::String), country: T.nilable(Models::Shared::CountryCodeEnum), full_address: T.nilable(::String), name: T.nilable(::String), status: T.nilable(Models::Shared::StatusEnum), email: T.nilable(::String), source: T.nilable(Models::Shared::SourceEnum), address_status: T.nilable(Models::Shared::AddressStatus), external_id: T.nilable(::String), external_friendly_id: T.nilable(::String)).void }
49
- def initialize(phone: nil, street_1: nil, street_2: nil, city: nil, county: nil, state: nil, postal_code: nil, country: nil, full_address: nil, name: nil, status: nil, email: nil, source: nil, address_status: nil, external_id: nil, external_friendly_id: nil)
50
+ sig { params(address_status: T.nilable(Models::Shared::AddressStatus), phone: T.nilable(::String), street_1: T.nilable(::String), street_2: T.nilable(::String), city: T.nilable(::String), county: T.nilable(::String), state: T.nilable(::String), postal_code: T.nilable(::String), country: T.nilable(Models::Shared::CountryCodeEnum), full_address: T.nilable(::String), name: T.nilable(::String), status: T.nilable(Models::Shared::StatusEnum), email: T.nilable(::String), company_name: T.nilable(::String), source: T.nilable(Models::Shared::SourceEnum), external_id: T.nilable(::String), external_friendly_id: T.nilable(::String)).void }
51
+ def initialize(address_status: nil, phone: nil, street_1: nil, street_2: nil, city: nil, county: nil, state: nil, postal_code: nil, country: nil, full_address: nil, name: nil, status: nil, email: nil, company_name: nil, source: nil, external_id: nil, external_friendly_id: nil)
52
+ @address_status = address_status
50
53
  @phone = phone
51
54
  @street_1 = street_1
52
55
  @street_2 = street_2
@@ -59,8 +62,8 @@ module KintsugiSDK
59
62
  @name = name
60
63
  @status = status
61
64
  @email = email
65
+ @company_name = company_name
62
66
  @source = source
63
- @address_status = address_status
64
67
  @external_id = external_id
65
68
  @external_friendly_id = external_friendly_id
66
69
  end
@@ -68,6 +71,7 @@ module KintsugiSDK
68
71
  sig { params(other: T.untyped).returns(T::Boolean) }
69
72
  def ==(other)
70
73
  return false unless other.is_a? self.class
74
+ return false unless @address_status == other.address_status
71
75
  return false unless @phone == other.phone
72
76
  return false unless @street_1 == other.street_1
73
77
  return false unless @street_2 == other.street_2
@@ -80,8 +84,8 @@ module KintsugiSDK
80
84
  return false unless @name == other.name
81
85
  return false unless @status == other.status
82
86
  return false unless @email == other.email
87
+ return false unless @company_name == other.company_name
83
88
  return false unless @source == other.source
84
- return false unless @address_status == other.address_status
85
89
  return false unless @external_id == other.external_id
86
90
  return false unless @external_friendly_id == other.external_friendly_id
87
91
  true
@@ -8,6 +8,8 @@ end
8
8
 
9
9
 
10
10
  class KintsugiSDK::Models::Shared::CustomerUpdate
11
+ def address_status(); end
12
+ def address_status=(str_); end
11
13
  def phone(); end
12
14
  def phone=(str_); end
13
15
  def street_1(); end
@@ -32,10 +34,10 @@ class KintsugiSDK::Models::Shared::CustomerUpdate
32
34
  def status=(str_); end
33
35
  def email(); end
34
36
  def email=(str_); end
37
+ def company_name(); end
38
+ def company_name=(str_); end
35
39
  def source(); end
36
40
  def source=(str_); end
37
- def address_status(); end
38
- def address_status=(str_); end
39
41
  def external_id(); end
40
42
  def external_id=(str_); end
41
43
  def external_friendly_id(); end
@@ -0,0 +1,27 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module KintsugiSDK
8
+ module Models
9
+ module Shared
10
+ # Absolute discount amount for the line or transaction. Send a positive value for sales; credit notes may use a negative value so subtotal = amount + total_discount stays coherent.
11
+ class DiscountAmount
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+
16
+
17
+ def initialize; end
18
+
19
+ sig { params(other: T.untyped).returns(T::Boolean) }
20
+ def ==(other)
21
+ return false unless other.is_a? self.class
22
+ true
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,11 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class KintsugiSDK::Models::Shared::DiscountAmount
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class KintsugiSDK::Models::Shared::DiscountAmount
11
+ end
@@ -14,24 +14,24 @@ module KintsugiSDK
14
14
 
15
15
 
16
16
  field :applied_to, Models::Shared::AppliedTo, { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('applied_to'), required: true, 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::AppliedTo, false) } }
17
+ # Absolute discount amount for the line or transaction. Send a positive value for sales; credit notes may use a negative value so subtotal = amount + total_discount stays coherent.
18
+ field :discount_amount, Crystalline::Nilable.new(Crystalline::Union.new(::Float, ::String)), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('discount_amount') } }
17
19
 
18
20
  field :external_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('external_id') } }
19
21
 
20
- field :discount_amount, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('discount_amount') } }
21
-
22
- sig { params(applied_to: Models::Shared::AppliedTo, external_id: T.nilable(::String), discount_amount: T.nilable(::Float)).void }
23
- def initialize(applied_to:, external_id: nil, discount_amount: 0.0)
22
+ sig { params(applied_to: Models::Shared::AppliedTo, discount_amount: T.nilable(T.any(::Float, ::String)), external_id: T.nilable(::String)).void }
23
+ def initialize(applied_to:, discount_amount: nil, external_id: nil)
24
24
  @applied_to = applied_to
25
- @external_id = external_id
26
25
  @discount_amount = discount_amount
26
+ @external_id = external_id
27
27
  end
28
28
 
29
29
  sig { params(other: T.untyped).returns(T::Boolean) }
30
30
  def ==(other)
31
31
  return false unless other.is_a? self.class
32
32
  return false unless @applied_to == other.applied_to
33
- return false unless @external_id == other.external_id
34
33
  return false unless @discount_amount == other.discount_amount
34
+ return false unless @external_id == other.external_id
35
35
  true
36
36
  end
37
37
  end
@@ -10,8 +10,8 @@ end
10
10
  class KintsugiSDK::Models::Shared::DiscountBuilder
11
11
  def applied_to(); end
12
12
  def applied_to=(str_); end
13
- def external_id(); end
14
- def external_id=(str_); end
15
13
  def discount_amount(); end
16
14
  def discount_amount=(str_); end
15
+ def external_id(); end
16
+ def external_id=(str_); end
17
17
  end
@@ -0,0 +1,20 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module KintsugiSDK
8
+ module Models
9
+ module Shared
10
+
11
+ class DisregardedTypeEnum < T::Enum
12
+ enums do
13
+ DISREGARDED = new('DISREGARDED')
14
+ IOR_OPT_OUT = new('IOR_OPT_OUT')
15
+ IOR_OPT_OUT_NON_PHYSICAL_GOODS = new('IOR_OPT_OUT_NON_PHYSICAL_GOODS')
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,11 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class KintsugiSDK::Models::Shared::DisregardedTypeEnum
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class KintsugiSDK::Models::Shared::DisregardedTypeEnum
11
+ end
@@ -0,0 +1,21 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module KintsugiSDK
8
+ module Models
9
+ module Shared
10
+
11
+ class DocumentTypeEnum < T::Enum
12
+ enums do
13
+ INVOICE = new('INVOICE')
14
+ SALES_ORDER = new('SALES_ORDER')
15
+ CASH_SALE = new('CASH_SALE')
16
+ CASH_REFUND = new('CASH_REFUND')
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,11 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class KintsugiSDK::Models::Shared::DocumentTypeEnum
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class KintsugiSDK::Models::Shared::DocumentTypeEnum
11
+ end
@@ -20,48 +20,55 @@ module KintsugiSDK
20
20
  field :id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('id') } }
21
21
  # Timestamp when transaction was created in Kintsugi.
22
22
  field :created_at, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('created_at'), 'decoder': ::KintsugiSDK::Utils.datetime_from_iso_format(true) } }
23
+
24
+ field :organization_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('organization_id') } }
23
25
  # Timestamp when transaction was last updated.
24
- field :updated_at, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('updated_at') } }
26
+ field :updated_at, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('updated_at'), 'decoder': ::KintsugiSDK::Utils.datetime_from_iso_format(true) } }
25
27
  # The jurisdiction identifier for the exemption
26
28
  field :jurisdiction, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('jurisdiction') } }
27
-
29
+ # Country code in ISO 3166-1 alpha-2 format (e.g., 'US')
28
30
  field :country_code, Crystalline::Nilable.new(Models::Shared::CountryCodeEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('country_code'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::CountryCodeEnum, true) } }
29
31
  # End date for the exemption validity period (YYYY-MM-DD format)
30
- field :end_date, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('end_date') } }
32
+ field :end_date, Crystalline::Nilable.new(::Date), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('end_date'), 'decoder': ::KintsugiSDK::Utils.date_from_iso_format(true) } }
31
33
  # Unique identifier for the customer associated with the exemption
32
34
  field :customer_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('customer_id') } }
33
35
  # Unique identifier for the transaction
34
36
  # associated with the exemption, if applicable.
35
37
  field :transaction_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('transaction_id') } }
38
+ # Indicates whether the exemption is for a reseller
39
+ field :reseller, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('reseller') } }
36
40
  # Federal Employer Identification Number
37
41
  # associated with the exemption.
38
42
  field :fein, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('FEIN') } }
39
43
  # Sales tax ID for the exemption
40
44
  field :sales_tax_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('sales_tax_id') } }
41
-
45
+ # The status of the exemption.
46
+ # Defaults to ACTIVE if not provided.
42
47
  field :status, Crystalline::Nilable.new(Models::Shared::ExemptionStatus), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('status'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::ExemptionStatus, true) } }
48
+ # FK to bulk-imported certificate; NULL for manually-created exemptions
49
+ field :certificate_import_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('certificate_import_id') } }
50
+ # Source of exemption.
51
+ field :source, Crystalline::Nilable.new(Models::Shared::ExemptionSourceEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('source'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::ExemptionSourceEnum, true) } }
43
52
 
44
- field :organization_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('organization_id') } }
45
- # Indicates whether the exemption is for a reseller
46
- field :reseller, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('reseller') } }
47
-
48
- sig { params(exemption_type: Models::Shared::ExemptionType, start_date: ::Date, id: T.nilable(::String), created_at: T.nilable(::DateTime), updated_at: T.nilable(::String), jurisdiction: T.nilable(::String), country_code: T.nilable(Models::Shared::CountryCodeEnum), end_date: T.nilable(::String), customer_id: T.nilable(::String), transaction_id: T.nilable(::String), fein: T.nilable(::String), sales_tax_id: T.nilable(::String), status: T.nilable(Models::Shared::ExemptionStatus), organization_id: T.nilable(::String), reseller: T.nilable(T::Boolean)).void }
49
- def initialize(exemption_type:, start_date:, id: nil, created_at: nil, updated_at: nil, jurisdiction: nil, country_code: nil, end_date: nil, customer_id: nil, transaction_id: nil, fein: nil, sales_tax_id: nil, status: nil, organization_id: nil, reseller: false)
53
+ sig { params(exemption_type: Models::Shared::ExemptionType, start_date: ::Date, id: T.nilable(::String), created_at: T.nilable(::DateTime), organization_id: T.nilable(::String), updated_at: T.nilable(::DateTime), jurisdiction: T.nilable(::String), country_code: T.nilable(Models::Shared::CountryCodeEnum), end_date: T.nilable(::Date), customer_id: T.nilable(::String), transaction_id: T.nilable(::String), reseller: T.nilable(T::Boolean), fein: T.nilable(::String), sales_tax_id: T.nilable(::String), status: T.nilable(Models::Shared::ExemptionStatus), certificate_import_id: T.nilable(::String), source: T.nilable(Models::Shared::ExemptionSourceEnum)).void }
54
+ def initialize(exemption_type:, start_date:, id: nil, created_at: nil, organization_id: nil, updated_at: nil, jurisdiction: nil, country_code: nil, end_date: nil, customer_id: nil, transaction_id: nil, reseller: false, fein: nil, sales_tax_id: nil, status: nil, certificate_import_id: nil, source: nil)
50
55
  @exemption_type = exemption_type
51
56
  @start_date = start_date
52
57
  @id = id
53
58
  @created_at = created_at
59
+ @organization_id = organization_id
54
60
  @updated_at = updated_at
55
61
  @jurisdiction = jurisdiction
56
62
  @country_code = country_code
57
63
  @end_date = end_date
58
64
  @customer_id = customer_id
59
65
  @transaction_id = transaction_id
66
+ @reseller = reseller
60
67
  @fein = fein
61
68
  @sales_tax_id = sales_tax_id
62
69
  @status = status
63
- @organization_id = organization_id
64
- @reseller = reseller
70
+ @certificate_import_id = certificate_import_id
71
+ @source = source
65
72
  end
66
73
 
67
74
  sig { params(other: T.untyped).returns(T::Boolean) }
@@ -71,17 +78,19 @@ module KintsugiSDK
71
78
  return false unless @start_date == other.start_date
72
79
  return false unless @id == other.id
73
80
  return false unless @created_at == other.created_at
81
+ return false unless @organization_id == other.organization_id
74
82
  return false unless @updated_at == other.updated_at
75
83
  return false unless @jurisdiction == other.jurisdiction
76
84
  return false unless @country_code == other.country_code
77
85
  return false unless @end_date == other.end_date
78
86
  return false unless @customer_id == other.customer_id
79
87
  return false unless @transaction_id == other.transaction_id
88
+ return false unless @reseller == other.reseller
80
89
  return false unless @fein == other.fein
81
90
  return false unless @sales_tax_id == other.sales_tax_id
82
91
  return false unless @status == other.status
83
- return false unless @organization_id == other.organization_id
84
- return false unless @reseller == other.reseller
92
+ return false unless @certificate_import_id == other.certificate_import_id
93
+ return false unless @source == other.source
85
94
  true
86
95
  end
87
96
  end
@@ -16,6 +16,8 @@ class KintsugiSDK::Models::Shared::Exemption
16
16
  def id=(str_); end
17
17
  def created_at(); end
18
18
  def created_at=(str_); end
19
+ def organization_id(); end
20
+ def organization_id=(str_); end
19
21
  def updated_at(); end
20
22
  def updated_at=(str_); end
21
23
  def jurisdiction(); end
@@ -28,14 +30,16 @@ class KintsugiSDK::Models::Shared::Exemption
28
30
  def customer_id=(str_); end
29
31
  def transaction_id(); end
30
32
  def transaction_id=(str_); end
33
+ def reseller(); end
34
+ def reseller=(str_); end
31
35
  def fein(); end
32
36
  def fein=(str_); end
33
37
  def sales_tax_id(); end
34
38
  def sales_tax_id=(str_); end
35
39
  def status(); end
36
40
  def status=(str_); end
37
- def organization_id(); end
38
- def organization_id=(str_); end
39
- def reseller(); end
40
- def reseller=(str_); end
41
+ def certificate_import_id(); end
42
+ def certificate_import_id=(str_); end
43
+ def source(); end
44
+ def source=(str_); end
41
45
  end
@@ -26,16 +26,16 @@ module KintsugiSDK
26
26
  field :status, Models::Shared::ExemptionStatus, { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('status'), required: true, 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::ExemptionStatus, false) } }
27
27
  # The jurisdiction identifier for the exemption
28
28
  field :jurisdiction, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('jurisdiction') } }
29
-
29
+ # Country code in ISO 3166-1 alpha-2 format (e.g., 'US')
30
30
  field :country_code, Crystalline::Nilable.new(Models::Shared::CountryCodeEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('country_code'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::CountryCodeEnum, true) } }
31
31
  # End date for the exemption validity period (YYYY-MM-DD format)
32
- field :end_date, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('end_date') } }
32
+ field :end_date, Crystalline::Nilable.new(::Date), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('end_date'), 'decoder': ::KintsugiSDK::Utils.date_from_iso_format(true) } }
33
33
  # Unique identifier for the transaction, if applicable
34
34
  field :transaction_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('transaction_id') } }
35
35
  # Indicates whether the exemption is for a reseller
36
36
  field :reseller, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('reseller') } }
37
37
 
38
- sig { params(exemption_type: Models::Shared::ExemptionType, start_date: ::Date, customer_id: ::String, fein: ::String, sales_tax_id: ::String, status: Models::Shared::ExemptionStatus, jurisdiction: T.nilable(::String), country_code: T.nilable(Models::Shared::CountryCodeEnum), end_date: T.nilable(::String), transaction_id: T.nilable(::String), reseller: T.nilable(T::Boolean)).void }
38
+ sig { params(exemption_type: Models::Shared::ExemptionType, start_date: ::Date, customer_id: ::String, fein: ::String, sales_tax_id: ::String, status: Models::Shared::ExemptionStatus, jurisdiction: T.nilable(::String), country_code: T.nilable(Models::Shared::CountryCodeEnum), end_date: T.nilable(::Date), transaction_id: T.nilable(::String), reseller: T.nilable(T::Boolean)).void }
39
39
  def initialize(exemption_type:, start_date:, customer_id:, fein:, sales_tax_id:, status:, jurisdiction: nil, country_code: nil, end_date: nil, transaction_id: nil, reseller: false)
40
40
  @exemption_type = exemption_type
41
41
  @start_date = start_date
@@ -29,8 +29,18 @@ module KintsugiSDK
29
29
 
30
30
  field :customer_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('customer_id') } }
31
31
 
32
- sig { params(organization_id: ::String, exemption_type: Models::Shared::ExemptionType, start_date: ::DateTime, status: Models::Shared::ExemptionStatus, reseller: T::Boolean, jurisdiction: T.nilable(::String), customer_id: T.nilable(::String)).void }
33
- def initialize(organization_id:, exemption_type:, start_date:, status:, reseller:, jurisdiction: nil, customer_id: nil)
32
+ field :country_code, Crystalline::Nilable.new(Models::Shared::CountryCodeEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('country_code'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::CountryCodeEnum, true) } }
33
+
34
+ field :end_date, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('end_date'), 'decoder': ::KintsugiSDK::Utils.datetime_from_iso_format(true) } }
35
+
36
+ field :fein, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('FEIN') } }
37
+
38
+ field :sales_tax_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('sales_tax_id') } }
39
+
40
+ field :source, Crystalline::Nilable.new(Models::Shared::ExemptionSourceEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('source'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::ExemptionSourceEnum, true) } }
41
+
42
+ sig { params(organization_id: ::String, exemption_type: Models::Shared::ExemptionType, start_date: ::DateTime, status: Models::Shared::ExemptionStatus, reseller: T::Boolean, jurisdiction: T.nilable(::String), customer_id: T.nilable(::String), country_code: T.nilable(Models::Shared::CountryCodeEnum), end_date: T.nilable(::DateTime), fein: T.nilable(::String), sales_tax_id: T.nilable(::String), source: T.nilable(Models::Shared::ExemptionSourceEnum)).void }
43
+ def initialize(organization_id:, exemption_type:, start_date:, status:, reseller:, jurisdiction: nil, customer_id: nil, country_code: nil, end_date: nil, fein: nil, sales_tax_id: nil, source: nil)
34
44
  @organization_id = organization_id
35
45
  @exemption_type = exemption_type
36
46
  @start_date = start_date
@@ -38,6 +48,11 @@ module KintsugiSDK
38
48
  @reseller = reseller
39
49
  @jurisdiction = jurisdiction
40
50
  @customer_id = customer_id
51
+ @country_code = country_code
52
+ @end_date = end_date
53
+ @fein = fein
54
+ @sales_tax_id = sales_tax_id
55
+ @source = source
41
56
  end
42
57
 
43
58
  sig { params(other: T.untyped).returns(T::Boolean) }
@@ -50,6 +65,11 @@ module KintsugiSDK
50
65
  return false unless @reseller == other.reseller
51
66
  return false unless @jurisdiction == other.jurisdiction
52
67
  return false unless @customer_id == other.customer_id
68
+ return false unless @country_code == other.country_code
69
+ return false unless @end_date == other.end_date
70
+ return false unless @fein == other.fein
71
+ return false unless @sales_tax_id == other.sales_tax_id
72
+ return false unless @source == other.source
53
73
  true
54
74
  end
55
75
  end
@@ -22,4 +22,14 @@ class KintsugiSDK::Models::Shared::ExemptionRequired
22
22
  def jurisdiction=(str_); end
23
23
  def customer_id(); end
24
24
  def customer_id=(str_); end
25
+ def country_code(); end
26
+ def country_code=(str_); end
27
+ def end_date(); end
28
+ def end_date=(str_); end
29
+ def fein(); end
30
+ def fein=(str_); end
31
+ def sales_tax_id(); end
32
+ def sales_tax_id=(str_); end
33
+ def source(); end
34
+ def source=(str_); end
25
35
  end