kintsugi_sdk 5.6.0 → 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 (371) hide show
  1. checksums.yaml +4 -4
  2. data/lib/crystalline/types.rb +11 -3
  3. data/lib/kintsugi_sdk/addressvalidation.rb +26 -16
  4. data/lib/kintsugi_sdk/customers.rb +148 -123
  5. data/lib/kintsugi_sdk/exemptions.rb +102 -85
  6. data/lib/kintsugi_sdk/models/errors/apierror.rbi +2 -1
  7. data/lib/kintsugi_sdk/models/errors/backend_src_address_validation_responses_validationerrorresponse.rbi +1 -1
  8. data/lib/kintsugi_sdk/models/errors/backend_src_customers_responses_validationerrorresponse.rbi +1 -1
  9. data/lib/kintsugi_sdk/models/errors/backend_src_exemptions_responses_validationerrorresponse.rbi +1 -1
  10. data/lib/kintsugi_sdk/models/errors/{backend_src_products_responses_validationerrorresponse.rb → backend_src_products_schemas_responses_validationerrorresponse.rb} +3 -3
  11. data/lib/kintsugi_sdk/models/errors/backend_src_products_schemas_responses_validationerrorresponse.rbi +13 -0
  12. data/lib/kintsugi_sdk/models/errors/backend_src_tax_estimation_responses_validationerrorresponse.rbi +1 -1
  13. data/lib/kintsugi_sdk/models/errors/backend_src_transactions_responses_validationerrorresponse.rbi +1 -1
  14. data/lib/kintsugi_sdk/models/errors/errorresponse.rbi +1 -1
  15. data/lib/kintsugi_sdk/models/errors/httpvalidationerror.rbi +1 -1
  16. data/lib/kintsugi_sdk/models/errors.rb +1 -1
  17. data/lib/kintsugi_sdk/models/ops/{search_v1_address_validation_search_post_security.rb → country.rb} +3 -8
  18. data/lib/kintsugi_sdk/models/{shared/registration.rbi → ops/country.rbi} +3 -3
  19. data/lib/kintsugi_sdk/models/ops/country_code.rb +27 -0
  20. data/lib/kintsugi_sdk/models/ops/country_code.rbi +11 -0
  21. data/lib/kintsugi_sdk/models/ops/create_customer_v1_customers_post_request.rb +36 -0
  22. data/lib/kintsugi_sdk/models/ops/create_customer_v1_customers_post_request.rbi +15 -0
  23. data/lib/kintsugi_sdk/models/ops/create_exemption_v1_exemptions_post_request.rb +36 -0
  24. data/lib/kintsugi_sdk/models/ops/create_exemption_v1_exemptions_post_request.rbi +15 -0
  25. data/lib/kintsugi_sdk/models/ops/create_transaction_v1_transactions_post_request.rb +36 -0
  26. data/lib/kintsugi_sdk/models/ops/create_transaction_v1_transactions_post_request.rbi +15 -0
  27. data/lib/kintsugi_sdk/models/ops/createtransactionbycustomer_request.rb +6 -2
  28. data/lib/kintsugi_sdk/models/ops/createtransactionbycustomer_request.rbi +3 -1
  29. data/lib/kintsugi_sdk/models/ops/estimate_tax_v1_tax_estimate_post_request.rb +6 -2
  30. data/lib/kintsugi_sdk/models/ops/estimate_tax_v1_tax_estimate_post_request.rbi +3 -1
  31. data/lib/kintsugi_sdk/models/ops/get_customer_by_external_id_v1_customers_external_external_id_get_request.rb +6 -2
  32. data/lib/kintsugi_sdk/models/ops/get_customer_by_external_id_v1_customers_external_external_id_get_request.rbi +3 -1
  33. data/lib/kintsugi_sdk/models/ops/get_customer_by_id_v1_customers_customer_id_get_request.rb +6 -2
  34. data/lib/kintsugi_sdk/models/ops/get_customer_by_id_v1_customers_customer_id_get_request.rbi +3 -1
  35. data/lib/kintsugi_sdk/models/ops/get_customers_v1_request.rb +13 -5
  36. data/lib/kintsugi_sdk/models/ops/get_customers_v1_request.rbi +5 -1
  37. data/lib/kintsugi_sdk/models/ops/get_exemption_by_id_v1_exemptions_exemption_id_get_request.rb +6 -2
  38. data/lib/kintsugi_sdk/models/ops/get_exemption_by_id_v1_exemptions_exemption_id_get_request.rbi +3 -1
  39. data/lib/kintsugi_sdk/models/ops/get_exemptions_v1_exemptions_get_request.rb +17 -9
  40. data/lib/kintsugi_sdk/models/ops/get_exemptions_v1_exemptions_get_request.rbi +7 -3
  41. data/lib/kintsugi_sdk/models/ops/get_nexus_for_org_v1_nexus_get_request.rb +29 -13
  42. data/lib/kintsugi_sdk/models/ops/get_nexus_for_org_v1_nexus_get_request.rbi +15 -7
  43. data/lib/kintsugi_sdk/models/ops/get_nexus_for_org_v1_nexus_get_response_get_nexus_for_org_v1_nexus_get.rb +27 -0
  44. data/lib/kintsugi_sdk/models/ops/get_nexus_for_org_v1_nexus_get_response_get_nexus_for_org_v1_nexus_get.rbi +11 -0
  45. data/lib/kintsugi_sdk/models/ops/get_product_by_id_v1_products_product_id_get_request.rb +6 -2
  46. data/lib/kintsugi_sdk/models/ops/get_product_by_id_v1_products_product_id_get_request.rbi +3 -1
  47. data/lib/kintsugi_sdk/models/ops/get_transaction_by_id_v1_transactions_transaction_id_get_request.rb +6 -2
  48. data/lib/kintsugi_sdk/models/ops/get_transaction_by_id_v1_transactions_transaction_id_get_request.rbi +3 -1
  49. data/lib/kintsugi_sdk/models/ops/get_transactions_v1_transactions_get_request.rb +44 -18
  50. data/lib/kintsugi_sdk/models/ops/get_transactions_v1_transactions_get_request.rbi +15 -5
  51. data/lib/kintsugi_sdk/models/ops/getexemptionattachments_request.rb +6 -2
  52. data/lib/kintsugi_sdk/models/ops/getexemptionattachments_request.rbi +3 -1
  53. data/lib/kintsugi_sdk/models/ops/gettransactionbyexternalid_request.rb +6 -2
  54. data/lib/kintsugi_sdk/models/ops/gettransactionbyexternalid_request.rbi +3 -1
  55. data/lib/kintsugi_sdk/models/ops/gettransactionsbycustomer_request.rb +14 -2
  56. data/lib/kintsugi_sdk/models/ops/gettransactionsbycustomer_request.rbi +7 -1
  57. data/lib/kintsugi_sdk/models/ops/gettransactionsbycustomer_response_get_transactions_by_customer_id_v1_cus_6a2c85.rb +27 -0
  58. data/lib/kintsugi_sdk/models/ops/gettransactionsbycustomer_response_get_transactions_by_customer_id_v1_cus_6a2c85.rbi +11 -0
  59. data/lib/kintsugi_sdk/models/ops/gettransactionsbyfiling_request.rb +6 -2
  60. data/lib/kintsugi_sdk/models/ops/gettransactionsbyfiling_request.rbi +3 -1
  61. data/lib/kintsugi_sdk/models/ops/queryparam_country.rb +27 -0
  62. data/lib/kintsugi_sdk/models/ops/queryparam_country.rbi +11 -0
  63. data/lib/kintsugi_sdk/models/ops/suggestions_v1_address_validation_suggestions_post_request.rb +36 -0
  64. data/lib/kintsugi_sdk/models/ops/suggestions_v1_address_validation_suggestions_post_request.rbi +15 -0
  65. data/lib/kintsugi_sdk/models/ops/update_customer_v1_customers_customer_id_put_request.rb +6 -2
  66. data/lib/kintsugi_sdk/models/ops/update_customer_v1_customers_customer_id_put_request.rbi +3 -1
  67. data/lib/kintsugi_sdk/models/ops/update_product_v1_products_product_id_put_product.rb +27 -0
  68. data/lib/kintsugi_sdk/models/ops/update_product_v1_products_product_id_put_product.rbi +11 -0
  69. data/lib/kintsugi_sdk/models/ops/update_product_v1_products_product_id_put_request.rb +9 -5
  70. data/lib/kintsugi_sdk/models/ops/update_product_v1_products_product_id_put_request.rbi +5 -3
  71. data/lib/kintsugi_sdk/models/ops/update_transaction_v1_transactions_transaction_id_put_request.rb +6 -2
  72. data/lib/kintsugi_sdk/models/ops/update_transaction_v1_transactions_transaction_id_put_request.rbi +3 -1
  73. data/lib/kintsugi_sdk/models/ops/uploadexemptioncert_request.rb +6 -2
  74. data/lib/kintsugi_sdk/models/ops/uploadexemptioncert_request.rbi +3 -1
  75. data/lib/kintsugi_sdk/models/ops.rb +10 -1
  76. data/lib/kintsugi_sdk/models/shared/addressbase.rb +1 -1
  77. data/lib/kintsugi_sdk/models/shared/addressbase.rbi +1 -1
  78. data/lib/kintsugi_sdk/models/shared/addresses.rb +7 -3
  79. data/lib/kintsugi_sdk/models/shared/addresses.rbi +3 -1
  80. data/lib/kintsugi_sdk/models/shared/addressresponsedata.rbi +1 -1
  81. data/lib/kintsugi_sdk/models/shared/addresssearchresponse.rbi +1 -1
  82. data/lib/kintsugi_sdk/models/shared/addressstatus.rbi +1 -1
  83. data/lib/kintsugi_sdk/models/shared/addresssubmittedresponse.rbi +1 -1
  84. data/lib/kintsugi_sdk/models/shared/addresstype.rbi +1 -1
  85. data/lib/kintsugi_sdk/models/shared/amount.rb +27 -0
  86. data/lib/kintsugi_sdk/models/shared/amount.rbi +11 -0
  87. data/lib/kintsugi_sdk/models/shared/appliedto.rbi +1 -1
  88. data/lib/kintsugi_sdk/models/shared/attachmentread.rbi +1 -1
  89. data/lib/kintsugi_sdk/models/shared/backend_src_address_validation_responses_validationerroritem.rbi +1 -1
  90. data/lib/kintsugi_sdk/models/shared/backend_src_customers_responses_validationerroritem.rbi +1 -1
  91. data/lib/kintsugi_sdk/models/shared/backend_src_exemptions_responses_validationerroritem.rbi +1 -1
  92. data/lib/kintsugi_sdk/models/shared/{backend_src_exemptions_models_exemptionread.rb → backend_src_exemptions_schemas_exemption_exemptionread.rb} +11 -10
  93. data/lib/kintsugi_sdk/models/shared/{backend_src_exemptions_models_exemptionread.rbi → backend_src_exemptions_schemas_exemption_exemptionread.rbi} +5 -5
  94. data/lib/kintsugi_sdk/models/shared/backend_src_exemptions_serializers_exemptionread.rb +9 -9
  95. data/lib/kintsugi_sdk/models/shared/backend_src_exemptions_serializers_exemptionread.rbi +3 -3
  96. data/lib/kintsugi_sdk/models/shared/{backend_src_products_responses_validationerroritem.rb → backend_src_products_schemas_responses_validationerroritem.rb} +1 -1
  97. data/lib/kintsugi_sdk/models/shared/{backend_src_products_responses_validationerroritem.rbi → backend_src_products_schemas_responses_validationerroritem.rbi} +3 -3
  98. data/lib/kintsugi_sdk/models/shared/backend_src_tax_estimation_responses_validationerroritem.rbi +1 -1
  99. data/lib/kintsugi_sdk/models/shared/backend_src_transactions_responses_validationerroritem.rbi +1 -1
  100. data/lib/kintsugi_sdk/models/shared/body_upload_exemption_certificate_v1_exemptions_exemption_id_attachments_post.rb +2 -2
  101. data/lib/kintsugi_sdk/models/shared/body_upload_exemption_certificate_v1_exemptions_exemption_id_attachments_post.rbi +1 -1
  102. data/lib/kintsugi_sdk/models/shared/{registration.rb → context.rb} +1 -1
  103. data/lib/kintsugi_sdk/models/shared/context.rbi +11 -0
  104. data/lib/kintsugi_sdk/models/shared/conversion_rate.rb +27 -0
  105. data/lib/kintsugi_sdk/models/shared/conversion_rate.rbi +11 -0
  106. data/lib/kintsugi_sdk/models/shared/converted_amount.rb +27 -0
  107. data/lib/kintsugi_sdk/models/shared/converted_amount.rbi +11 -0
  108. data/lib/kintsugi_sdk/models/shared/converted_subtotal.rb +27 -0
  109. data/lib/kintsugi_sdk/models/shared/converted_subtotal.rbi +11 -0
  110. data/lib/kintsugi_sdk/models/shared/converted_tax_amount_calculated.rb +27 -0
  111. data/lib/kintsugi_sdk/models/shared/converted_tax_amount_calculated.rbi +11 -0
  112. data/lib/kintsugi_sdk/models/shared/converted_tax_amount_imported.rb +27 -0
  113. data/lib/kintsugi_sdk/models/shared/converted_tax_amount_imported.rbi +11 -0
  114. data/lib/kintsugi_sdk/models/shared/converted_taxable_amount.rb +27 -0
  115. data/lib/kintsugi_sdk/models/shared/converted_taxable_amount.rbi +11 -0
  116. data/lib/kintsugi_sdk/models/shared/converted_total_amount.rb +27 -0
  117. data/lib/kintsugi_sdk/models/shared/converted_total_amount.rbi +11 -0
  118. data/lib/kintsugi_sdk/models/shared/converted_total_discount.rb +27 -0
  119. data/lib/kintsugi_sdk/models/shared/converted_total_discount.rbi +11 -0
  120. data/lib/kintsugi_sdk/models/shared/converted_total_tax_amount_calculated.rb +27 -0
  121. data/lib/kintsugi_sdk/models/shared/converted_total_tax_amount_calculated.rbi +11 -0
  122. data/lib/kintsugi_sdk/models/shared/converted_total_tax_amount_imported.rb +27 -0
  123. data/lib/kintsugi_sdk/models/shared/converted_total_tax_amount_imported.rbi +11 -0
  124. data/lib/kintsugi_sdk/models/shared/converted_total_tax_liability_amount.rb +27 -0
  125. data/lib/kintsugi_sdk/models/shared/converted_total_tax_liability_amount.rbi +11 -0
  126. data/lib/kintsugi_sdk/models/shared/countrycodeenum.rbi +1 -1
  127. data/lib/kintsugi_sdk/models/shared/currencyenum.rbi +1 -1
  128. data/lib/kintsugi_sdk/models/shared/customer.rb +27 -0
  129. data/lib/kintsugi_sdk/models/shared/customer.rbi +11 -0
  130. data/lib/kintsugi_sdk/models/shared/customerbase.rb +16 -12
  131. data/lib/kintsugi_sdk/models/shared/customerbase.rbi +7 -5
  132. data/lib/kintsugi_sdk/models/shared/customerbasebase.rb +16 -12
  133. data/lib/kintsugi_sdk/models/shared/customerbasebase.rbi +7 -5
  134. data/lib/kintsugi_sdk/models/shared/customerbasepublic.rb +16 -12
  135. data/lib/kintsugi_sdk/models/shared/customerbasepublic.rbi +7 -5
  136. data/lib/kintsugi_sdk/models/shared/customercreate.rb +20 -16
  137. data/lib/kintsugi_sdk/models/shared/customercreate.rbi +9 -7
  138. data/lib/kintsugi_sdk/models/shared/customerread.rb +24 -16
  139. data/lib/kintsugi_sdk/models/shared/customerread.rbi +11 -7
  140. data/lib/kintsugi_sdk/models/shared/customertaxregistrationread.rbi +1 -1
  141. data/lib/kintsugi_sdk/models/shared/customertaxtypeenum.rbi +1 -1
  142. data/lib/kintsugi_sdk/models/shared/customerupdate.rb +13 -9
  143. data/lib/kintsugi_sdk/models/shared/customerupdate.rbi +5 -3
  144. data/lib/kintsugi_sdk/models/shared/discount_amount.rb +27 -0
  145. data/lib/kintsugi_sdk/models/shared/discount_amount.rbi +11 -0
  146. data/lib/kintsugi_sdk/models/shared/discountbuilder.rb +6 -6
  147. data/lib/kintsugi_sdk/models/shared/discountbuilder.rbi +3 -3
  148. data/lib/kintsugi_sdk/models/shared/disregardedtypeenum.rb +20 -0
  149. data/lib/kintsugi_sdk/models/shared/disregardedtypeenum.rbi +11 -0
  150. data/lib/kintsugi_sdk/models/shared/documenttypeenum.rb +21 -0
  151. data/lib/kintsugi_sdk/models/shared/documenttypeenum.rbi +11 -0
  152. data/lib/kintsugi_sdk/models/shared/exemption.rb +23 -14
  153. data/lib/kintsugi_sdk/models/shared/exemption.rbi +9 -5
  154. data/lib/kintsugi_sdk/models/shared/exemptioncreate.rb +3 -3
  155. data/lib/kintsugi_sdk/models/shared/exemptioncreate.rbi +1 -1
  156. data/lib/kintsugi_sdk/models/shared/exemptionrequired.rb +22 -2
  157. data/lib/kintsugi_sdk/models/shared/exemptionrequired.rbi +11 -1
  158. data/lib/kintsugi_sdk/models/shared/exemptionsourceenum.rb +42 -0
  159. data/lib/kintsugi_sdk/models/shared/exemptionsourceenum.rbi +11 -0
  160. data/lib/kintsugi_sdk/models/shared/exemptionstatus.rbi +1 -1
  161. data/lib/kintsugi_sdk/models/shared/exemptiontype.rb +1 -0
  162. data/lib/kintsugi_sdk/models/shared/exemptiontype.rbi +1 -1
  163. data/lib/kintsugi_sdk/models/shared/fastapi_pagination_default_page_exemptionread_2.rb +2 -2
  164. data/lib/kintsugi_sdk/models/shared/fastapi_pagination_default_page_exemptionread_2.rbi +1 -1
  165. data/lib/kintsugi_sdk/models/shared/findthresholdcrossingtransactionstate.rbi +1 -1
  166. data/lib/kintsugi_sdk/models/shared/jurisdictiontype.rbi +1 -1
  167. data/lib/kintsugi_sdk/models/shared/loc.rb +27 -0
  168. data/lib/kintsugi_sdk/models/shared/loc.rbi +11 -0
  169. data/lib/kintsugi_sdk/models/shared/nexusresponse.rb +112 -82
  170. data/lib/kintsugi_sdk/models/shared/nexusresponse.rbi +53 -41
  171. data/lib/kintsugi_sdk/models/shared/nexusstateenum.rbi +1 -1
  172. data/lib/kintsugi_sdk/models/shared/nexusstatusenum.rbi +1 -1
  173. data/lib/kintsugi_sdk/models/shared/nexustypeenum.rb +1 -0
  174. data/lib/kintsugi_sdk/models/shared/nexustypeenum.rbi +1 -1
  175. data/lib/kintsugi_sdk/models/shared/page_customerread_.rbi +1 -1
  176. data/lib/kintsugi_sdk/models/shared/page_nexusresponse_.rbi +1 -1
  177. data/lib/kintsugi_sdk/models/shared/page_transactionread_.rbi +1 -1
  178. data/lib/kintsugi_sdk/models/shared/periodmodelenum.rb +2 -0
  179. data/lib/kintsugi_sdk/models/shared/periodmodelenum.rbi +1 -1
  180. data/lib/kintsugi_sdk/models/shared/processingstatusenum.rb +1 -0
  181. data/lib/kintsugi_sdk/models/shared/processingstatusenum.rbi +1 -1
  182. data/lib/kintsugi_sdk/models/shared/productread.rb +40 -12
  183. data/lib/kintsugi_sdk/models/shared/productread.rbi +19 -5
  184. data/lib/kintsugi_sdk/models/shared/productstatusenum.rb +1 -0
  185. data/lib/kintsugi_sdk/models/shared/productstatusenum.rbi +1 -1
  186. data/lib/kintsugi_sdk/models/shared/productupdate.rb +6 -6
  187. data/lib/kintsugi_sdk/models/shared/productupdate.rbi +3 -3
  188. data/lib/kintsugi_sdk/models/shared/productupdatev2.rb +64 -0
  189. data/lib/kintsugi_sdk/models/shared/productupdatev2.rbi +29 -0
  190. data/lib/kintsugi_sdk/models/shared/quantity.rb +27 -0
  191. data/lib/kintsugi_sdk/models/shared/quantity.rbi +11 -0
  192. data/lib/kintsugi_sdk/models/shared/quantity_of_the_product_.rb +27 -0
  193. data/lib/kintsugi_sdk/models/shared/quantity_of_the_product_.rbi +11 -0
  194. data/lib/kintsugi_sdk/models/shared/rate.rb +27 -0
  195. data/lib/kintsugi_sdk/models/shared/rate.rbi +11 -0
  196. data/lib/kintsugi_sdk/models/shared/registrationsregimeenum.rbi +1 -1
  197. data/lib/kintsugi_sdk/models/shared/relatedentitytype.rbi +1 -1
  198. data/lib/kintsugi_sdk/models/shared/salesortransactionsenum.rbi +1 -1
  199. data/lib/kintsugi_sdk/models/shared/security.rb +2 -6
  200. data/lib/kintsugi_sdk/models/shared/security.rbi +1 -3
  201. data/lib/kintsugi_sdk/models/shared/sourceenum.rb +15 -0
  202. data/lib/kintsugi_sdk/models/shared/sourceenum.rbi +1 -1
  203. data/lib/kintsugi_sdk/models/shared/statusenum.rbi +1 -1
  204. data/lib/kintsugi_sdk/models/shared/tax_amount_calculated.rb +27 -0
  205. data/lib/kintsugi_sdk/models/shared/tax_amount_calculated.rbi +11 -0
  206. data/lib/kintsugi_sdk/models/shared/tax_amount_imported.rb +27 -0
  207. data/lib/kintsugi_sdk/models/shared/tax_amount_imported.rbi +11 -0
  208. data/lib/kintsugi_sdk/models/shared/tax_rate_calculated.rb +27 -0
  209. data/lib/kintsugi_sdk/models/shared/tax_rate_calculated.rbi +11 -0
  210. data/lib/kintsugi_sdk/models/shared/tax_rate_imported.rb +27 -0
  211. data/lib/kintsugi_sdk/models/shared/tax_rate_imported.rbi +11 -0
  212. data/lib/kintsugi_sdk/models/shared/taxable_amount.rb +27 -0
  213. data/lib/kintsugi_sdk/models/shared/taxable_amount.rbi +11 -0
  214. data/lib/kintsugi_sdk/models/shared/taxexemptionenum.rb +1 -0
  215. data/lib/kintsugi_sdk/models/shared/taxexemptionenum.rbi +1 -1
  216. data/lib/kintsugi_sdk/models/shared/taxitembuilder.rb +14 -14
  217. data/lib/kintsugi_sdk/models/shared/taxitembuilder.rbi +5 -5
  218. data/lib/kintsugi_sdk/models/shared/taxitembuilder_amount.rb +27 -0
  219. data/lib/kintsugi_sdk/models/shared/taxitembuilder_amount.rbi +11 -0
  220. data/lib/kintsugi_sdk/models/shared/taxitembuilder_converted_amount.rb +27 -0
  221. data/lib/kintsugi_sdk/models/shared/taxitembuilder_converted_amount.rbi +11 -0
  222. data/lib/kintsugi_sdk/models/shared/taxitemestimate.rb +10 -10
  223. data/lib/kintsugi_sdk/models/shared/taxitemestimate.rbi +5 -5
  224. data/lib/kintsugi_sdk/models/shared/taxitemread.rb +10 -10
  225. data/lib/kintsugi_sdk/models/shared/taxitemread.rbi +5 -5
  226. data/lib/kintsugi_sdk/models/shared/taxitemreturnreasonenum.rb +1 -0
  227. data/lib/kintsugi_sdk/models/shared/taxitemreturnreasonenum.rbi +1 -1
  228. data/lib/kintsugi_sdk/models/shared/taxitemtypeenum.rbi +1 -1
  229. data/lib/kintsugi_sdk/models/shared/taxliabilitysourceenum.rbi +1 -1
  230. data/lib/kintsugi_sdk/models/shared/taxtypeenum.rb +26 -0
  231. data/lib/kintsugi_sdk/models/shared/taxtypeenum.rbi +11 -0
  232. data/lib/kintsugi_sdk/models/shared/total_amount.rb +27 -0
  233. data/lib/kintsugi_sdk/models/shared/total_amount.rbi +11 -0
  234. data/lib/kintsugi_sdk/models/shared/total_amount_of_this_transaction_item_after_discounts_.rb +27 -0
  235. data/lib/kintsugi_sdk/models/shared/total_amount_of_this_transaction_item_after_discounts_.rbi +11 -0
  236. data/lib/kintsugi_sdk/models/shared/total_tax_amount_calculated.rb +27 -0
  237. data/lib/kintsugi_sdk/models/shared/total_tax_amount_calculated.rbi +11 -0
  238. data/lib/kintsugi_sdk/models/shared/total_tax_amount_imported.rb +27 -0
  239. data/lib/kintsugi_sdk/models/shared/total_tax_amount_imported.rbi +11 -0
  240. data/lib/kintsugi_sdk/models/shared/total_tax_liability_amount.rb +27 -0
  241. data/lib/kintsugi_sdk/models/shared/total_tax_liability_amount.rbi +11 -0
  242. data/lib/kintsugi_sdk/models/shared/transactionaddressbuilder.rb +11 -7
  243. data/lib/kintsugi_sdk/models/shared/transactionaddressbuilder.rbi +5 -3
  244. data/lib/kintsugi_sdk/models/shared/transactionaddresspublic.rb +8 -4
  245. data/lib/kintsugi_sdk/models/shared/transactionaddresspublic.rbi +3 -1
  246. data/lib/kintsugi_sdk/models/shared/transactionaddressread_output.rb +11 -7
  247. data/lib/kintsugi_sdk/models/shared/transactionaddressread_output.rbi +5 -3
  248. data/lib/kintsugi_sdk/models/shared/transactioncreate.rb +84 -78
  249. data/lib/kintsugi_sdk/models/shared/transactioncreate.rbi +35 -29
  250. data/lib/kintsugi_sdk/models/shared/transactiondirectionenum.rb +19 -0
  251. data/lib/kintsugi_sdk/models/shared/transactiondirectionenum.rbi +11 -0
  252. data/lib/kintsugi_sdk/models/shared/transactionestimatepublicrequest.rb +9 -7
  253. data/lib/kintsugi_sdk/models/shared/transactionestimatepublicrequest.rbi +3 -3
  254. data/lib/kintsugi_sdk/models/shared/transactionestimateresponse.rb +10 -8
  255. data/lib/kintsugi_sdk/models/shared/transactionestimateresponse.rbi +3 -3
  256. data/lib/kintsugi_sdk/models/shared/transactionestimateresponse_addresses.rb +7 -3
  257. data/lib/kintsugi_sdk/models/shared/transactionestimateresponse_addresses.rbi +3 -1
  258. data/lib/kintsugi_sdk/models/shared/transactionestimateresponse_type.rbi +1 -1
  259. data/lib/kintsugi_sdk/models/shared/transactionexemptstatusenum.rbi +1 -1
  260. data/lib/kintsugi_sdk/models/shared/transactionimportcustomer.rb +104 -0
  261. data/lib/kintsugi_sdk/models/shared/transactionimportcustomer.rbi +49 -0
  262. data/lib/kintsugi_sdk/models/shared/transactionitembuilder.rb +53 -53
  263. data/lib/kintsugi_sdk/models/shared/transactionitembuilder.rbi +21 -21
  264. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_amount.rb +27 -0
  265. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_amount.rbi +11 -0
  266. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_converted_amount.rb +27 -0
  267. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_converted_amount.rbi +11 -0
  268. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_converted_subtotal.rb +27 -0
  269. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_converted_subtotal.rbi +11 -0
  270. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_converted_tax_amount_calculated.rb +27 -0
  271. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_converted_tax_amount_calculated.rbi +11 -0
  272. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_converted_tax_amount_imported.rb +27 -0
  273. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_converted_tax_amount_imported.rbi +11 -0
  274. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_converted_taxable_amount.rb +27 -0
  275. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_converted_taxable_amount.rbi +11 -0
  276. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_converted_total_discount.rb +27 -0
  277. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_converted_total_discount.rbi +11 -0
  278. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_quantity.rb +27 -0
  279. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_quantity.rbi +11 -0
  280. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_tax_amount_calculated.rb +27 -0
  281. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_tax_amount_calculated.rbi +11 -0
  282. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_tax_amount_imported.rb +27 -0
  283. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_tax_amount_imported.rbi +11 -0
  284. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_tax_rate_calculated.rb +27 -0
  285. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_tax_rate_calculated.rbi +11 -0
  286. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_tax_rate_imported.rb +27 -0
  287. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_tax_rate_imported.rbi +11 -0
  288. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_taxable_amount.rb +27 -0
  289. data/lib/kintsugi_sdk/models/shared/transactionitembuilder_taxable_amount.rbi +11 -0
  290. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate.rb +53 -53
  291. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate.rbi +21 -21
  292. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate_converted_subtotal.rb +27 -0
  293. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate_converted_subtotal.rbi +11 -0
  294. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate_converted_taxable_amount.rb +27 -0
  295. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate_converted_taxable_amount.rbi +11 -0
  296. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate_converted_total_discount.rb +27 -0
  297. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate_converted_total_discount.rbi +11 -0
  298. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate_tax_rate_calculated.rb +27 -0
  299. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate_tax_rate_calculated.rbi +11 -0
  300. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate_tax_rate_imported.rb +27 -0
  301. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate_tax_rate_imported.rbi +11 -0
  302. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate_taxable_amount.rb +27 -0
  303. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate_taxable_amount.rbi +11 -0
  304. data/lib/kintsugi_sdk/models/shared/transactionitemestimatebase.rb +17 -7
  305. data/lib/kintsugi_sdk/models/shared/transactionitemestimatebase.rbi +5 -3
  306. data/lib/kintsugi_sdk/models/shared/transactionitemestimateresponse.rb +20 -10
  307. data/lib/kintsugi_sdk/models/shared/transactionitemestimateresponse.rbi +7 -5
  308. data/lib/kintsugi_sdk/models/shared/transactionitemread.rb +51 -43
  309. data/lib/kintsugi_sdk/models/shared/transactionitemread.rbi +23 -19
  310. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest.rb +64 -62
  311. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest.rbi +29 -25
  312. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_tax_rate_calculated.rb +27 -0
  313. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_tax_rate_calculated.rbi +11 -0
  314. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_tax_rate_imported.rb +27 -0
  315. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_tax_rate_imported.rbi +11 -0
  316. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_taxable_amount.rb +27 -0
  317. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_taxable_amount.rbi +11 -0
  318. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_total_amount.rb +27 -0
  319. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_total_amount.rbi +11 -0
  320. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_total_tax_amount_calculated.rb +27 -0
  321. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_total_tax_amount_calculated.rbi +11 -0
  322. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_total_tax_amount_imported.rb +27 -0
  323. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_total_tax_amount_imported.rbi +11 -0
  324. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_total_tax_liability_amount.rb +27 -0
  325. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest_total_tax_liability_amount.rbi +11 -0
  326. data/lib/kintsugi_sdk/models/shared/transactionread.rb +89 -71
  327. data/lib/kintsugi_sdk/models/shared/transactionread.rbi +41 -29
  328. data/lib/kintsugi_sdk/models/shared/transactionrefundstatus.rbi +1 -1
  329. data/lib/kintsugi_sdk/models/shared/transactionstatusenum.rbi +1 -1
  330. data/lib/kintsugi_sdk/models/shared/transactiontypeenum.rb +1 -0
  331. data/lib/kintsugi_sdk/models/shared/transactiontypeenum.rbi +1 -1
  332. data/lib/kintsugi_sdk/models/shared/transactionupdate.rb +63 -61
  333. data/lib/kintsugi_sdk/models/shared/transactionupdate.rbi +29 -25
  334. data/lib/kintsugi_sdk/models/shared/transactionupdate_tax_rate_calculated.rb +27 -0
  335. data/lib/kintsugi_sdk/models/shared/transactionupdate_tax_rate_calculated.rbi +11 -0
  336. data/lib/kintsugi_sdk/models/shared/transactionupdate_tax_rate_imported.rb +27 -0
  337. data/lib/kintsugi_sdk/models/shared/transactionupdate_tax_rate_imported.rbi +11 -0
  338. data/lib/kintsugi_sdk/models/shared/transactionupdate_taxable_amount.rb +27 -0
  339. data/lib/kintsugi_sdk/models/shared/transactionupdate_taxable_amount.rbi +11 -0
  340. data/lib/kintsugi_sdk/models/shared/transactionupdate_total_amount.rb +27 -0
  341. data/lib/kintsugi_sdk/models/shared/transactionupdate_total_amount.rbi +11 -0
  342. data/lib/kintsugi_sdk/models/shared/transactionupdate_total_tax_amount_calculated.rb +27 -0
  343. data/lib/kintsugi_sdk/models/shared/transactionupdate_total_tax_amount_calculated.rbi +11 -0
  344. data/lib/kintsugi_sdk/models/shared/transactionupdate_total_tax_amount_imported.rb +27 -0
  345. data/lib/kintsugi_sdk/models/shared/transactionupdate_total_tax_amount_imported.rbi +11 -0
  346. data/lib/kintsugi_sdk/models/shared/transactionupdate_total_tax_liability_amount.rb +27 -0
  347. data/lib/kintsugi_sdk/models/shared/transactionupdate_total_tax_liability_amount.rbi +11 -0
  348. data/lib/kintsugi_sdk/models/shared/treatmentenum.rbi +1 -1
  349. data/lib/kintsugi_sdk/models/shared/type.rbi +1 -1
  350. data/lib/kintsugi_sdk/models/shared/validationaddress.rb +12 -12
  351. data/lib/kintsugi_sdk/models/shared/validationaddress.rbi +5 -5
  352. data/lib/kintsugi_sdk/models/shared/validationerror.rb +11 -3
  353. data/lib/kintsugi_sdk/models/shared/validationerror.rbi +5 -1
  354. data/lib/kintsugi_sdk/models/shared.rb +73 -5
  355. data/lib/kintsugi_sdk/nexus.rb +15 -10
  356. data/lib/kintsugi_sdk/openapisdk.rb +7 -6
  357. data/lib/kintsugi_sdk/products.rb +32 -22
  358. data/lib/kintsugi_sdk/sdkconfiguration.rb +10 -11
  359. data/lib/kintsugi_sdk/taxestimation.rb +17 -12
  360. data/lib/kintsugi_sdk/transactions.rb +125 -105
  361. data/lib/kintsugi_sdk/utils/retries.rb +43 -1
  362. data/lib/kintsugi_sdk/utils/security.rb +22 -11
  363. data/lib/kintsugi_sdk/utils/utils.rb +6 -2
  364. data/lib/kintsugi_sdk.rb +1 -1
  365. metadata +172 -18
  366. data/lib/kintsugi_sdk/models/errors/backend_src_products_responses_validationerrorresponse.rbi +0 -13
  367. data/lib/kintsugi_sdk/models/ops/search_v1_address_validation_search_post_security.rbi +0 -13
  368. data/lib/kintsugi_sdk/models/shared/file.rb +0 -36
  369. data/lib/kintsugi_sdk/models/shared/file.rbi +0 -15
  370. data/lib/kintsugi_sdk/models/shared/page_transactionestimateresponse_.rb +0 -48
  371. data/lib/kintsugi_sdk/models/shared/page_transactionestimateresponse_.rbi +0 -21
@@ -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
+ # Imported tax amount.
11
+ class TotalTaxAmountImported
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::TotalTaxAmountImported
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class KintsugiSDK::Models::Shared::TotalTaxAmountImported
11
+ 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
+ # Total tax liability amount.
11
+ class TotalTaxLiabilityAmount
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::TotalTaxLiabilityAmount
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class KintsugiSDK::Models::Shared::TotalTaxLiabilityAmount
11
+ end
@@ -14,6 +14,8 @@ module KintsugiSDK
14
14
 
15
15
 
16
16
  field :type, Models::Shared::AddressType, { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('type'), required: true, 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::AddressType, false) } }
17
+
18
+ field :status, Crystalline::Nilable.new(Models::Shared::AddressStatus), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('status'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::AddressStatus, true) } }
17
19
  # Phone number associated with the address.
18
20
  field :phone, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('phone') } }
19
21
  # Primary street address.
@@ -28,20 +30,21 @@ module KintsugiSDK
28
30
  field :state, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('state') } }
29
31
  # ZIP or Postal code of the customer.
30
32
  field :postal_code, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('postal_code') } }
31
-
33
+ # Country code in ISO 3166-1 alpha-2 format
32
34
  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) } }
33
35
  # Complete address string of the customer, which can be used as an alternative to individual fields.
34
36
  field :full_address, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('full_address') } }
35
37
  # Optional additional enriched data for the address.
36
38
  field :enriched_fields, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('enriched_fields') } }
37
-
38
- field :status, Crystalline::Nilable.new(Models::Shared::AddressStatus), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('status'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::AddressStatus, true) } }
39
+ # If true, city-level tax rates are not applied for this address.
40
+ field :is_unincorporated, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('is_unincorporated') } }
39
41
 
40
42
  field :organization_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('organization_id') } }
41
43
 
42
- sig { params(type: Models::Shared::AddressType, 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), enriched_fields: T.nilable(::String), status: T.nilable(Models::Shared::AddressStatus), organization_id: T.nilable(::String)).void }
43
- def initialize(type:, phone: nil, street_1: nil, street_2: nil, city: nil, county: nil, state: nil, postal_code: nil, country: nil, full_address: nil, enriched_fields: nil, status: nil, organization_id: nil)
44
+ sig { params(type: Models::Shared::AddressType, 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), enriched_fields: T.nilable(::String), is_unincorporated: T.nilable(T::Boolean), organization_id: T.nilable(::String)).void }
45
+ def initialize(type:, status: nil, phone: nil, street_1: nil, street_2: nil, city: nil, county: nil, state: nil, postal_code: nil, country: nil, full_address: nil, enriched_fields: nil, is_unincorporated: false, organization_id: nil)
44
46
  @type = type
47
+ @status = status
45
48
  @phone = phone
46
49
  @street_1 = street_1
47
50
  @street_2 = street_2
@@ -52,7 +55,7 @@ module KintsugiSDK
52
55
  @country = country
53
56
  @full_address = full_address
54
57
  @enriched_fields = enriched_fields
55
- @status = status
58
+ @is_unincorporated = is_unincorporated
56
59
  @organization_id = organization_id
57
60
  end
58
61
 
@@ -60,6 +63,7 @@ module KintsugiSDK
60
63
  def ==(other)
61
64
  return false unless other.is_a? self.class
62
65
  return false unless @type == other.type
66
+ return false unless @status == other.status
63
67
  return false unless @phone == other.phone
64
68
  return false unless @street_1 == other.street_1
65
69
  return false unless @street_2 == other.street_2
@@ -70,7 +74,7 @@ module KintsugiSDK
70
74
  return false unless @country == other.country
71
75
  return false unless @full_address == other.full_address
72
76
  return false unless @enriched_fields == other.enriched_fields
73
- return false unless @status == other.status
77
+ return false unless @is_unincorporated == other.is_unincorporated
74
78
  return false unless @organization_id == other.organization_id
75
79
  true
76
80
  end
@@ -10,6 +10,8 @@ end
10
10
  class KintsugiSDK::Models::Shared::TransactionAddressBuilder
11
11
  def type(); end
12
12
  def type=(str_); end
13
+ def status(); end
14
+ def status=(str_); end
13
15
  def phone(); end
14
16
  def phone=(str_); end
15
17
  def street_1(); end
@@ -30,8 +32,8 @@ class KintsugiSDK::Models::Shared::TransactionAddressBuilder
30
32
  def full_address=(str_); end
31
33
  def enriched_fields(); end
32
34
  def enriched_fields=(str_); end
33
- def status(); end
34
- def status=(str_); end
35
+ def is_unincorporated(); end
36
+ def is_unincorporated=(str_); end
35
37
  def organization_id(); end
36
38
  def organization_id=(str_); end
37
- end
39
+ end
@@ -7,7 +7,7 @@
7
7
  module KintsugiSDK
8
8
  module Models
9
9
  module Shared
10
- # Public address class for transaction addresses
10
+ # API-facing transaction address without internal enrichment fields.
11
11
  class TransactionAddressPublic
12
12
  extend T::Sig
13
13
  include Crystalline::MetadataFields
@@ -28,13 +28,15 @@ module KintsugiSDK
28
28
  field :state, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('state') } }
29
29
  # ZIP or Postal code of the customer.
30
30
  field :postal_code, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('postal_code') } }
31
-
31
+ # Country code in ISO 3166-1 alpha-2 format
32
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) } }
33
33
  # Complete address string of the customer, which can be used as an alternative to individual fields.
34
34
  field :full_address, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('full_address') } }
35
+ # If true, city-level tax rates are not applied for this address.
36
+ field :is_unincorporated, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('is_unincorporated') } }
35
37
 
36
- sig { params(type: Models::Shared::AddressType, 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)).void }
37
- def initialize(type:, phone: nil, street_1: nil, street_2: nil, city: nil, county: nil, state: nil, postal_code: nil, country: nil, full_address: nil)
38
+ sig { params(type: Models::Shared::AddressType, 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), is_unincorporated: T.nilable(T::Boolean)).void }
39
+ def initialize(type:, phone: nil, street_1: nil, street_2: nil, city: nil, county: nil, state: nil, postal_code: nil, country: nil, full_address: nil, is_unincorporated: false)
38
40
  @type = type
39
41
  @phone = phone
40
42
  @street_1 = street_1
@@ -45,6 +47,7 @@ module KintsugiSDK
45
47
  @postal_code = postal_code
46
48
  @country = country
47
49
  @full_address = full_address
50
+ @is_unincorporated = is_unincorporated
48
51
  end
49
52
 
50
53
  sig { params(other: T.untyped).returns(T::Boolean) }
@@ -60,6 +63,7 @@ module KintsugiSDK
60
63
  return false unless @postal_code == other.postal_code
61
64
  return false unless @country == other.country
62
65
  return false unless @full_address == other.full_address
66
+ return false unless @is_unincorporated == other.is_unincorporated
63
67
  true
64
68
  end
65
69
  end
@@ -28,4 +28,6 @@ class KintsugiSDK::Models::Shared::TransactionAddressPublic
28
28
  def country=(str_); end
29
29
  def full_address(); end
30
30
  def full_address=(str_); end
31
- end
31
+ def is_unincorporated(); end
32
+ def is_unincorporated=(str_); end
33
+ end
@@ -14,6 +14,8 @@ module KintsugiSDK
14
14
 
15
15
 
16
16
  field :type, Models::Shared::AddressType, { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('type'), required: true, 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::AddressType, false) } }
17
+
18
+ field :status, Crystalline::Nilable.new(Models::Shared::AddressStatus), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('status'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::AddressStatus, true) } }
17
19
  # Phone number associated with the address.
18
20
  field :phone, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('phone') } }
19
21
  # Primary street address.
@@ -28,12 +30,12 @@ module KintsugiSDK
28
30
  field :state, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('state') } }
29
31
  # ZIP or Postal code of the customer.
30
32
  field :postal_code, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('postal_code') } }
31
-
33
+ # Country code in ISO 3166-1 alpha-2 format
32
34
  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) } }
33
35
  # Complete address string of the customer, which can be used as an alternative to individual fields.
34
36
  field :full_address, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('full_address') } }
35
-
36
- field :status, Crystalline::Nilable.new(Models::Shared::AddressStatus), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('status'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::AddressStatus, true) } }
37
+ # If true, city-level tax rates are not applied for this address.
38
+ field :is_unincorporated, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('is_unincorporated') } }
37
39
  # Unique identifier of the address being updated.
38
40
  field :id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('id') } }
39
41
  # ID of the transaction associated with the address.
@@ -41,9 +43,10 @@ module KintsugiSDK
41
43
  # ID of the connection associated with the address.
42
44
  field :connection_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('connection_id') } }
43
45
 
44
- sig { params(type: Models::Shared::AddressType, 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), status: T.nilable(Models::Shared::AddressStatus), id: T.nilable(::String), transaction_id: T.nilable(::String), connection_id: T.nilable(::String)).void }
45
- def initialize(type:, phone: nil, street_1: nil, street_2: nil, city: nil, county: nil, state: nil, postal_code: nil, country: nil, full_address: nil, status: nil, id: nil, transaction_id: nil, connection_id: nil)
46
+ sig { params(type: Models::Shared::AddressType, 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), is_unincorporated: T.nilable(T::Boolean), id: T.nilable(::String), transaction_id: T.nilable(::String), connection_id: T.nilable(::String)).void }
47
+ def initialize(type:, status: nil, phone: nil, street_1: nil, street_2: nil, city: nil, county: nil, state: nil, postal_code: nil, country: nil, full_address: nil, is_unincorporated: false, id: nil, transaction_id: nil, connection_id: nil)
46
48
  @type = type
49
+ @status = status
47
50
  @phone = phone
48
51
  @street_1 = street_1
49
52
  @street_2 = street_2
@@ -53,7 +56,7 @@ module KintsugiSDK
53
56
  @postal_code = postal_code
54
57
  @country = country
55
58
  @full_address = full_address
56
- @status = status
59
+ @is_unincorporated = is_unincorporated
57
60
  @id = id
58
61
  @transaction_id = transaction_id
59
62
  @connection_id = connection_id
@@ -63,6 +66,7 @@ module KintsugiSDK
63
66
  def ==(other)
64
67
  return false unless other.is_a? self.class
65
68
  return false unless @type == other.type
69
+ return false unless @status == other.status
66
70
  return false unless @phone == other.phone
67
71
  return false unless @street_1 == other.street_1
68
72
  return false unless @street_2 == other.street_2
@@ -72,7 +76,7 @@ module KintsugiSDK
72
76
  return false unless @postal_code == other.postal_code
73
77
  return false unless @country == other.country
74
78
  return false unless @full_address == other.full_address
75
- return false unless @status == other.status
79
+ return false unless @is_unincorporated == other.is_unincorporated
76
80
  return false unless @id == other.id
77
81
  return false unless @transaction_id == other.transaction_id
78
82
  return false unless @connection_id == other.connection_id
@@ -10,6 +10,8 @@ end
10
10
  class KintsugiSDK::Models::Shared::TransactionAddressReadOutput
11
11
  def type(); end
12
12
  def type=(str_); end
13
+ def status(); end
14
+ def status=(str_); end
13
15
  def phone(); end
14
16
  def phone=(str_); end
15
17
  def street_1(); end
@@ -28,12 +30,12 @@ class KintsugiSDK::Models::Shared::TransactionAddressReadOutput
28
30
  def country=(str_); end
29
31
  def full_address(); end
30
32
  def full_address=(str_); end
31
- def status(); end
32
- def status=(str_); end
33
+ def is_unincorporated(); end
34
+ def is_unincorporated=(str_); end
33
35
  def id(); end
34
36
  def id=(str_); end
35
37
  def transaction_id(); end
36
38
  def transaction_id=(str_); end
37
39
  def connection_id(); end
38
40
  def connection_id=(str_); end
39
- end
41
+ end
@@ -24,25 +24,46 @@ module KintsugiSDK
24
24
  field :addresses, Crystalline::Array.new(Models::Shared::TransactionAddressBuilder), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('addresses'), required: true } }
25
25
 
26
26
  field :transaction_items, Crystalline::Array.new(Models::Shared::TransactionItemCreateUpdate), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('transaction_items'), required: true } }
27
+ # Total amount of the transaction.
28
+ field :total_amount, Crystalline::Nilable.new(Crystalline::Union.new(::Float, ::String)), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('total_amount') } }
29
+ # Imported tax amount.
30
+ field :total_tax_amount_imported, Crystalline::Nilable.new(Crystalline::Union.new(::Float, ::String)), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('total_tax_amount_imported') } }
31
+ # Imported tax rate.
32
+ field :tax_rate_imported, Crystalline::Nilable.new(Crystalline::Union.new(::Float, ::String)), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('tax_rate_imported') } }
33
+ # Calculated tax amount.
34
+ field :total_tax_amount_calculated, Crystalline::Nilable.new(Crystalline::Union.new(::Float, ::String)), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('total_tax_amount_calculated') } }
35
+ # Calculated tax rate.
36
+ field :tax_rate_calculated, Crystalline::Nilable.new(Crystalline::Union.new(::Float, ::String)), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('tax_rate_calculated') } }
37
+ # Total tax liability amount.
38
+ field :total_tax_liability_amount, Crystalline::Nilable.new(Crystalline::Union.new(::Float, ::String)), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('total_tax_liability_amount') } }
39
+ # Taxable amount.
40
+ field :taxable_amount, Crystalline::Nilable.new(Crystalline::Union.new(::Float, ::String)), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('taxable_amount') } }
41
+
42
+ field :currency, Crystalline::Nilable.new(Models::Shared::CurrencyEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('currency'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::CurrencyEnum, true) } }
43
+
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) } }
45
+
46
+ field :status, Crystalline::Nilable.new(Models::Shared::TransactionStatusEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('status'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::TransactionStatusEnum, true) } }
27
47
 
48
+ 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) } }
49
+ # Our transaction state, used to determine when/if a transaction needs additional
50
+ # processing.
51
+ field :processing_status, Crystalline::Nilable.new(Models::Shared::ProcessingStatusEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('processing_status'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::ProcessingStatusEnum, true) } }
52
+ # Indicates if transaction requires tax exemption.
28
53
  field :requires_exemption, Crystalline::Nilable.new(Models::Shared::ExemptionRequired), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('requires_exemption') } }
29
54
  # Transaction date in the shop's local timezone
30
- field :shop_date, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('shop_date') } }
55
+ field :shop_date, Crystalline::Nilable.new(::Date), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('shop_date'), 'decoder': ::KintsugiSDK::Utils.date_from_iso_format(true) } }
31
56
  # Timezone of the shop
32
57
  field :shop_date_tz, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('shop_date_tz') } }
33
58
  # Description of the transaction.
34
59
  field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('description') } }
35
- # Shopify has 2 order statuses for refund case: refunded and partially_refunded
36
- # If the given order has different status from these 2, we will set the
37
- # transaction's refund_status to PARTIALLY_REFUNDED by default.
60
+ # Status of refund, if applicable
38
61
  field :refund_status, Crystalline::Nilable.new(Models::Shared::TransactionRefundStatus), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('refund_status'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::TransactionRefundStatus, true) } }
39
62
  # Unique identifier of the customer.
40
63
  field :customer_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('customer_id') } }
41
- # Based on transaction item exempt status.
42
- # NOT EXEMPT: None of the items are NOT EXEMPT
43
- # PARTIALLY EXEMPT: At least some of the items are NOT EXEMPT
44
- # FULLY_EXEMPT: All items sold in the transaction are EXEMPT
45
- # ZERO_RATE_NOT_EXEMPT: All items sold in the transaction are zero-rated
64
+ # Indicates if transaction is marketplace-based.
65
+ field :marketplace, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('marketplace') } }
66
+ # Exemption status (e.g., NOT_EXEMPT)
46
67
  field :exempt, Crystalline::Nilable.new(Models::Shared::TransactionExemptStatusEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('exempt'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::TransactionExemptStatusEnum, true) } }
47
68
  # List of exemptions applied (if any).
48
69
  field :exemptions, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::Exemption)), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('exemptions') } }
@@ -54,12 +75,10 @@ module KintsugiSDK
54
75
  field :secondary_source, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('secondary_source') } }
55
76
  # Friendly identifier of the original item.
56
77
  field :external_friendly_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('external_friendly_id') } }
57
-
78
+ # Source of tax liability.
58
79
  field :tax_liability_source, Crystalline::Nilable.new(Models::Shared::TaxLiabilitySourceEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('tax_liability_source'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::TaxLiabilitySourceEnum, true) } }
59
-
60
- field :currency, Crystalline::Nilable.new(Models::Shared::CurrencyEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('currency'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::CurrencyEnum, true) } }
61
-
62
- 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) } }
80
+ # Transaction lock status.
81
+ field :locked, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('locked') } }
63
82
  # Connection Identifier
64
83
  field :connection_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('connection_id') } }
65
84
  # Filing identifier.
@@ -70,7 +89,7 @@ module KintsugiSDK
70
89
  field :county, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('county') } }
71
90
  # State of the transaction address.
72
91
  field :state, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('state') } }
73
-
92
+ # Country code (ISO Alpha-2).
74
93
  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) } }
75
94
  # Postal code of the transaction.
76
95
  field :postal_code, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('postal_code') } }
@@ -78,65 +97,59 @@ module KintsugiSDK
78
97
  #
79
98
  # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
80
99
  field :tax_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('tax_id') } }
100
+ # Document type distinguishing invoices from sales orders.
101
+ field :document_type, Crystalline::Nilable.new(Models::Shared::DocumentTypeEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('document_type'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::DocumentTypeEnum, true) } }
102
+ # Identifier of the invoice that created from a sales order.
103
+ field :created_from, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('created_from') } }
81
104
 
82
- field :status, Crystalline::Nilable.new(Models::Shared::TransactionStatusEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('status'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::TransactionStatusEnum, true) } }
83
-
84
- 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) } }
85
- # Our transaction state, used to determine when/if a transaction needs additional
86
- # processing.
87
- field :processing_status, Crystalline::Nilable.new(Models::Shared::ProcessingStatusEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('processing_status'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::ProcessingStatusEnum, true) } }
88
-
105
+ field :is_duplicate, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('is_duplicate') } }
106
+ # Destination currency code (ISO 4217, e.g., USD)
89
107
  field :destination_currency, Crystalline::Nilable.new(Models::Shared::CurrencyEnum), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('destination_currency'), 'decoder': ::KintsugiSDK::Utils.enum_from_string(Models::Shared::CurrencyEnum, true) } }
90
108
  # Converted total amount.
91
- field :converted_total_amount, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('converted_total_amount') } }
109
+ field :converted_total_amount, Crystalline::Nilable.new(Crystalline::Union.new(::Float, ::String)), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('converted_total_amount') } }
92
110
  # Converted imported tax amount.
93
- field :converted_total_tax_amount_imported, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('converted_total_tax_amount_imported') } }
111
+ field :converted_total_tax_amount_imported, Crystalline::Nilable.new(Crystalline::Union.new(::Float, ::String)), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('converted_total_tax_amount_imported') } }
94
112
  # Converted calculated tax amount.
95
- field :converted_total_tax_amount_calculated, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('converted_total_tax_amount_calculated') } }
113
+ field :converted_total_tax_amount_calculated, Crystalline::Nilable.new(Crystalline::Union.new(::Float, ::String)), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('converted_total_tax_amount_calculated') } }
96
114
  # Currency conversion rate.
97
- field :conversion_rate, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('conversion_rate') } }
115
+ field :conversion_rate, Crystalline::Nilable.new(Crystalline::Union.new(::Float, ::String)), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('conversion_rate') } }
98
116
  # Converted taxable amount.
99
- field :converted_taxable_amount, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('converted_taxable_amount') } }
117
+ field :converted_taxable_amount, Crystalline::Nilable.new(Crystalline::Union.new(::Float, ::String)), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('converted_taxable_amount') } }
100
118
  # Converted total discount amount.
101
- field :converted_total_discount, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('converted_total_discount') } }
119
+ field :converted_total_discount, Crystalline::Nilable.new(Crystalline::Union.new(::Float, ::String)), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('converted_total_discount') } }
102
120
  # Converted subtotal amount.
103
- field :converted_subtotal, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('converted_subtotal') } }
121
+ field :converted_subtotal, Crystalline::Nilable.new(Crystalline::Union.new(::Float, ::String)), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('converted_subtotal') } }
104
122
  # Converted total tax liability amount.
105
- field :converted_total_tax_liability_amount, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('converted_total_tax_liability_amount') } }
123
+ field :converted_total_tax_liability_amount, Crystalline::Nilable.new(Crystalline::Union.new(::Float, ::String)), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('converted_total_tax_liability_amount') } }
106
124
 
107
125
  field :customer, Crystalline::Nilable.new(Models::Shared::CustomerCreate), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('customer') } }
108
- # Total amount of the transaction.
109
- field :total_amount, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('total_amount') } }
110
- # Indicates if transaction is marketplace-based.
111
- field :marketplace, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('marketplace') } }
112
- # Imported tax amount.
113
- field :total_tax_amount_imported, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('total_tax_amount_imported') } }
114
- # Imported tax rate.
115
- field :tax_rate_imported, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('tax_rate_imported') } }
116
- # Calculated tax amount.
117
- field :total_tax_amount_calculated, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('total_tax_amount_calculated') } }
118
- # Calculated tax rate.
119
- field :tax_rate_calculated, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('tax_rate_calculated') } }
120
- # Total tax liability amount.
121
- field :total_tax_liability_amount, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('total_tax_liability_amount') } }
122
- # Taxable amount.
123
- field :taxable_amount, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('taxable_amount') } }
124
- # Transaction lock status.
125
- field :locked, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::KintsugiSDK::Utils.field_name('locked') } }
126
126
 
127
- sig { params(organization_id: ::String, external_id: ::String, date: ::DateTime, addresses: T::Array[Models::Shared::TransactionAddressBuilder], transaction_items: T::Array[Models::Shared::TransactionItemCreateUpdate], requires_exemption: T.nilable(Models::Shared::ExemptionRequired), shop_date: T.nilable(::String), shop_date_tz: T.nilable(::String), description: T.nilable(::String), refund_status: T.nilable(Models::Shared::TransactionRefundStatus), customer_id: T.nilable(::String), exempt: T.nilable(Models::Shared::TransactionExemptStatusEnum), exemptions: T.nilable(T::Array[Models::Shared::Exemption]), related_to: T.nilable(::String), secondary_external_id: T.nilable(::String), secondary_source: T.nilable(::String), external_friendly_id: T.nilable(::String), tax_liability_source: T.nilable(Models::Shared::TaxLiabilitySourceEnum), currency: T.nilable(Models::Shared::CurrencyEnum), source: T.nilable(Models::Shared::SourceEnum), connection_id: T.nilable(::String), filing_id: T.nilable(::String), city: T.nilable(::String), county: T.nilable(::String), state: T.nilable(::String), country: T.nilable(Models::Shared::CountryCodeEnum), postal_code: T.nilable(::String), tax_id: T.nilable(::String), status: T.nilable(Models::Shared::TransactionStatusEnum), address_status: T.nilable(Models::Shared::AddressStatus), processing_status: T.nilable(Models::Shared::ProcessingStatusEnum), destination_currency: T.nilable(Models::Shared::CurrencyEnum), converted_total_amount: T.nilable(::Float), converted_total_tax_amount_imported: T.nilable(::Float), converted_total_tax_amount_calculated: T.nilable(::Float), conversion_rate: T.nilable(::Float), converted_taxable_amount: T.nilable(::Float), converted_total_discount: T.nilable(::Float), converted_subtotal: T.nilable(::Float), converted_total_tax_liability_amount: T.nilable(::Float), customer: T.nilable(Models::Shared::CustomerCreate), total_amount: T.nilable(::Float), marketplace: T.nilable(T::Boolean), total_tax_amount_imported: T.nilable(::Float), tax_rate_imported: T.nilable(::Float), total_tax_amount_calculated: T.nilable(::Float), tax_rate_calculated: T.nilable(::Float), total_tax_liability_amount: T.nilable(::Float), taxable_amount: T.nilable(::Float), locked: T.nilable(T::Boolean)).void }
128
- def initialize(organization_id:, external_id:, date:, addresses:, transaction_items:, requires_exemption: nil, shop_date: nil, shop_date_tz: nil, description: nil, refund_status: nil, customer_id: nil, exempt: nil, exemptions: nil, related_to: nil, secondary_external_id: nil, secondary_source: nil, external_friendly_id: nil, tax_liability_source: nil, currency: nil, source: nil, connection_id: nil, filing_id: nil, city: nil, county: nil, state: nil, country: nil, postal_code: nil, tax_id: nil, status: nil, address_status: nil, processing_status: nil, destination_currency: nil, converted_total_amount: nil, converted_total_tax_amount_imported: nil, converted_total_tax_amount_calculated: nil, conversion_rate: nil, converted_taxable_amount: nil, converted_total_discount: nil, converted_subtotal: nil, converted_total_tax_liability_amount: nil, customer: nil, total_amount: 0.0, marketplace: false, total_tax_amount_imported: 0.0, tax_rate_imported: 0.0, total_tax_amount_calculated: 0.0, tax_rate_calculated: 0.0, total_tax_liability_amount: 0.0, taxable_amount: 0.0, locked: false)
127
+ sig { params(organization_id: ::String, external_id: ::String, date: ::DateTime, addresses: T::Array[Models::Shared::TransactionAddressBuilder], transaction_items: T::Array[Models::Shared::TransactionItemCreateUpdate], total_amount: T.nilable(T.any(::Float, ::String)), total_tax_amount_imported: T.nilable(T.any(::Float, ::String)), tax_rate_imported: T.nilable(T.any(::Float, ::String)), total_tax_amount_calculated: T.nilable(T.any(::Float, ::String)), tax_rate_calculated: T.nilable(T.any(::Float, ::String)), total_tax_liability_amount: T.nilable(T.any(::Float, ::String)), taxable_amount: T.nilable(T.any(::Float, ::String)), currency: T.nilable(Models::Shared::CurrencyEnum), source: T.nilable(Models::Shared::SourceEnum), status: T.nilable(Models::Shared::TransactionStatusEnum), address_status: T.nilable(Models::Shared::AddressStatus), processing_status: T.nilable(Models::Shared::ProcessingStatusEnum), requires_exemption: T.nilable(Models::Shared::ExemptionRequired), shop_date: T.nilable(::Date), shop_date_tz: T.nilable(::String), description: T.nilable(::String), refund_status: T.nilable(Models::Shared::TransactionRefundStatus), customer_id: T.nilable(::String), marketplace: T.nilable(T::Boolean), exempt: T.nilable(Models::Shared::TransactionExemptStatusEnum), exemptions: T.nilable(T::Array[Models::Shared::Exemption]), related_to: T.nilable(::String), secondary_external_id: T.nilable(::String), secondary_source: T.nilable(::String), external_friendly_id: T.nilable(::String), tax_liability_source: T.nilable(Models::Shared::TaxLiabilitySourceEnum), locked: T.nilable(T::Boolean), connection_id: T.nilable(::String), filing_id: T.nilable(::String), city: T.nilable(::String), county: T.nilable(::String), state: T.nilable(::String), country: T.nilable(Models::Shared::CountryCodeEnum), postal_code: T.nilable(::String), tax_id: T.nilable(::String), document_type: T.nilable(Models::Shared::DocumentTypeEnum), created_from: T.nilable(::String), is_duplicate: T.nilable(T::Boolean), destination_currency: T.nilable(Models::Shared::CurrencyEnum), converted_total_amount: T.nilable(T.any(::Float, ::String)), converted_total_tax_amount_imported: T.nilable(T.any(::Float, ::String)), converted_total_tax_amount_calculated: T.nilable(T.any(::Float, ::String)), conversion_rate: T.nilable(T.any(::Float, ::String)), converted_taxable_amount: T.nilable(T.any(::Float, ::String)), converted_total_discount: T.nilable(T.any(::Float, ::String)), converted_subtotal: T.nilable(T.any(::Float, ::String)), converted_total_tax_liability_amount: T.nilable(T.any(::Float, ::String)), customer: T.nilable(Models::Shared::CustomerCreate)).void }
128
+ def initialize(organization_id:, external_id:, date:, addresses:, transaction_items:, total_amount: nil, total_tax_amount_imported: nil, tax_rate_imported: nil, total_tax_amount_calculated: nil, tax_rate_calculated: nil, total_tax_liability_amount: nil, taxable_amount: nil, currency: nil, source: nil, status: nil, address_status: nil, processing_status: nil, requires_exemption: nil, shop_date: nil, shop_date_tz: nil, description: nil, refund_status: nil, customer_id: nil, marketplace: nil, exempt: nil, exemptions: nil, related_to: nil, secondary_external_id: nil, secondary_source: nil, external_friendly_id: nil, tax_liability_source: nil, locked: false, connection_id: nil, filing_id: nil, city: nil, county: nil, state: nil, country: nil, postal_code: nil, tax_id: nil, document_type: nil, created_from: nil, is_duplicate: false, destination_currency: nil, converted_total_amount: nil, converted_total_tax_amount_imported: nil, converted_total_tax_amount_calculated: nil, conversion_rate: nil, converted_taxable_amount: nil, converted_total_discount: nil, converted_subtotal: nil, converted_total_tax_liability_amount: nil, customer: nil)
129
129
  @organization_id = organization_id
130
130
  @external_id = external_id
131
131
  @date = date
132
132
  @addresses = addresses
133
133
  @transaction_items = transaction_items
134
+ @total_amount = total_amount
135
+ @total_tax_amount_imported = total_tax_amount_imported
136
+ @tax_rate_imported = tax_rate_imported
137
+ @total_tax_amount_calculated = total_tax_amount_calculated
138
+ @tax_rate_calculated = tax_rate_calculated
139
+ @total_tax_liability_amount = total_tax_liability_amount
140
+ @taxable_amount = taxable_amount
141
+ @currency = currency
142
+ @source = source
143
+ @status = status
144
+ @address_status = address_status
145
+ @processing_status = processing_status
134
146
  @requires_exemption = requires_exemption
135
147
  @shop_date = shop_date
136
148
  @shop_date_tz = shop_date_tz
137
149
  @description = description
138
150
  @refund_status = refund_status
139
151
  @customer_id = customer_id
152
+ @marketplace = marketplace
140
153
  @exempt = exempt
141
154
  @exemptions = exemptions
142
155
  @related_to = related_to
@@ -144,8 +157,7 @@ module KintsugiSDK
144
157
  @secondary_source = secondary_source
145
158
  @external_friendly_id = external_friendly_id
146
159
  @tax_liability_source = tax_liability_source
147
- @currency = currency
148
- @source = source
160
+ @locked = locked
149
161
  @connection_id = connection_id
150
162
  @filing_id = filing_id
151
163
  @city = city
@@ -154,9 +166,9 @@ module KintsugiSDK
154
166
  @country = country
155
167
  @postal_code = postal_code
156
168
  @tax_id = tax_id
157
- @status = status
158
- @address_status = address_status
159
- @processing_status = processing_status
169
+ @document_type = document_type
170
+ @created_from = created_from
171
+ @is_duplicate = is_duplicate
160
172
  @destination_currency = destination_currency
161
173
  @converted_total_amount = converted_total_amount
162
174
  @converted_total_tax_amount_imported = converted_total_tax_amount_imported
@@ -167,15 +179,6 @@ module KintsugiSDK
167
179
  @converted_subtotal = converted_subtotal
168
180
  @converted_total_tax_liability_amount = converted_total_tax_liability_amount
169
181
  @customer = customer
170
- @total_amount = total_amount
171
- @marketplace = marketplace
172
- @total_tax_amount_imported = total_tax_amount_imported
173
- @tax_rate_imported = tax_rate_imported
174
- @total_tax_amount_calculated = total_tax_amount_calculated
175
- @tax_rate_calculated = tax_rate_calculated
176
- @total_tax_liability_amount = total_tax_liability_amount
177
- @taxable_amount = taxable_amount
178
- @locked = locked
179
182
  end
180
183
 
181
184
  sig { params(other: T.untyped).returns(T::Boolean) }
@@ -186,12 +189,25 @@ module KintsugiSDK
186
189
  return false unless @date == other.date
187
190
  return false unless @addresses == other.addresses
188
191
  return false unless @transaction_items == other.transaction_items
192
+ return false unless @total_amount == other.total_amount
193
+ return false unless @total_tax_amount_imported == other.total_tax_amount_imported
194
+ return false unless @tax_rate_imported == other.tax_rate_imported
195
+ return false unless @total_tax_amount_calculated == other.total_tax_amount_calculated
196
+ return false unless @tax_rate_calculated == other.tax_rate_calculated
197
+ return false unless @total_tax_liability_amount == other.total_tax_liability_amount
198
+ return false unless @taxable_amount == other.taxable_amount
199
+ return false unless @currency == other.currency
200
+ return false unless @source == other.source
201
+ return false unless @status == other.status
202
+ return false unless @address_status == other.address_status
203
+ return false unless @processing_status == other.processing_status
189
204
  return false unless @requires_exemption == other.requires_exemption
190
205
  return false unless @shop_date == other.shop_date
191
206
  return false unless @shop_date_tz == other.shop_date_tz
192
207
  return false unless @description == other.description
193
208
  return false unless @refund_status == other.refund_status
194
209
  return false unless @customer_id == other.customer_id
210
+ return false unless @marketplace == other.marketplace
195
211
  return false unless @exempt == other.exempt
196
212
  return false unless @exemptions == other.exemptions
197
213
  return false unless @related_to == other.related_to
@@ -199,8 +215,7 @@ module KintsugiSDK
199
215
  return false unless @secondary_source == other.secondary_source
200
216
  return false unless @external_friendly_id == other.external_friendly_id
201
217
  return false unless @tax_liability_source == other.tax_liability_source
202
- return false unless @currency == other.currency
203
- return false unless @source == other.source
218
+ return false unless @locked == other.locked
204
219
  return false unless @connection_id == other.connection_id
205
220
  return false unless @filing_id == other.filing_id
206
221
  return false unless @city == other.city
@@ -209,9 +224,9 @@ module KintsugiSDK
209
224
  return false unless @country == other.country
210
225
  return false unless @postal_code == other.postal_code
211
226
  return false unless @tax_id == other.tax_id
212
- return false unless @status == other.status
213
- return false unless @address_status == other.address_status
214
- return false unless @processing_status == other.processing_status
227
+ return false unless @document_type == other.document_type
228
+ return false unless @created_from == other.created_from
229
+ return false unless @is_duplicate == other.is_duplicate
215
230
  return false unless @destination_currency == other.destination_currency
216
231
  return false unless @converted_total_amount == other.converted_total_amount
217
232
  return false unless @converted_total_tax_amount_imported == other.converted_total_tax_amount_imported
@@ -222,15 +237,6 @@ module KintsugiSDK
222
237
  return false unless @converted_subtotal == other.converted_subtotal
223
238
  return false unless @converted_total_tax_liability_amount == other.converted_total_tax_liability_amount
224
239
  return false unless @customer == other.customer
225
- return false unless @total_amount == other.total_amount
226
- return false unless @marketplace == other.marketplace
227
- return false unless @total_tax_amount_imported == other.total_tax_amount_imported
228
- return false unless @tax_rate_imported == other.tax_rate_imported
229
- return false unless @total_tax_amount_calculated == other.total_tax_amount_calculated
230
- return false unless @tax_rate_calculated == other.tax_rate_calculated
231
- return false unless @total_tax_liability_amount == other.total_tax_liability_amount
232
- return false unless @taxable_amount == other.taxable_amount
233
- return false unless @locked == other.locked
234
240
  true
235
241
  end
236
242
  end