orb-billing 1.14.0 → 1.16.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 (351) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +20 -0
  3. data/README.md +1 -1
  4. data/lib/orb/client.rb +14 -0
  5. data/lib/orb/internal/transport/base_client.rb +5 -0
  6. data/lib/orb/internal/type/union.rb +13 -27
  7. data/lib/orb/models/accounting_provider_config.rb +14 -3
  8. data/lib/orb/models/adjustment_interval.rb +185 -3
  9. data/lib/orb/models/alert.rb +105 -1
  10. data/lib/orb/models/alert_create_for_subscription_params.rb +120 -7
  11. data/lib/orb/models/alert_update_params.rb +113 -1
  12. data/lib/orb/models/beta/external_plan_id_create_plan_version_params.rb +2419 -17109
  13. data/lib/orb/models/beta_create_plan_version_params.rb +2361 -16947
  14. data/lib/orb/models/billable_metric.rb +10 -1
  15. data/lib/orb/models/changed_subscription_resources.rb +200 -10
  16. data/lib/orb/models/conversion_rate_config.rb +18 -0
  17. data/lib/orb/models/credit_block_list_invoices_response.rb +192 -1
  18. data/lib/orb/models/credit_block_retrieve_response.rb +185 -1
  19. data/lib/orb/models/customer.rb +111 -4
  20. data/lib/orb/models/customer_create_params.rb +6 -1
  21. data/lib/orb/models/customer_tax_id.rb +15 -1
  22. data/lib/orb/models/customer_update_by_external_id_params.rb +16 -2
  23. data/lib/orb/models/customer_update_params.rb +16 -2
  24. data/lib/orb/models/customers/credit_list_by_external_id_response.rb +192 -1
  25. data/lib/orb/models/customers/credit_list_response.rb +189 -1
  26. data/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rb +4 -4
  27. data/lib/orb/models/customers/credits/ledger_create_entry_params.rb +4 -4
  28. data/lib/orb/models/dimensional_price_group.rb +1 -1
  29. data/lib/orb/models/discount.rb +145 -1
  30. data/lib/orb/models/event_ingest_params.rb +5 -2
  31. data/lib/orb/models/invoice.rb +198 -10
  32. data/lib/orb/models/invoice_create_params.rb +6 -5
  33. data/lib/orb/models/invoice_fetch_upcoming_response.rb +200 -10
  34. data/lib/orb/models/invoice_issue_summary_response.rb +9 -3
  35. data/lib/orb/models/invoice_level_discount.rb +145 -1
  36. data/lib/orb/models/invoice_line_item_create_response.rb +189 -5
  37. data/lib/orb/models/invoice_list_summary_response.rb +9 -3
  38. data/lib/orb/models/licenses/external_license_get_usage_params.rb +3 -3
  39. data/lib/orb/models/licenses/usage_get_all_usage_params.rb +3 -3
  40. data/lib/orb/models/licenses/usage_get_usage_params.rb +3 -3
  41. data/lib/orb/models/mutated_subscription.rb +169 -4
  42. data/lib/orb/models/new_allocation_price.rb +11 -1
  43. data/lib/orb/models/new_floating_bulk_price.rb +1 -3
  44. data/lib/orb/models/new_floating_bulk_with_proration_price.rb +1 -3
  45. data/lib/orb/models/new_floating_cumulative_grouped_bulk_price.rb +1 -3
  46. data/lib/orb/models/new_floating_grouped_allocation_price.rb +1 -3
  47. data/lib/orb/models/new_floating_grouped_tiered_package_price.rb +1 -3
  48. data/lib/orb/models/new_floating_grouped_tiered_price.rb +1 -3
  49. data/lib/orb/models/new_floating_grouped_with_metered_minimum_price.rb +1 -3
  50. data/lib/orb/models/new_floating_grouped_with_prorated_minimum_price.rb +1 -3
  51. data/lib/orb/models/new_floating_matrix_price.rb +1 -3
  52. data/lib/orb/models/new_floating_matrix_with_allocation_price.rb +1 -3
  53. data/lib/orb/models/new_floating_matrix_with_display_name_price.rb +1 -3
  54. data/lib/orb/models/new_floating_max_group_tiered_package_price.rb +1 -3
  55. data/lib/orb/models/new_floating_minimum_composite_price.rb +1 -3
  56. data/lib/orb/models/new_floating_package_price.rb +1 -3
  57. data/lib/orb/models/new_floating_package_with_allocation_price.rb +1 -3
  58. data/lib/orb/models/new_floating_scalable_matrix_with_tiered_pricing_price.rb +1 -3
  59. data/lib/orb/models/new_floating_scalable_matrix_with_unit_pricing_price.rb +1 -3
  60. data/lib/orb/models/new_floating_threshold_total_amount_price.rb +1 -3
  61. data/lib/orb/models/new_floating_tiered_package_price.rb +1 -3
  62. data/lib/orb/models/new_floating_tiered_package_with_minimum_price.rb +1 -3
  63. data/lib/orb/models/new_floating_tiered_price.rb +1 -3
  64. data/lib/orb/models/new_floating_tiered_with_minimum_price.rb +1 -3
  65. data/lib/orb/models/new_floating_tiered_with_proration_price.rb +1 -3
  66. data/lib/orb/models/new_floating_unit_price.rb +1 -3
  67. data/lib/orb/models/new_floating_unit_with_percent_price.rb +1 -3
  68. data/lib/orb/models/new_floating_unit_with_proration_price.rb +1 -3
  69. data/lib/orb/models/new_plan_bulk_price.rb +1 -1
  70. data/lib/orb/models/new_plan_bulk_with_proration_price.rb +1 -3
  71. data/lib/orb/models/new_plan_cumulative_grouped_bulk_price.rb +1 -3
  72. data/lib/orb/models/new_plan_grouped_allocation_price.rb +1 -3
  73. data/lib/orb/models/new_plan_grouped_tiered_package_price.rb +1 -3
  74. data/lib/orb/models/new_plan_grouped_tiered_price.rb +1 -3
  75. data/lib/orb/models/new_plan_grouped_with_metered_minimum_price.rb +1 -3
  76. data/lib/orb/models/new_plan_grouped_with_prorated_minimum_price.rb +1 -3
  77. data/lib/orb/models/new_plan_matrix_price.rb +1 -5
  78. data/lib/orb/models/new_plan_matrix_with_allocation_price.rb +1 -3
  79. data/lib/orb/models/new_plan_matrix_with_display_name_price.rb +1 -3
  80. data/lib/orb/models/new_plan_max_group_tiered_package_price.rb +1 -3
  81. data/lib/orb/models/new_plan_minimum_composite_price.rb +1 -3
  82. data/lib/orb/models/new_plan_package_price.rb +1 -5
  83. data/lib/orb/models/new_plan_package_with_allocation_price.rb +1 -3
  84. data/lib/orb/models/new_plan_scalable_matrix_with_tiered_pricing_price.rb +1 -3
  85. data/lib/orb/models/new_plan_scalable_matrix_with_unit_pricing_price.rb +1 -3
  86. data/lib/orb/models/new_plan_threshold_total_amount_price.rb +1 -3
  87. data/lib/orb/models/new_plan_tiered_package_price.rb +1 -3
  88. data/lib/orb/models/new_plan_tiered_package_with_minimum_price.rb +1 -3
  89. data/lib/orb/models/new_plan_tiered_price.rb +1 -5
  90. data/lib/orb/models/new_plan_tiered_with_minimum_price.rb +1 -3
  91. data/lib/orb/models/new_plan_unit_price.rb +1 -1
  92. data/lib/orb/models/new_plan_unit_with_percent_price.rb +1 -3
  93. data/lib/orb/models/new_plan_unit_with_proration_price.rb +1 -3
  94. data/lib/orb/models/new_subscription_bulk_price.rb +1 -3
  95. data/lib/orb/models/new_subscription_bulk_with_proration_price.rb +1 -3
  96. data/lib/orb/models/new_subscription_cumulative_grouped_bulk_price.rb +1 -3
  97. data/lib/orb/models/new_subscription_grouped_allocation_price.rb +1 -3
  98. data/lib/orb/models/new_subscription_grouped_tiered_package_price.rb +1 -3
  99. data/lib/orb/models/new_subscription_grouped_tiered_price.rb +1 -3
  100. data/lib/orb/models/new_subscription_grouped_with_metered_minimum_price.rb +1 -3
  101. data/lib/orb/models/new_subscription_grouped_with_prorated_minimum_price.rb +1 -3
  102. data/lib/orb/models/new_subscription_matrix_price.rb +1 -3
  103. data/lib/orb/models/new_subscription_matrix_with_allocation_price.rb +1 -3
  104. data/lib/orb/models/new_subscription_matrix_with_display_name_price.rb +1 -3
  105. data/lib/orb/models/new_subscription_max_group_tiered_package_price.rb +1 -3
  106. data/lib/orb/models/new_subscription_minimum_composite_price.rb +1 -3
  107. data/lib/orb/models/new_subscription_package_price.rb +1 -3
  108. data/lib/orb/models/new_subscription_package_with_allocation_price.rb +1 -3
  109. data/lib/orb/models/new_subscription_scalable_matrix_with_tiered_pricing_price.rb +1 -3
  110. data/lib/orb/models/new_subscription_scalable_matrix_with_unit_pricing_price.rb +1 -3
  111. data/lib/orb/models/new_subscription_threshold_total_amount_price.rb +1 -3
  112. data/lib/orb/models/new_subscription_tiered_package_price.rb +1 -3
  113. data/lib/orb/models/new_subscription_tiered_package_with_minimum_price.rb +1 -3
  114. data/lib/orb/models/new_subscription_tiered_price.rb +1 -3
  115. data/lib/orb/models/new_subscription_tiered_with_minimum_price.rb +1 -3
  116. data/lib/orb/models/new_subscription_unit_price.rb +1 -3
  117. data/lib/orb/models/new_subscription_unit_with_percent_price.rb +1 -3
  118. data/lib/orb/models/new_subscription_unit_with_proration_price.rb +1 -3
  119. data/lib/orb/models/per_price_cost.rb +2 -2
  120. data/lib/orb/models/plan.rb +189 -9
  121. data/lib/orb/models/plan_create_params.rb +1047 -8228
  122. data/lib/orb/models/plan_update_params.rb +9 -1
  123. data/lib/orb/models/plan_version.rb +186 -5
  124. data/lib/orb/models/plans/external_plan_id_update_params.rb +9 -1
  125. data/lib/orb/models/plans/migration_cancel_response.rb +22 -4
  126. data/lib/orb/models/plans/migration_list_response.rb +22 -4
  127. data/lib/orb/models/plans/migration_retrieve_response.rb +22 -4
  128. data/lib/orb/models/price.rb +2614 -1268
  129. data/lib/orb/models/price_create_params.rb +866 -49
  130. data/lib/orb/models/price_evaluate_multiple_params.rb +889 -54
  131. data/lib/orb/models/price_evaluate_preview_events_params.rb +881 -46
  132. data/lib/orb/models/price_interval.rb +2 -2
  133. data/lib/orb/models/subscription.rb +168 -4
  134. data/lib/orb/models/subscription_create_params.rb +2818 -674
  135. data/lib/orb/models/subscription_price_intervals_params.rb +1098 -57
  136. data/lib/orb/models/subscription_schedule_plan_change_params.rb +2834 -687
  137. data/lib/orb/models/subscription_update_params.rb +12 -1
  138. data/lib/orb/models.rb +2 -0
  139. data/lib/orb/resources/alerts.rb +14 -3
  140. data/lib/orb/resources/customers/credits/ledger.rb +28 -14
  141. data/lib/orb/resources/customers.rb +6 -2
  142. data/lib/orb/resources/events.rb +7 -34
  143. data/lib/orb/resources/invoices.rb +6 -2
  144. data/lib/orb/resources/licenses/external_licenses.rb +1 -1
  145. data/lib/orb/resources/licenses/usage.rb +2 -2
  146. data/lib/orb/resources/metrics.rb +5 -5
  147. data/lib/orb/resources/plans/external_plan_id.rb +5 -3
  148. data/lib/orb/resources/plans.rb +9 -5
  149. data/lib/orb/resources/prices/external_price_id.rb +2 -2
  150. data/lib/orb/resources/prices.rb +5 -5
  151. data/lib/orb/resources/subscriptions.rb +20 -3
  152. data/lib/orb/version.rb +1 -1
  153. data/lib/orb.rb +1 -0
  154. data/rbi/orb/models/accounting_provider_config.rbi +38 -5
  155. data/rbi/orb/models/adjustment_interval.rbi +336 -0
  156. data/rbi/orb/models/alert.rbi +172 -3
  157. data/rbi/orb/models/alert_create_for_subscription_params.rbi +268 -9
  158. data/rbi/orb/models/alert_update_params.rbi +208 -0
  159. data/rbi/orb/models/beta/external_plan_id_create_plan_version_params.rbi +3833 -28395
  160. data/rbi/orb/models/beta_create_plan_version_params.rbi +3833 -28363
  161. data/rbi/orb/models/billable_metric.rbi +10 -0
  162. data/rbi/orb/models/changed_subscription_resources.rbi +360 -5
  163. data/rbi/orb/models/conversion_rate_config.rbi +18 -0
  164. data/rbi/orb/models/credit_block_list_invoices_response.rbi +425 -3
  165. data/rbi/orb/models/credit_block_retrieve_response.rbi +421 -3
  166. data/rbi/orb/models/customer.rbi +190 -10
  167. data/rbi/orb/models/customer_create_params.rbi +12 -2
  168. data/rbi/orb/models/customer_tax_id.rbi +15 -1
  169. data/rbi/orb/models/customer_update_by_external_id_params.rbi +22 -2
  170. data/rbi/orb/models/customer_update_params.rbi +22 -2
  171. data/rbi/orb/models/customers/credit_list_by_external_id_response.rbi +425 -3
  172. data/rbi/orb/models/customers/credit_list_response.rbi +426 -3
  173. data/rbi/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rbi +6 -6
  174. data/rbi/orb/models/customers/credits/ledger_create_entry_params.rbi +6 -6
  175. data/rbi/orb/models/dimensional_price_group.rbi +1 -1
  176. data/rbi/orb/models/discount.rbi +269 -1
  177. data/rbi/orb/models/event_ingest_params.rbi +4 -2
  178. data/rbi/orb/models/invoice.rbi +360 -5
  179. data/rbi/orb/models/invoice_create_params.rbi +12 -7
  180. data/rbi/orb/models/invoice_fetch_upcoming_response.rbi +360 -5
  181. data/rbi/orb/models/invoice_issue_summary_response.rbi +19 -4
  182. data/rbi/orb/models/invoice_level_discount.rbi +298 -1
  183. data/rbi/orb/models/invoice_line_item_create_response.rbi +339 -0
  184. data/rbi/orb/models/invoice_list_summary_response.rbi +19 -4
  185. data/rbi/orb/models/licenses/external_license_get_usage_params.rbi +3 -3
  186. data/rbi/orb/models/licenses/usage_get_all_usage_params.rbi +3 -3
  187. data/rbi/orb/models/licenses/usage_get_usage_params.rbi +3 -3
  188. data/rbi/orb/models/mutated_subscription.rbi +324 -2
  189. data/rbi/orb/models/new_allocation_price.rbi +12 -0
  190. data/rbi/orb/models/per_price_cost.rbi +3 -0
  191. data/rbi/orb/models/plan.rbi +339 -2
  192. data/rbi/orb/models/plan_create_params.rbi +1877 -14138
  193. data/rbi/orb/models/plan_update_params.rbi +8 -0
  194. data/rbi/orb/models/plan_version.rbi +339 -0
  195. data/rbi/orb/models/plans/external_plan_id_update_params.rbi +8 -0
  196. data/rbi/orb/models/plans/migration_cancel_response.rbi +22 -1
  197. data/rbi/orb/models/plans/migration_list_response.rbi +22 -1
  198. data/rbi/orb/models/plans/migration_retrieve_response.rbi +22 -1
  199. data/rbi/orb/models/price.rbi +4552 -2285
  200. data/rbi/orb/models/price_create_params.rbi +1540 -114
  201. data/rbi/orb/models/price_evaluate_multiple_params.rbi +1540 -114
  202. data/rbi/orb/models/price_evaluate_preview_events_params.rbi +1540 -114
  203. data/rbi/orb/models/price_interval.rbi +3 -0
  204. data/rbi/orb/models/subscription.rbi +324 -2
  205. data/rbi/orb/models/subscription_create_params.rbi +4998 -1186
  206. data/rbi/orb/models/subscription_price_intervals_params.rbi +2127 -264
  207. data/rbi/orb/models/subscription_schedule_plan_change_params.rbi +4997 -1185
  208. data/rbi/orb/models/subscription_update_params.rbi +14 -0
  209. data/rbi/orb/models.rbi +2 -0
  210. data/rbi/orb/resources/alerts.rbi +39 -4
  211. data/rbi/orb/resources/customers/credits/ledger.rbi +28 -14
  212. data/rbi/orb/resources/customers.rbi +23 -0
  213. data/rbi/orb/resources/events.rbi +8 -35
  214. data/rbi/orb/resources/invoices.rbi +9 -3
  215. data/rbi/orb/resources/licenses/external_licenses.rbi +1 -1
  216. data/rbi/orb/resources/licenses/usage.rbi +2 -2
  217. data/rbi/orb/resources/metrics.rbi +5 -5
  218. data/rbi/orb/resources/plans/external_plan_id.rbi +5 -2
  219. data/rbi/orb/resources/plans.rbi +9 -3
  220. data/rbi/orb/resources/prices.rbi +3 -0
  221. data/rbi/orb/resources/subscriptions.rbi +29 -0
  222. data/sig/orb/models/accounting_provider_config.rbs +21 -4
  223. data/sig/orb/models/adjustment_interval.rbs +134 -0
  224. data/sig/orb/models/alert.rbs +85 -3
  225. data/sig/orb/models/alert_create_for_subscription_params.rbs +86 -4
  226. data/sig/orb/models/alert_update_params.rbs +86 -1
  227. data/sig/orb/models/beta/external_plan_id_create_plan_version_params.rbs +1803 -11601
  228. data/sig/orb/models/beta_create_plan_version_params.rbs +1747 -11541
  229. data/sig/orb/models/billable_metric.rbs +5 -0
  230. data/sig/orb/models/changed_subscription_resources.rbs +140 -1
  231. data/sig/orb/models/conversion_rate_config.rbs +12 -0
  232. data/sig/orb/models/credit_block_list_invoices_response.rbs +142 -3
  233. data/sig/orb/models/credit_block_retrieve_response.rbs +142 -3
  234. data/sig/orb/models/customer.rbs +70 -4
  235. data/sig/orb/models/customer_create_params.rbs +2 -2
  236. data/sig/orb/models/customer_tax_id.rbs +20 -2
  237. data/sig/orb/models/customer_update_by_external_id_params.rbs +7 -2
  238. data/sig/orb/models/customer_update_params.rbs +7 -2
  239. data/sig/orb/models/customers/credit_list_by_external_id_response.rbs +142 -3
  240. data/sig/orb/models/customers/credit_list_response.rbs +142 -3
  241. data/sig/orb/models/discount.rbs +114 -0
  242. data/sig/orb/models/invoice.rbs +140 -1
  243. data/sig/orb/models/invoice_fetch_upcoming_response.rbs +140 -1
  244. data/sig/orb/models/invoice_issue_summary_response.rbs +2 -1
  245. data/sig/orb/models/invoice_level_discount.rbs +117 -1
  246. data/sig/orb/models/invoice_line_item_create_response.rbs +134 -0
  247. data/sig/orb/models/invoice_list_summary_response.rbs +2 -1
  248. data/sig/orb/models/licenses/external_license_get_usage_params.rbs +4 -4
  249. data/sig/orb/models/licenses/usage_get_all_usage_params.rbs +4 -4
  250. data/sig/orb/models/licenses/usage_get_usage_params.rbs +4 -4
  251. data/sig/orb/models/mutated_subscription.rbs +124 -0
  252. data/sig/orb/models/new_allocation_price.rbs +5 -0
  253. data/sig/orb/models/new_floating_bulk_price.rbs +4 -4
  254. data/sig/orb/models/new_floating_bulk_with_proration_price.rbs +4 -4
  255. data/sig/orb/models/new_floating_cumulative_grouped_bulk_price.rbs +4 -4
  256. data/sig/orb/models/new_floating_grouped_allocation_price.rbs +4 -4
  257. data/sig/orb/models/new_floating_grouped_tiered_package_price.rbs +4 -4
  258. data/sig/orb/models/new_floating_grouped_tiered_price.rbs +4 -4
  259. data/sig/orb/models/new_floating_grouped_with_metered_minimum_price.rbs +4 -4
  260. data/sig/orb/models/new_floating_grouped_with_prorated_minimum_price.rbs +4 -4
  261. data/sig/orb/models/new_floating_matrix_price.rbs +4 -4
  262. data/sig/orb/models/new_floating_matrix_with_allocation_price.rbs +4 -4
  263. data/sig/orb/models/new_floating_matrix_with_display_name_price.rbs +4 -4
  264. data/sig/orb/models/new_floating_max_group_tiered_package_price.rbs +4 -4
  265. data/sig/orb/models/new_floating_minimum_composite_price.rbs +4 -4
  266. data/sig/orb/models/new_floating_package_price.rbs +4 -4
  267. data/sig/orb/models/new_floating_package_with_allocation_price.rbs +4 -4
  268. data/sig/orb/models/new_floating_scalable_matrix_with_tiered_pricing_price.rbs +4 -4
  269. data/sig/orb/models/new_floating_scalable_matrix_with_unit_pricing_price.rbs +4 -4
  270. data/sig/orb/models/new_floating_threshold_total_amount_price.rbs +4 -4
  271. data/sig/orb/models/new_floating_tiered_package_price.rbs +4 -4
  272. data/sig/orb/models/new_floating_tiered_package_with_minimum_price.rbs +4 -4
  273. data/sig/orb/models/new_floating_tiered_price.rbs +4 -4
  274. data/sig/orb/models/new_floating_tiered_with_minimum_price.rbs +4 -4
  275. data/sig/orb/models/new_floating_tiered_with_proration_price.rbs +4 -4
  276. data/sig/orb/models/new_floating_unit_price.rbs +4 -4
  277. data/sig/orb/models/new_floating_unit_with_percent_price.rbs +4 -4
  278. data/sig/orb/models/new_floating_unit_with_proration_price.rbs +4 -4
  279. data/sig/orb/models/new_plan_bulk_price.rbs +4 -4
  280. data/sig/orb/models/new_plan_bulk_with_proration_price.rbs +4 -4
  281. data/sig/orb/models/new_plan_cumulative_grouped_bulk_price.rbs +4 -4
  282. data/sig/orb/models/new_plan_grouped_allocation_price.rbs +4 -4
  283. data/sig/orb/models/new_plan_grouped_tiered_package_price.rbs +4 -4
  284. data/sig/orb/models/new_plan_grouped_tiered_price.rbs +4 -4
  285. data/sig/orb/models/new_plan_grouped_with_metered_minimum_price.rbs +4 -4
  286. data/sig/orb/models/new_plan_grouped_with_prorated_minimum_price.rbs +4 -4
  287. data/sig/orb/models/new_plan_matrix_price.rbs +4 -4
  288. data/sig/orb/models/new_plan_matrix_with_allocation_price.rbs +4 -4
  289. data/sig/orb/models/new_plan_matrix_with_display_name_price.rbs +4 -4
  290. data/sig/orb/models/new_plan_max_group_tiered_package_price.rbs +4 -4
  291. data/sig/orb/models/new_plan_minimum_composite_price.rbs +4 -4
  292. data/sig/orb/models/new_plan_package_price.rbs +4 -4
  293. data/sig/orb/models/new_plan_package_with_allocation_price.rbs +4 -4
  294. data/sig/orb/models/new_plan_scalable_matrix_with_tiered_pricing_price.rbs +4 -4
  295. data/sig/orb/models/new_plan_scalable_matrix_with_unit_pricing_price.rbs +4 -4
  296. data/sig/orb/models/new_plan_threshold_total_amount_price.rbs +4 -4
  297. data/sig/orb/models/new_plan_tiered_package_price.rbs +4 -4
  298. data/sig/orb/models/new_plan_tiered_package_with_minimum_price.rbs +4 -4
  299. data/sig/orb/models/new_plan_tiered_price.rbs +4 -4
  300. data/sig/orb/models/new_plan_tiered_with_minimum_price.rbs +4 -4
  301. data/sig/orb/models/new_plan_unit_price.rbs +4 -4
  302. data/sig/orb/models/new_plan_unit_with_percent_price.rbs +4 -4
  303. data/sig/orb/models/new_plan_unit_with_proration_price.rbs +4 -4
  304. data/sig/orb/models/new_subscription_bulk_price.rbs +4 -4
  305. data/sig/orb/models/new_subscription_bulk_with_proration_price.rbs +4 -4
  306. data/sig/orb/models/new_subscription_cumulative_grouped_bulk_price.rbs +4 -4
  307. data/sig/orb/models/new_subscription_grouped_allocation_price.rbs +4 -4
  308. data/sig/orb/models/new_subscription_grouped_tiered_package_price.rbs +4 -4
  309. data/sig/orb/models/new_subscription_grouped_tiered_price.rbs +4 -4
  310. data/sig/orb/models/new_subscription_grouped_with_metered_minimum_price.rbs +4 -4
  311. data/sig/orb/models/new_subscription_grouped_with_prorated_minimum_price.rbs +4 -4
  312. data/sig/orb/models/new_subscription_matrix_price.rbs +4 -4
  313. data/sig/orb/models/new_subscription_matrix_with_allocation_price.rbs +4 -4
  314. data/sig/orb/models/new_subscription_matrix_with_display_name_price.rbs +4 -4
  315. data/sig/orb/models/new_subscription_max_group_tiered_package_price.rbs +4 -4
  316. data/sig/orb/models/new_subscription_minimum_composite_price.rbs +4 -4
  317. data/sig/orb/models/new_subscription_package_price.rbs +4 -4
  318. data/sig/orb/models/new_subscription_package_with_allocation_price.rbs +4 -4
  319. data/sig/orb/models/new_subscription_scalable_matrix_with_tiered_pricing_price.rbs +4 -4
  320. data/sig/orb/models/new_subscription_scalable_matrix_with_unit_pricing_price.rbs +4 -4
  321. data/sig/orb/models/new_subscription_threshold_total_amount_price.rbs +4 -4
  322. data/sig/orb/models/new_subscription_tiered_package_price.rbs +4 -4
  323. data/sig/orb/models/new_subscription_tiered_package_with_minimum_price.rbs +4 -4
  324. data/sig/orb/models/new_subscription_tiered_price.rbs +4 -4
  325. data/sig/orb/models/new_subscription_tiered_with_minimum_price.rbs +4 -4
  326. data/sig/orb/models/new_subscription_unit_price.rbs +4 -4
  327. data/sig/orb/models/new_subscription_unit_with_percent_price.rbs +4 -4
  328. data/sig/orb/models/new_subscription_unit_with_proration_price.rbs +4 -4
  329. data/sig/orb/models/plan.rbs +134 -0
  330. data/sig/orb/models/plan_create_params.rbs +836 -5728
  331. data/sig/orb/models/plan_update_params.rbs +5 -0
  332. data/sig/orb/models/plan_version.rbs +134 -0
  333. data/sig/orb/models/plans/external_plan_id_update_params.rbs +5 -0
  334. data/sig/orb/models/price.rbs +2200 -1150
  335. data/sig/orb/models/price_create_params.rbs +611 -23
  336. data/sig/orb/models/price_evaluate_multiple_params.rbs +626 -23
  337. data/sig/orb/models/price_evaluate_preview_events_params.rbs +626 -23
  338. data/sig/orb/models/subscription.rbs +124 -0
  339. data/sig/orb/models/subscription_create_params.rbs +2009 -430
  340. data/sig/orb/models/subscription_price_intervals_params.rbs +795 -23
  341. data/sig/orb/models/subscription_schedule_plan_change_params.rbs +2009 -430
  342. data/sig/orb/models/subscription_update_params.rbs +5 -0
  343. data/sig/orb/models.rbs +2 -0
  344. data/sig/orb/resources/alerts.rbs +5 -1
  345. data/sig/orb/resources/customers.rbs +2 -0
  346. data/sig/orb/resources/licenses/external_licenses.rbs +1 -1
  347. data/sig/orb/resources/licenses/usage.rbs +2 -2
  348. data/sig/orb/resources/plans/external_plan_id.rbs +1 -0
  349. data/sig/orb/resources/plans.rbs +2 -0
  350. data/sig/orb/resources/subscriptions.rbs +3 -0
  351. metadata +6 -7
@@ -5,13 +5,16 @@ module Orb
5
5
  {
6
6
  id: String,
7
7
  balance: Float,
8
+ credit_block_source: Orb::Models::Customers::CreditListResponse::credit_block_source,
8
9
  effective_date: Time?,
9
10
  expiry_date: Time?,
10
11
  filters: ::Array[Orb::Models::Customers::CreditListResponse::Filter],
11
12
  maximum_initial_balance: Float?,
12
13
  metadata: ::Hash[Symbol, String],
13
14
  per_unit_cost_basis: String?,
14
- status: Orb::Models::Customers::CreditListResponse::status
15
+ status: Orb::Models::Customers::CreditListResponse::status,
16
+ credit_allocation: Orb::Models::Customers::CreditListResponse::CreditAllocation?,
17
+ credit_commitment: Orb::Models::Customers::CreditListResponse::CreditCommitment?
15
18
  }
16
19
 
17
20
  class CreditListResponse < Orb::Internal::Type::BaseModel
@@ -19,6 +22,8 @@ module Orb
19
22
 
20
23
  attr_accessor balance: Float
21
24
 
25
+ attr_accessor credit_block_source: Orb::Models::Customers::CreditListResponse::credit_block_source
26
+
22
27
  attr_accessor effective_date: Time?
23
28
 
24
29
  attr_accessor expiry_date: Time?
@@ -33,30 +38,53 @@ module Orb
33
38
 
34
39
  attr_accessor status: Orb::Models::Customers::CreditListResponse::status
35
40
 
41
+ attr_accessor credit_allocation: Orb::Models::Customers::CreditListResponse::CreditAllocation?
42
+
43
+ attr_accessor credit_commitment: Orb::Models::Customers::CreditListResponse::CreditCommitment?
44
+
36
45
  def initialize: (
37
46
  id: String,
38
47
  balance: Float,
48
+ credit_block_source: Orb::Models::Customers::CreditListResponse::credit_block_source,
39
49
  effective_date: Time?,
40
50
  expiry_date: Time?,
41
51
  filters: ::Array[Orb::Models::Customers::CreditListResponse::Filter],
42
52
  maximum_initial_balance: Float?,
43
53
  metadata: ::Hash[Symbol, String],
44
54
  per_unit_cost_basis: String?,
45
- status: Orb::Models::Customers::CreditListResponse::status
55
+ status: Orb::Models::Customers::CreditListResponse::status,
56
+ ?credit_allocation: Orb::Models::Customers::CreditListResponse::CreditAllocation?,
57
+ ?credit_commitment: Orb::Models::Customers::CreditListResponse::CreditCommitment?
46
58
  ) -> void
47
59
 
48
60
  def to_hash: -> {
49
61
  id: String,
50
62
  balance: Float,
63
+ credit_block_source: Orb::Models::Customers::CreditListResponse::credit_block_source,
51
64
  effective_date: Time?,
52
65
  expiry_date: Time?,
53
66
  filters: ::Array[Orb::Models::Customers::CreditListResponse::Filter],
54
67
  maximum_initial_balance: Float?,
55
68
  metadata: ::Hash[Symbol, String],
56
69
  per_unit_cost_basis: String?,
57
- status: Orb::Models::Customers::CreditListResponse::status
70
+ status: Orb::Models::Customers::CreditListResponse::status,
71
+ credit_allocation: Orb::Models::Customers::CreditListResponse::CreditAllocation?,
72
+ credit_commitment: Orb::Models::Customers::CreditListResponse::CreditCommitment?
58
73
  }
59
74
 
75
+ type credit_block_source = :allocation | :top_up | :commitment | :manual
76
+
77
+ module CreditBlockSource
78
+ extend Orb::Internal::Type::Enum
79
+
80
+ ALLOCATION: :allocation
81
+ TOP_UP: :top_up
82
+ COMMITMENT: :commitment
83
+ MANUAL: :manual
84
+
85
+ def self?.values: -> ::Array[Orb::Models::Customers::CreditListResponse::credit_block_source]
86
+ end
87
+
60
88
  type filter =
61
89
  {
62
90
  field: Orb::Models::Customers::CreditListResponse::Filter::field,
@@ -115,6 +143,117 @@ module Orb
115
143
 
116
144
  def self?.values: -> ::Array[Orb::Models::Customers::CreditListResponse::status]
117
145
  end
146
+
147
+ type credit_allocation =
148
+ {
149
+ allows_rollover: bool,
150
+ currency: String,
151
+ custom_expiration: Orb::CustomExpiration?,
152
+ item_id: String,
153
+ filters: ::Array[Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter],
154
+ license_type_id: String?
155
+ }
156
+
157
+ class CreditAllocation < Orb::Internal::Type::BaseModel
158
+ attr_accessor allows_rollover: bool
159
+
160
+ attr_accessor currency: String
161
+
162
+ attr_accessor custom_expiration: Orb::CustomExpiration?
163
+
164
+ attr_accessor item_id: String
165
+
166
+ attr_reader filters: ::Array[Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter]?
167
+
168
+ def filters=: (
169
+ ::Array[Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter]
170
+ ) -> ::Array[Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter]
171
+
172
+ attr_accessor license_type_id: String?
173
+
174
+ def initialize: (
175
+ allows_rollover: bool,
176
+ currency: String,
177
+ custom_expiration: Orb::CustomExpiration?,
178
+ item_id: String,
179
+ ?filters: ::Array[Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter],
180
+ ?license_type_id: String?
181
+ ) -> void
182
+
183
+ def to_hash: -> {
184
+ allows_rollover: bool,
185
+ currency: String,
186
+ custom_expiration: Orb::CustomExpiration?,
187
+ item_id: String,
188
+ filters: ::Array[Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter],
189
+ license_type_id: String?
190
+ }
191
+
192
+ type filter =
193
+ {
194
+ field: Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::field,
195
+ operator: Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::operator,
196
+ values: ::Array[String]
197
+ }
198
+
199
+ class Filter < Orb::Internal::Type::BaseModel
200
+ attr_accessor field: Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::field
201
+
202
+ attr_accessor operator: Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::operator
203
+
204
+ attr_accessor values: ::Array[String]
205
+
206
+ def initialize: (
207
+ field: Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::field,
208
+ operator: Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::operator,
209
+ values: ::Array[String]
210
+ ) -> void
211
+
212
+ def to_hash: -> {
213
+ field: Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::field,
214
+ operator: Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::operator,
215
+ values: ::Array[String]
216
+ }
217
+
218
+ type field =
219
+ :price_id | :item_id | :price_type | :currency | :pricing_unit_id
220
+
221
+ module Field
222
+ extend Orb::Internal::Type::Enum
223
+
224
+ PRICE_ID: :price_id
225
+ ITEM_ID: :item_id
226
+ PRICE_TYPE: :price_type
227
+ CURRENCY: :currency
228
+ PRICING_UNIT_ID: :pricing_unit_id
229
+
230
+ def self?.values: -> ::Array[Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::field]
231
+ end
232
+
233
+ type operator = :includes | :excludes
234
+
235
+ module Operator
236
+ extend Orb::Internal::Type::Enum
237
+
238
+ INCLUDES: :includes
239
+ EXCLUDES: :excludes
240
+
241
+ def self?.values: -> ::Array[Orb::Models::Customers::CreditListResponse::CreditAllocation::Filter::operator]
242
+ end
243
+ end
244
+ end
245
+
246
+ type credit_commitment = { id: String, subscription_id: String? }
247
+
248
+ class CreditCommitment < Orb::Internal::Type::BaseModel
249
+ attr_accessor id: String
250
+
251
+ attr_accessor subscription_id: String?
252
+
253
+ def initialize: (id: String, ?subscription_id: String?) -> void
254
+
255
+ def to_hash: -> { id: String, subscription_id: String? }
256
+ end
118
257
  end
119
258
  end
120
259
  end
@@ -5,10 +5,124 @@ module Orb
5
5
  | Orb::TrialDiscount
6
6
  | Orb::UsageDiscount
7
7
  | Orb::AmountDiscount
8
+ | Orb::Discount::TieredPercentage
8
9
 
9
10
  module Discount
10
11
  extend Orb::Internal::Type::Union
11
12
 
13
+ type tiered_percentage =
14
+ {
15
+ discount_type: :tiered_percentage,
16
+ tiers: ::Array[Orb::Discount::TieredPercentage::Tier],
17
+ applies_to_price_ids: ::Array[String]?,
18
+ filters: ::Array[Orb::Discount::TieredPercentage::Filter]?,
19
+ reason: String?
20
+ }
21
+
22
+ class TieredPercentage < Orb::Internal::Type::BaseModel
23
+ attr_accessor discount_type: :tiered_percentage
24
+
25
+ attr_accessor tiers: ::Array[Orb::Discount::TieredPercentage::Tier]
26
+
27
+ attr_accessor applies_to_price_ids: ::Array[String]?
28
+
29
+ attr_accessor filters: ::Array[Orb::Discount::TieredPercentage::Filter]?
30
+
31
+ attr_accessor reason: String?
32
+
33
+ def initialize: (
34
+ tiers: ::Array[Orb::Discount::TieredPercentage::Tier],
35
+ ?applies_to_price_ids: ::Array[String]?,
36
+ ?filters: ::Array[Orb::Discount::TieredPercentage::Filter]?,
37
+ ?reason: String?,
38
+ ?discount_type: :tiered_percentage
39
+ ) -> void
40
+
41
+ def to_hash: -> {
42
+ discount_type: :tiered_percentage,
43
+ tiers: ::Array[Orb::Discount::TieredPercentage::Tier],
44
+ applies_to_price_ids: ::Array[String]?,
45
+ filters: ::Array[Orb::Discount::TieredPercentage::Filter]?,
46
+ reason: String?
47
+ }
48
+
49
+ type tier =
50
+ { lower_bound: Float, percentage: Float, upper_bound: Float? }
51
+
52
+ class Tier < Orb::Internal::Type::BaseModel
53
+ attr_accessor lower_bound: Float
54
+
55
+ attr_accessor percentage: Float
56
+
57
+ attr_accessor upper_bound: Float?
58
+
59
+ def initialize: (
60
+ lower_bound: Float,
61
+ percentage: Float,
62
+ ?upper_bound: Float?
63
+ ) -> void
64
+
65
+ def to_hash: -> {
66
+ lower_bound: Float,
67
+ percentage: Float,
68
+ upper_bound: Float?
69
+ }
70
+ end
71
+
72
+ type filter =
73
+ {
74
+ field: Orb::Models::Discount::TieredPercentage::Filter::field,
75
+ operator: Orb::Models::Discount::TieredPercentage::Filter::operator,
76
+ values: ::Array[String]
77
+ }
78
+
79
+ class Filter < Orb::Internal::Type::BaseModel
80
+ attr_accessor field: Orb::Models::Discount::TieredPercentage::Filter::field
81
+
82
+ attr_accessor operator: Orb::Models::Discount::TieredPercentage::Filter::operator
83
+
84
+ attr_accessor values: ::Array[String]
85
+
86
+ def initialize: (
87
+ field: Orb::Models::Discount::TieredPercentage::Filter::field,
88
+ operator: Orb::Models::Discount::TieredPercentage::Filter::operator,
89
+ values: ::Array[String]
90
+ ) -> void
91
+
92
+ def to_hash: -> {
93
+ field: Orb::Models::Discount::TieredPercentage::Filter::field,
94
+ operator: Orb::Models::Discount::TieredPercentage::Filter::operator,
95
+ values: ::Array[String]
96
+ }
97
+
98
+ type field =
99
+ :price_id | :item_id | :price_type | :currency | :pricing_unit_id
100
+
101
+ module Field
102
+ extend Orb::Internal::Type::Enum
103
+
104
+ PRICE_ID: :price_id
105
+ ITEM_ID: :item_id
106
+ PRICE_TYPE: :price_type
107
+ CURRENCY: :currency
108
+ PRICING_UNIT_ID: :pricing_unit_id
109
+
110
+ def self?.values: -> ::Array[Orb::Models::Discount::TieredPercentage::Filter::field]
111
+ end
112
+
113
+ type operator = :includes | :excludes
114
+
115
+ module Operator
116
+ extend Orb::Internal::Type::Enum
117
+
118
+ INCLUDES: :includes
119
+ EXCLUDES: :excludes
120
+
121
+ def self?.values: -> ::Array[Orb::Models::Discount::TieredPercentage::Filter::operator]
122
+ end
123
+ end
124
+ end
125
+
12
126
  def self?.variants: -> ::Array[Orb::Models::discount]
13
127
  end
14
128
  end
@@ -509,12 +509,150 @@ module Orb
509
509
  Orb::MonetaryUsageDiscountAdjustment
510
510
  | Orb::MonetaryAmountDiscountAdjustment
511
511
  | Orb::MonetaryPercentageDiscountAdjustment
512
+ | Orb::Invoice::LineItem::Adjustment::TieredPercentageDiscount
512
513
  | Orb::MonetaryMinimumAdjustment
513
514
  | Orb::MonetaryMaximumAdjustment
514
515
 
515
516
  module Adjustment
516
517
  extend Orb::Internal::Type::Union
517
518
 
519
+ type tiered_percentage_discount =
520
+ {
521
+ id: String,
522
+ adjustment_type: :tiered_percentage_discount,
523
+ amount: String,
524
+ applies_to_price_ids: ::Array[String],
525
+ filters: ::Array[Orb::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter],
526
+ is_invoice_level: bool,
527
+ reason: String?,
528
+ replaces_adjustment_id: String?,
529
+ tiers: ::Array[Orb::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Tier]
530
+ }
531
+
532
+ class TieredPercentageDiscount < Orb::Internal::Type::BaseModel
533
+ attr_accessor id: String
534
+
535
+ attr_accessor adjustment_type: :tiered_percentage_discount
536
+
537
+ attr_accessor amount: String
538
+
539
+ attr_accessor applies_to_price_ids: ::Array[String]
540
+
541
+ attr_accessor filters: ::Array[Orb::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter]
542
+
543
+ attr_accessor is_invoice_level: bool
544
+
545
+ attr_accessor reason: String?
546
+
547
+ attr_accessor replaces_adjustment_id: String?
548
+
549
+ attr_accessor tiers: ::Array[Orb::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Tier]
550
+
551
+ def initialize: (
552
+ id: String,
553
+ amount: String,
554
+ applies_to_price_ids: ::Array[String],
555
+ filters: ::Array[Orb::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter],
556
+ is_invoice_level: bool,
557
+ reason: String?,
558
+ replaces_adjustment_id: String?,
559
+ tiers: ::Array[Orb::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Tier],
560
+ ?adjustment_type: :tiered_percentage_discount
561
+ ) -> void
562
+
563
+ def to_hash: -> {
564
+ id: String,
565
+ adjustment_type: :tiered_percentage_discount,
566
+ amount: String,
567
+ applies_to_price_ids: ::Array[String],
568
+ filters: ::Array[Orb::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter],
569
+ is_invoice_level: bool,
570
+ reason: String?,
571
+ replaces_adjustment_id: String?,
572
+ tiers: ::Array[Orb::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Tier]
573
+ }
574
+
575
+ type filter =
576
+ {
577
+ field: Orb::Models::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter::field,
578
+ operator: Orb::Models::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter::operator,
579
+ values: ::Array[String]
580
+ }
581
+
582
+ class Filter < Orb::Internal::Type::BaseModel
583
+ attr_accessor field: Orb::Models::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter::field
584
+
585
+ attr_accessor operator: Orb::Models::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter::operator
586
+
587
+ attr_accessor values: ::Array[String]
588
+
589
+ def initialize: (
590
+ field: Orb::Models::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter::field,
591
+ operator: Orb::Models::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter::operator,
592
+ values: ::Array[String]
593
+ ) -> void
594
+
595
+ def to_hash: -> {
596
+ field: Orb::Models::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter::field,
597
+ operator: Orb::Models::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter::operator,
598
+ values: ::Array[String]
599
+ }
600
+
601
+ type field =
602
+ :price_id
603
+ | :item_id
604
+ | :price_type
605
+ | :currency
606
+ | :pricing_unit_id
607
+
608
+ module Field
609
+ extend Orb::Internal::Type::Enum
610
+
611
+ PRICE_ID: :price_id
612
+ ITEM_ID: :item_id
613
+ PRICE_TYPE: :price_type
614
+ CURRENCY: :currency
615
+ PRICING_UNIT_ID: :pricing_unit_id
616
+
617
+ def self?.values: -> ::Array[Orb::Models::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter::field]
618
+ end
619
+
620
+ type operator = :includes | :excludes
621
+
622
+ module Operator
623
+ extend Orb::Internal::Type::Enum
624
+
625
+ INCLUDES: :includes
626
+ EXCLUDES: :excludes
627
+
628
+ def self?.values: -> ::Array[Orb::Models::Invoice::LineItem::Adjustment::TieredPercentageDiscount::Filter::operator]
629
+ end
630
+ end
631
+
632
+ type tier =
633
+ { lower_bound: Float, percentage: Float, upper_bound: Float? }
634
+
635
+ class Tier < Orb::Internal::Type::BaseModel
636
+ attr_accessor lower_bound: Float
637
+
638
+ attr_accessor percentage: Float
639
+
640
+ attr_accessor upper_bound: Float?
641
+
642
+ def initialize: (
643
+ lower_bound: Float,
644
+ percentage: Float,
645
+ ?upper_bound: Float?
646
+ ) -> void
647
+
648
+ def to_hash: -> {
649
+ lower_bound: Float,
650
+ percentage: Float,
651
+ upper_bound: Float?
652
+ }
653
+ end
654
+ end
655
+
518
656
  def self?.variants: -> ::Array[Orb::Models::Invoice::LineItem::adjustment]
519
657
  end
520
658
 
@@ -574,12 +712,13 @@ module Orb
574
712
  succeeded: bool
575
713
  }
576
714
 
577
- type payment_provider = :stripe
715
+ type payment_provider = :stripe | :adyen
578
716
 
579
717
  module PaymentProvider
580
718
  extend Orb::Internal::Type::Enum
581
719
 
582
720
  STRIPE: :stripe
721
+ ADYEN: :adyen
583
722
 
584
723
  def self?.values: -> ::Array[Orb::Models::Invoice::PaymentAttempt::payment_provider]
585
724
  end
@@ -509,12 +509,150 @@ module Orb
509
509
  Orb::MonetaryUsageDiscountAdjustment
510
510
  | Orb::MonetaryAmountDiscountAdjustment
511
511
  | Orb::MonetaryPercentageDiscountAdjustment
512
+ | Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount
512
513
  | Orb::MonetaryMinimumAdjustment
513
514
  | Orb::MonetaryMaximumAdjustment
514
515
 
515
516
  module Adjustment
516
517
  extend Orb::Internal::Type::Union
517
518
 
519
+ type tiered_percentage_discount =
520
+ {
521
+ id: String,
522
+ adjustment_type: :tiered_percentage_discount,
523
+ amount: String,
524
+ applies_to_price_ids: ::Array[String],
525
+ filters: ::Array[Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter],
526
+ is_invoice_level: bool,
527
+ reason: String?,
528
+ replaces_adjustment_id: String?,
529
+ tiers: ::Array[Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Tier]
530
+ }
531
+
532
+ class TieredPercentageDiscount < Orb::Internal::Type::BaseModel
533
+ attr_accessor id: String
534
+
535
+ attr_accessor adjustment_type: :tiered_percentage_discount
536
+
537
+ attr_accessor amount: String
538
+
539
+ attr_accessor applies_to_price_ids: ::Array[String]
540
+
541
+ attr_accessor filters: ::Array[Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter]
542
+
543
+ attr_accessor is_invoice_level: bool
544
+
545
+ attr_accessor reason: String?
546
+
547
+ attr_accessor replaces_adjustment_id: String?
548
+
549
+ attr_accessor tiers: ::Array[Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Tier]
550
+
551
+ def initialize: (
552
+ id: String,
553
+ amount: String,
554
+ applies_to_price_ids: ::Array[String],
555
+ filters: ::Array[Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter],
556
+ is_invoice_level: bool,
557
+ reason: String?,
558
+ replaces_adjustment_id: String?,
559
+ tiers: ::Array[Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Tier],
560
+ ?adjustment_type: :tiered_percentage_discount
561
+ ) -> void
562
+
563
+ def to_hash: -> {
564
+ id: String,
565
+ adjustment_type: :tiered_percentage_discount,
566
+ amount: String,
567
+ applies_to_price_ids: ::Array[String],
568
+ filters: ::Array[Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter],
569
+ is_invoice_level: bool,
570
+ reason: String?,
571
+ replaces_adjustment_id: String?,
572
+ tiers: ::Array[Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Tier]
573
+ }
574
+
575
+ type filter =
576
+ {
577
+ field: Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::field,
578
+ operator: Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::operator,
579
+ values: ::Array[String]
580
+ }
581
+
582
+ class Filter < Orb::Internal::Type::BaseModel
583
+ attr_accessor field: Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::field
584
+
585
+ attr_accessor operator: Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::operator
586
+
587
+ attr_accessor values: ::Array[String]
588
+
589
+ def initialize: (
590
+ field: Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::field,
591
+ operator: Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::operator,
592
+ values: ::Array[String]
593
+ ) -> void
594
+
595
+ def to_hash: -> {
596
+ field: Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::field,
597
+ operator: Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::operator,
598
+ values: ::Array[String]
599
+ }
600
+
601
+ type field =
602
+ :price_id
603
+ | :item_id
604
+ | :price_type
605
+ | :currency
606
+ | :pricing_unit_id
607
+
608
+ module Field
609
+ extend Orb::Internal::Type::Enum
610
+
611
+ PRICE_ID: :price_id
612
+ ITEM_ID: :item_id
613
+ PRICE_TYPE: :price_type
614
+ CURRENCY: :currency
615
+ PRICING_UNIT_ID: :pricing_unit_id
616
+
617
+ def self?.values: -> ::Array[Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::field]
618
+ end
619
+
620
+ type operator = :includes | :excludes
621
+
622
+ module Operator
623
+ extend Orb::Internal::Type::Enum
624
+
625
+ INCLUDES: :includes
626
+ EXCLUDES: :excludes
627
+
628
+ def self?.values: -> ::Array[Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::operator]
629
+ end
630
+ end
631
+
632
+ type tier =
633
+ { lower_bound: Float, percentage: Float, upper_bound: Float? }
634
+
635
+ class Tier < Orb::Internal::Type::BaseModel
636
+ attr_accessor lower_bound: Float
637
+
638
+ attr_accessor percentage: Float
639
+
640
+ attr_accessor upper_bound: Float?
641
+
642
+ def initialize: (
643
+ lower_bound: Float,
644
+ percentage: Float,
645
+ ?upper_bound: Float?
646
+ ) -> void
647
+
648
+ def to_hash: -> {
649
+ lower_bound: Float,
650
+ percentage: Float,
651
+ upper_bound: Float?
652
+ }
653
+ end
654
+ end
655
+
518
656
  def self?.variants: -> ::Array[Orb::Models::InvoiceFetchUpcomingResponse::LineItem::adjustment]
519
657
  end
520
658
 
@@ -574,12 +712,13 @@ module Orb
574
712
  succeeded: bool
575
713
  }
576
714
 
577
- type payment_provider = :stripe
715
+ type payment_provider = :stripe | :adyen
578
716
 
579
717
  module PaymentProvider
580
718
  extend Orb::Internal::Type::Enum
581
719
 
582
720
  STRIPE: :stripe
721
+ ADYEN: :adyen
583
722
 
584
723
  def self?.values: -> ::Array[Orb::Models::InvoiceFetchUpcomingResponse::PaymentAttempt::payment_provider]
585
724
  end
@@ -415,12 +415,13 @@ module Orb
415
415
  succeeded: bool
416
416
  }
417
417
 
418
- type payment_provider = :stripe
418
+ type payment_provider = :stripe | :adyen
419
419
 
420
420
  module PaymentProvider
421
421
  extend Orb::Internal::Type::Enum
422
422
 
423
423
  STRIPE: :stripe
424
+ ADYEN: :adyen
424
425
 
425
426
  def self?.values: -> ::Array[Orb::Models::InvoiceIssueSummaryResponse::PaymentAttempt::payment_provider]
426
427
  end