orb-billing 1.14.0 → 1.15.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 (347) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +12 -0
  3. data/lib/orb/client.rb +14 -0
  4. data/lib/orb/internal/transport/base_client.rb +5 -0
  5. data/lib/orb/internal/type/union.rb +13 -27
  6. data/lib/orb/models/accounting_provider_config.rb +14 -3
  7. data/lib/orb/models/adjustment_interval.rb +185 -3
  8. data/lib/orb/models/alert.rb +105 -1
  9. data/lib/orb/models/alert_create_for_subscription_params.rb +120 -7
  10. data/lib/orb/models/alert_update_params.rb +113 -1
  11. data/lib/orb/models/beta/external_plan_id_create_plan_version_params.rb +2419 -17109
  12. data/lib/orb/models/beta_create_plan_version_params.rb +2361 -16947
  13. data/lib/orb/models/changed_subscription_resources.rb +200 -10
  14. data/lib/orb/models/conversion_rate_config.rb +18 -0
  15. data/lib/orb/models/credit_block_list_invoices_response.rb +155 -1
  16. data/lib/orb/models/credit_block_retrieve_response.rb +150 -1
  17. data/lib/orb/models/customer.rb +111 -4
  18. data/lib/orb/models/customer_create_params.rb +6 -1
  19. data/lib/orb/models/customer_tax_id.rb +15 -1
  20. data/lib/orb/models/customer_update_by_external_id_params.rb +16 -2
  21. data/lib/orb/models/customer_update_params.rb +16 -2
  22. data/lib/orb/models/customers/credit_list_by_external_id_response.rb +155 -1
  23. data/lib/orb/models/customers/credit_list_response.rb +152 -1
  24. data/lib/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rb +4 -4
  25. data/lib/orb/models/customers/credits/ledger_create_entry_params.rb +4 -4
  26. data/lib/orb/models/dimensional_price_group.rb +1 -1
  27. data/lib/orb/models/discount.rb +145 -1
  28. data/lib/orb/models/event_ingest_params.rb +5 -2
  29. data/lib/orb/models/invoice.rb +198 -10
  30. data/lib/orb/models/invoice_create_params.rb +6 -5
  31. data/lib/orb/models/invoice_fetch_upcoming_response.rb +200 -10
  32. data/lib/orb/models/invoice_issue_summary_response.rb +9 -3
  33. data/lib/orb/models/invoice_level_discount.rb +145 -1
  34. data/lib/orb/models/invoice_line_item_create_response.rb +189 -5
  35. data/lib/orb/models/invoice_list_summary_response.rb +9 -3
  36. data/lib/orb/models/licenses/external_license_get_usage_params.rb +3 -3
  37. data/lib/orb/models/licenses/usage_get_all_usage_params.rb +3 -3
  38. data/lib/orb/models/licenses/usage_get_usage_params.rb +3 -3
  39. data/lib/orb/models/mutated_subscription.rb +169 -4
  40. data/lib/orb/models/new_allocation_price.rb +11 -1
  41. data/lib/orb/models/new_floating_bulk_price.rb +1 -3
  42. data/lib/orb/models/new_floating_bulk_with_proration_price.rb +1 -3
  43. data/lib/orb/models/new_floating_cumulative_grouped_bulk_price.rb +1 -3
  44. data/lib/orb/models/new_floating_grouped_allocation_price.rb +1 -3
  45. data/lib/orb/models/new_floating_grouped_tiered_package_price.rb +1 -3
  46. data/lib/orb/models/new_floating_grouped_tiered_price.rb +1 -3
  47. data/lib/orb/models/new_floating_grouped_with_metered_minimum_price.rb +1 -3
  48. data/lib/orb/models/new_floating_grouped_with_prorated_minimum_price.rb +1 -3
  49. data/lib/orb/models/new_floating_matrix_price.rb +1 -3
  50. data/lib/orb/models/new_floating_matrix_with_allocation_price.rb +1 -3
  51. data/lib/orb/models/new_floating_matrix_with_display_name_price.rb +1 -3
  52. data/lib/orb/models/new_floating_max_group_tiered_package_price.rb +1 -3
  53. data/lib/orb/models/new_floating_minimum_composite_price.rb +1 -3
  54. data/lib/orb/models/new_floating_package_price.rb +1 -3
  55. data/lib/orb/models/new_floating_package_with_allocation_price.rb +1 -3
  56. data/lib/orb/models/new_floating_scalable_matrix_with_tiered_pricing_price.rb +1 -3
  57. data/lib/orb/models/new_floating_scalable_matrix_with_unit_pricing_price.rb +1 -3
  58. data/lib/orb/models/new_floating_threshold_total_amount_price.rb +1 -3
  59. data/lib/orb/models/new_floating_tiered_package_price.rb +1 -3
  60. data/lib/orb/models/new_floating_tiered_package_with_minimum_price.rb +1 -3
  61. data/lib/orb/models/new_floating_tiered_price.rb +1 -3
  62. data/lib/orb/models/new_floating_tiered_with_minimum_price.rb +1 -3
  63. data/lib/orb/models/new_floating_tiered_with_proration_price.rb +1 -3
  64. data/lib/orb/models/new_floating_unit_price.rb +1 -3
  65. data/lib/orb/models/new_floating_unit_with_percent_price.rb +1 -3
  66. data/lib/orb/models/new_floating_unit_with_proration_price.rb +1 -3
  67. data/lib/orb/models/new_plan_bulk_price.rb +1 -1
  68. data/lib/orb/models/new_plan_bulk_with_proration_price.rb +1 -3
  69. data/lib/orb/models/new_plan_cumulative_grouped_bulk_price.rb +1 -3
  70. data/lib/orb/models/new_plan_grouped_allocation_price.rb +1 -3
  71. data/lib/orb/models/new_plan_grouped_tiered_package_price.rb +1 -3
  72. data/lib/orb/models/new_plan_grouped_tiered_price.rb +1 -3
  73. data/lib/orb/models/new_plan_grouped_with_metered_minimum_price.rb +1 -3
  74. data/lib/orb/models/new_plan_grouped_with_prorated_minimum_price.rb +1 -3
  75. data/lib/orb/models/new_plan_matrix_price.rb +1 -5
  76. data/lib/orb/models/new_plan_matrix_with_allocation_price.rb +1 -3
  77. data/lib/orb/models/new_plan_matrix_with_display_name_price.rb +1 -3
  78. data/lib/orb/models/new_plan_max_group_tiered_package_price.rb +1 -3
  79. data/lib/orb/models/new_plan_minimum_composite_price.rb +1 -3
  80. data/lib/orb/models/new_plan_package_price.rb +1 -5
  81. data/lib/orb/models/new_plan_package_with_allocation_price.rb +1 -3
  82. data/lib/orb/models/new_plan_scalable_matrix_with_tiered_pricing_price.rb +1 -3
  83. data/lib/orb/models/new_plan_scalable_matrix_with_unit_pricing_price.rb +1 -3
  84. data/lib/orb/models/new_plan_threshold_total_amount_price.rb +1 -3
  85. data/lib/orb/models/new_plan_tiered_package_price.rb +1 -3
  86. data/lib/orb/models/new_plan_tiered_package_with_minimum_price.rb +1 -3
  87. data/lib/orb/models/new_plan_tiered_price.rb +1 -5
  88. data/lib/orb/models/new_plan_tiered_with_minimum_price.rb +1 -3
  89. data/lib/orb/models/new_plan_unit_price.rb +1 -1
  90. data/lib/orb/models/new_plan_unit_with_percent_price.rb +1 -3
  91. data/lib/orb/models/new_plan_unit_with_proration_price.rb +1 -3
  92. data/lib/orb/models/new_subscription_bulk_price.rb +1 -3
  93. data/lib/orb/models/new_subscription_bulk_with_proration_price.rb +1 -3
  94. data/lib/orb/models/new_subscription_cumulative_grouped_bulk_price.rb +1 -3
  95. data/lib/orb/models/new_subscription_grouped_allocation_price.rb +1 -3
  96. data/lib/orb/models/new_subscription_grouped_tiered_package_price.rb +1 -3
  97. data/lib/orb/models/new_subscription_grouped_tiered_price.rb +1 -3
  98. data/lib/orb/models/new_subscription_grouped_with_metered_minimum_price.rb +1 -3
  99. data/lib/orb/models/new_subscription_grouped_with_prorated_minimum_price.rb +1 -3
  100. data/lib/orb/models/new_subscription_matrix_price.rb +1 -3
  101. data/lib/orb/models/new_subscription_matrix_with_allocation_price.rb +1 -3
  102. data/lib/orb/models/new_subscription_matrix_with_display_name_price.rb +1 -3
  103. data/lib/orb/models/new_subscription_max_group_tiered_package_price.rb +1 -3
  104. data/lib/orb/models/new_subscription_minimum_composite_price.rb +1 -3
  105. data/lib/orb/models/new_subscription_package_price.rb +1 -3
  106. data/lib/orb/models/new_subscription_package_with_allocation_price.rb +1 -3
  107. data/lib/orb/models/new_subscription_scalable_matrix_with_tiered_pricing_price.rb +1 -3
  108. data/lib/orb/models/new_subscription_scalable_matrix_with_unit_pricing_price.rb +1 -3
  109. data/lib/orb/models/new_subscription_threshold_total_amount_price.rb +1 -3
  110. data/lib/orb/models/new_subscription_tiered_package_price.rb +1 -3
  111. data/lib/orb/models/new_subscription_tiered_package_with_minimum_price.rb +1 -3
  112. data/lib/orb/models/new_subscription_tiered_price.rb +1 -3
  113. data/lib/orb/models/new_subscription_tiered_with_minimum_price.rb +1 -3
  114. data/lib/orb/models/new_subscription_unit_price.rb +1 -3
  115. data/lib/orb/models/new_subscription_unit_with_percent_price.rb +1 -3
  116. data/lib/orb/models/new_subscription_unit_with_proration_price.rb +1 -3
  117. data/lib/orb/models/per_price_cost.rb +2 -2
  118. data/lib/orb/models/plan.rb +189 -9
  119. data/lib/orb/models/plan_create_params.rb +1047 -8228
  120. data/lib/orb/models/plan_update_params.rb +9 -1
  121. data/lib/orb/models/plan_version.rb +186 -5
  122. data/lib/orb/models/plans/external_plan_id_update_params.rb +9 -1
  123. data/lib/orb/models/plans/migration_cancel_response.rb +22 -4
  124. data/lib/orb/models/plans/migration_list_response.rb +22 -4
  125. data/lib/orb/models/plans/migration_retrieve_response.rb +22 -4
  126. data/lib/orb/models/price.rb +2614 -1268
  127. data/lib/orb/models/price_create_params.rb +866 -49
  128. data/lib/orb/models/price_evaluate_multiple_params.rb +889 -54
  129. data/lib/orb/models/price_evaluate_preview_events_params.rb +881 -46
  130. data/lib/orb/models/price_interval.rb +2 -2
  131. data/lib/orb/models/subscription.rb +168 -4
  132. data/lib/orb/models/subscription_create_params.rb +2818 -674
  133. data/lib/orb/models/subscription_price_intervals_params.rb +1098 -57
  134. data/lib/orb/models/subscription_schedule_plan_change_params.rb +2834 -687
  135. data/lib/orb/models/subscription_update_params.rb +12 -1
  136. data/lib/orb/models.rb +2 -0
  137. data/lib/orb/resources/alerts.rb +14 -3
  138. data/lib/orb/resources/customers/credits/ledger.rb +28 -14
  139. data/lib/orb/resources/customers.rb +6 -2
  140. data/lib/orb/resources/events.rb +7 -34
  141. data/lib/orb/resources/invoices.rb +6 -2
  142. data/lib/orb/resources/licenses/external_licenses.rb +1 -1
  143. data/lib/orb/resources/licenses/usage.rb +2 -2
  144. data/lib/orb/resources/metrics.rb +5 -5
  145. data/lib/orb/resources/plans/external_plan_id.rb +5 -3
  146. data/lib/orb/resources/plans.rb +9 -5
  147. data/lib/orb/resources/prices/external_price_id.rb +2 -2
  148. data/lib/orb/resources/prices.rb +5 -5
  149. data/lib/orb/resources/subscriptions.rb +20 -3
  150. data/lib/orb/version.rb +1 -1
  151. data/lib/orb.rb +1 -0
  152. data/rbi/orb/models/accounting_provider_config.rbi +38 -5
  153. data/rbi/orb/models/adjustment_interval.rbi +336 -0
  154. data/rbi/orb/models/alert.rbi +172 -3
  155. data/rbi/orb/models/alert_create_for_subscription_params.rbi +268 -9
  156. data/rbi/orb/models/alert_update_params.rbi +208 -0
  157. data/rbi/orb/models/beta/external_plan_id_create_plan_version_params.rbi +3833 -28395
  158. data/rbi/orb/models/beta_create_plan_version_params.rbi +3833 -28363
  159. data/rbi/orb/models/changed_subscription_resources.rbi +360 -5
  160. data/rbi/orb/models/conversion_rate_config.rbi +18 -0
  161. data/rbi/orb/models/credit_block_list_invoices_response.rbi +346 -3
  162. data/rbi/orb/models/credit_block_retrieve_response.rbi +344 -3
  163. data/rbi/orb/models/customer.rbi +190 -10
  164. data/rbi/orb/models/customer_create_params.rbi +12 -2
  165. data/rbi/orb/models/customer_tax_id.rbi +15 -1
  166. data/rbi/orb/models/customer_update_by_external_id_params.rbi +22 -2
  167. data/rbi/orb/models/customer_update_params.rbi +22 -2
  168. data/rbi/orb/models/customers/credit_list_by_external_id_response.rbi +346 -3
  169. data/rbi/orb/models/customers/credit_list_response.rbi +347 -3
  170. data/rbi/orb/models/customers/credits/ledger_create_entry_by_external_id_params.rbi +6 -6
  171. data/rbi/orb/models/customers/credits/ledger_create_entry_params.rbi +6 -6
  172. data/rbi/orb/models/dimensional_price_group.rbi +1 -1
  173. data/rbi/orb/models/discount.rbi +269 -1
  174. data/rbi/orb/models/event_ingest_params.rbi +4 -2
  175. data/rbi/orb/models/invoice.rbi +360 -5
  176. data/rbi/orb/models/invoice_create_params.rbi +12 -7
  177. data/rbi/orb/models/invoice_fetch_upcoming_response.rbi +360 -5
  178. data/rbi/orb/models/invoice_issue_summary_response.rbi +19 -4
  179. data/rbi/orb/models/invoice_level_discount.rbi +298 -1
  180. data/rbi/orb/models/invoice_line_item_create_response.rbi +339 -0
  181. data/rbi/orb/models/invoice_list_summary_response.rbi +19 -4
  182. data/rbi/orb/models/licenses/external_license_get_usage_params.rbi +3 -3
  183. data/rbi/orb/models/licenses/usage_get_all_usage_params.rbi +3 -3
  184. data/rbi/orb/models/licenses/usage_get_usage_params.rbi +3 -3
  185. data/rbi/orb/models/mutated_subscription.rbi +324 -2
  186. data/rbi/orb/models/new_allocation_price.rbi +12 -0
  187. data/rbi/orb/models/per_price_cost.rbi +3 -0
  188. data/rbi/orb/models/plan.rbi +339 -2
  189. data/rbi/orb/models/plan_create_params.rbi +1877 -14138
  190. data/rbi/orb/models/plan_update_params.rbi +8 -0
  191. data/rbi/orb/models/plan_version.rbi +339 -0
  192. data/rbi/orb/models/plans/external_plan_id_update_params.rbi +8 -0
  193. data/rbi/orb/models/plans/migration_cancel_response.rbi +22 -1
  194. data/rbi/orb/models/plans/migration_list_response.rbi +22 -1
  195. data/rbi/orb/models/plans/migration_retrieve_response.rbi +22 -1
  196. data/rbi/orb/models/price.rbi +4552 -2285
  197. data/rbi/orb/models/price_create_params.rbi +1540 -114
  198. data/rbi/orb/models/price_evaluate_multiple_params.rbi +1540 -114
  199. data/rbi/orb/models/price_evaluate_preview_events_params.rbi +1540 -114
  200. data/rbi/orb/models/price_interval.rbi +3 -0
  201. data/rbi/orb/models/subscription.rbi +324 -2
  202. data/rbi/orb/models/subscription_create_params.rbi +4998 -1186
  203. data/rbi/orb/models/subscription_price_intervals_params.rbi +2127 -264
  204. data/rbi/orb/models/subscription_schedule_plan_change_params.rbi +4997 -1185
  205. data/rbi/orb/models/subscription_update_params.rbi +14 -0
  206. data/rbi/orb/models.rbi +2 -0
  207. data/rbi/orb/resources/alerts.rbi +39 -4
  208. data/rbi/orb/resources/customers/credits/ledger.rbi +28 -14
  209. data/rbi/orb/resources/customers.rbi +23 -0
  210. data/rbi/orb/resources/events.rbi +8 -35
  211. data/rbi/orb/resources/invoices.rbi +9 -3
  212. data/rbi/orb/resources/licenses/external_licenses.rbi +1 -1
  213. data/rbi/orb/resources/licenses/usage.rbi +2 -2
  214. data/rbi/orb/resources/metrics.rbi +5 -5
  215. data/rbi/orb/resources/plans/external_plan_id.rbi +5 -2
  216. data/rbi/orb/resources/plans.rbi +9 -3
  217. data/rbi/orb/resources/prices.rbi +3 -0
  218. data/rbi/orb/resources/subscriptions.rbi +29 -0
  219. data/sig/orb/models/accounting_provider_config.rbs +21 -4
  220. data/sig/orb/models/adjustment_interval.rbs +134 -0
  221. data/sig/orb/models/alert.rbs +85 -3
  222. data/sig/orb/models/alert_create_for_subscription_params.rbs +86 -4
  223. data/sig/orb/models/alert_update_params.rbs +86 -1
  224. data/sig/orb/models/beta/external_plan_id_create_plan_version_params.rbs +1803 -11601
  225. data/sig/orb/models/beta_create_plan_version_params.rbs +1747 -11541
  226. data/sig/orb/models/changed_subscription_resources.rbs +140 -1
  227. data/sig/orb/models/conversion_rate_config.rbs +12 -0
  228. data/sig/orb/models/credit_block_list_invoices_response.rbs +124 -3
  229. data/sig/orb/models/credit_block_retrieve_response.rbs +124 -3
  230. data/sig/orb/models/customer.rbs +70 -4
  231. data/sig/orb/models/customer_create_params.rbs +2 -2
  232. data/sig/orb/models/customer_tax_id.rbs +20 -2
  233. data/sig/orb/models/customer_update_by_external_id_params.rbs +7 -2
  234. data/sig/orb/models/customer_update_params.rbs +7 -2
  235. data/sig/orb/models/customers/credit_list_by_external_id_response.rbs +124 -3
  236. data/sig/orb/models/customers/credit_list_response.rbs +124 -3
  237. data/sig/orb/models/discount.rbs +114 -0
  238. data/sig/orb/models/invoice.rbs +140 -1
  239. data/sig/orb/models/invoice_fetch_upcoming_response.rbs +140 -1
  240. data/sig/orb/models/invoice_issue_summary_response.rbs +2 -1
  241. data/sig/orb/models/invoice_level_discount.rbs +117 -1
  242. data/sig/orb/models/invoice_line_item_create_response.rbs +134 -0
  243. data/sig/orb/models/invoice_list_summary_response.rbs +2 -1
  244. data/sig/orb/models/licenses/external_license_get_usage_params.rbs +4 -4
  245. data/sig/orb/models/licenses/usage_get_all_usage_params.rbs +4 -4
  246. data/sig/orb/models/licenses/usage_get_usage_params.rbs +4 -4
  247. data/sig/orb/models/mutated_subscription.rbs +124 -0
  248. data/sig/orb/models/new_allocation_price.rbs +5 -0
  249. data/sig/orb/models/new_floating_bulk_price.rbs +4 -4
  250. data/sig/orb/models/new_floating_bulk_with_proration_price.rbs +4 -4
  251. data/sig/orb/models/new_floating_cumulative_grouped_bulk_price.rbs +4 -4
  252. data/sig/orb/models/new_floating_grouped_allocation_price.rbs +4 -4
  253. data/sig/orb/models/new_floating_grouped_tiered_package_price.rbs +4 -4
  254. data/sig/orb/models/new_floating_grouped_tiered_price.rbs +4 -4
  255. data/sig/orb/models/new_floating_grouped_with_metered_minimum_price.rbs +4 -4
  256. data/sig/orb/models/new_floating_grouped_with_prorated_minimum_price.rbs +4 -4
  257. data/sig/orb/models/new_floating_matrix_price.rbs +4 -4
  258. data/sig/orb/models/new_floating_matrix_with_allocation_price.rbs +4 -4
  259. data/sig/orb/models/new_floating_matrix_with_display_name_price.rbs +4 -4
  260. data/sig/orb/models/new_floating_max_group_tiered_package_price.rbs +4 -4
  261. data/sig/orb/models/new_floating_minimum_composite_price.rbs +4 -4
  262. data/sig/orb/models/new_floating_package_price.rbs +4 -4
  263. data/sig/orb/models/new_floating_package_with_allocation_price.rbs +4 -4
  264. data/sig/orb/models/new_floating_scalable_matrix_with_tiered_pricing_price.rbs +4 -4
  265. data/sig/orb/models/new_floating_scalable_matrix_with_unit_pricing_price.rbs +4 -4
  266. data/sig/orb/models/new_floating_threshold_total_amount_price.rbs +4 -4
  267. data/sig/orb/models/new_floating_tiered_package_price.rbs +4 -4
  268. data/sig/orb/models/new_floating_tiered_package_with_minimum_price.rbs +4 -4
  269. data/sig/orb/models/new_floating_tiered_price.rbs +4 -4
  270. data/sig/orb/models/new_floating_tiered_with_minimum_price.rbs +4 -4
  271. data/sig/orb/models/new_floating_tiered_with_proration_price.rbs +4 -4
  272. data/sig/orb/models/new_floating_unit_price.rbs +4 -4
  273. data/sig/orb/models/new_floating_unit_with_percent_price.rbs +4 -4
  274. data/sig/orb/models/new_floating_unit_with_proration_price.rbs +4 -4
  275. data/sig/orb/models/new_plan_bulk_price.rbs +4 -4
  276. data/sig/orb/models/new_plan_bulk_with_proration_price.rbs +4 -4
  277. data/sig/orb/models/new_plan_cumulative_grouped_bulk_price.rbs +4 -4
  278. data/sig/orb/models/new_plan_grouped_allocation_price.rbs +4 -4
  279. data/sig/orb/models/new_plan_grouped_tiered_package_price.rbs +4 -4
  280. data/sig/orb/models/new_plan_grouped_tiered_price.rbs +4 -4
  281. data/sig/orb/models/new_plan_grouped_with_metered_minimum_price.rbs +4 -4
  282. data/sig/orb/models/new_plan_grouped_with_prorated_minimum_price.rbs +4 -4
  283. data/sig/orb/models/new_plan_matrix_price.rbs +4 -4
  284. data/sig/orb/models/new_plan_matrix_with_allocation_price.rbs +4 -4
  285. data/sig/orb/models/new_plan_matrix_with_display_name_price.rbs +4 -4
  286. data/sig/orb/models/new_plan_max_group_tiered_package_price.rbs +4 -4
  287. data/sig/orb/models/new_plan_minimum_composite_price.rbs +4 -4
  288. data/sig/orb/models/new_plan_package_price.rbs +4 -4
  289. data/sig/orb/models/new_plan_package_with_allocation_price.rbs +4 -4
  290. data/sig/orb/models/new_plan_scalable_matrix_with_tiered_pricing_price.rbs +4 -4
  291. data/sig/orb/models/new_plan_scalable_matrix_with_unit_pricing_price.rbs +4 -4
  292. data/sig/orb/models/new_plan_threshold_total_amount_price.rbs +4 -4
  293. data/sig/orb/models/new_plan_tiered_package_price.rbs +4 -4
  294. data/sig/orb/models/new_plan_tiered_package_with_minimum_price.rbs +4 -4
  295. data/sig/orb/models/new_plan_tiered_price.rbs +4 -4
  296. data/sig/orb/models/new_plan_tiered_with_minimum_price.rbs +4 -4
  297. data/sig/orb/models/new_plan_unit_price.rbs +4 -4
  298. data/sig/orb/models/new_plan_unit_with_percent_price.rbs +4 -4
  299. data/sig/orb/models/new_plan_unit_with_proration_price.rbs +4 -4
  300. data/sig/orb/models/new_subscription_bulk_price.rbs +4 -4
  301. data/sig/orb/models/new_subscription_bulk_with_proration_price.rbs +4 -4
  302. data/sig/orb/models/new_subscription_cumulative_grouped_bulk_price.rbs +4 -4
  303. data/sig/orb/models/new_subscription_grouped_allocation_price.rbs +4 -4
  304. data/sig/orb/models/new_subscription_grouped_tiered_package_price.rbs +4 -4
  305. data/sig/orb/models/new_subscription_grouped_tiered_price.rbs +4 -4
  306. data/sig/orb/models/new_subscription_grouped_with_metered_minimum_price.rbs +4 -4
  307. data/sig/orb/models/new_subscription_grouped_with_prorated_minimum_price.rbs +4 -4
  308. data/sig/orb/models/new_subscription_matrix_price.rbs +4 -4
  309. data/sig/orb/models/new_subscription_matrix_with_allocation_price.rbs +4 -4
  310. data/sig/orb/models/new_subscription_matrix_with_display_name_price.rbs +4 -4
  311. data/sig/orb/models/new_subscription_max_group_tiered_package_price.rbs +4 -4
  312. data/sig/orb/models/new_subscription_minimum_composite_price.rbs +4 -4
  313. data/sig/orb/models/new_subscription_package_price.rbs +4 -4
  314. data/sig/orb/models/new_subscription_package_with_allocation_price.rbs +4 -4
  315. data/sig/orb/models/new_subscription_scalable_matrix_with_tiered_pricing_price.rbs +4 -4
  316. data/sig/orb/models/new_subscription_scalable_matrix_with_unit_pricing_price.rbs +4 -4
  317. data/sig/orb/models/new_subscription_threshold_total_amount_price.rbs +4 -4
  318. data/sig/orb/models/new_subscription_tiered_package_price.rbs +4 -4
  319. data/sig/orb/models/new_subscription_tiered_package_with_minimum_price.rbs +4 -4
  320. data/sig/orb/models/new_subscription_tiered_price.rbs +4 -4
  321. data/sig/orb/models/new_subscription_tiered_with_minimum_price.rbs +4 -4
  322. data/sig/orb/models/new_subscription_unit_price.rbs +4 -4
  323. data/sig/orb/models/new_subscription_unit_with_percent_price.rbs +4 -4
  324. data/sig/orb/models/new_subscription_unit_with_proration_price.rbs +4 -4
  325. data/sig/orb/models/plan.rbs +134 -0
  326. data/sig/orb/models/plan_create_params.rbs +836 -5728
  327. data/sig/orb/models/plan_update_params.rbs +5 -0
  328. data/sig/orb/models/plan_version.rbs +134 -0
  329. data/sig/orb/models/plans/external_plan_id_update_params.rbs +5 -0
  330. data/sig/orb/models/price.rbs +2200 -1150
  331. data/sig/orb/models/price_create_params.rbs +611 -23
  332. data/sig/orb/models/price_evaluate_multiple_params.rbs +626 -23
  333. data/sig/orb/models/price_evaluate_preview_events_params.rbs +626 -23
  334. data/sig/orb/models/subscription.rbs +124 -0
  335. data/sig/orb/models/subscription_create_params.rbs +2009 -430
  336. data/sig/orb/models/subscription_price_intervals_params.rbs +795 -23
  337. data/sig/orb/models/subscription_schedule_plan_change_params.rbs +2009 -430
  338. data/sig/orb/models/subscription_update_params.rbs +5 -0
  339. data/sig/orb/models.rbs +2 -0
  340. data/sig/orb/resources/alerts.rbs +5 -1
  341. data/sig/orb/resources/customers.rbs +2 -0
  342. data/sig/orb/resources/licenses/external_licenses.rbs +1 -1
  343. data/sig/orb/resources/licenses/usage.rbs +2 -2
  344. data/sig/orb/resources/plans/external_plan_id.rbs +1 -0
  345. data/sig/orb/resources/plans.rbs +2 -0
  346. data/sig/orb/resources/subscriptions.rbs +3 -0
  347. metadata +6 -7
@@ -122,11 +122,13 @@ module Orb
122
122
  # | Estonia | `eu_vat` | European VAT Number |
123
123
  # | Ethiopia | `et_tin` | Ethiopia Tax Identification Number |
124
124
  # | European Union | `eu_oss_vat` | European One Stop Shop VAT Number for non-Union scheme |
125
+ # | Faroe Islands | `fo_vat` | Faroe Islands VAT Number |
125
126
  # | Finland | `eu_vat` | European VAT Number |
126
127
  # | France | `eu_vat` | European VAT Number |
127
128
  # | Georgia | `ge_vat` | Georgian VAT |
128
129
  # | Germany | `de_stn` | German Tax Number (Steuernummer) |
129
130
  # | Germany | `eu_vat` | European VAT Number |
131
+ # | Gibraltar | `gi_tin` | Gibraltar Tax Identification Number |
130
132
  # | Greece | `eu_vat` | European VAT Number |
131
133
  # | Guinea | `gn_nif` | Guinea Tax Identification Number (Número de Identificação Fiscal) |
132
134
  # | Hong Kong | `hk_br` | Hong Kong BR Number |
@@ -138,6 +140,7 @@ module Orb
138
140
  # | Ireland | `eu_vat` | European VAT Number |
139
141
  # | Israel | `il_vat` | Israel VAT |
140
142
  # | Italy | `eu_vat` | European VAT Number |
143
+ # | Italy | `it_cf` | Italian Codice Fiscale Number |
141
144
  # | Japan | `jp_cn` | Japanese Corporate Number (_Hōjin Bangō_) |
142
145
  # | Japan | `jp_rn` | Japanese Registered Foreign Businesses' Registration Number (_Tōroku Kokugai Jigyōsha no Tōroku Bangō_) |
143
146
  # | Japan | `jp_trn` | Japanese Tax Registration Number (_Tōroku Bangō_) |
@@ -168,6 +171,7 @@ module Orb
168
171
  # | Norway | `no_vat` | Norwegian VAT Number |
169
172
  # | Norway | `no_voec` | Norwegian VAT on e-commerce Number |
170
173
  # | Oman | `om_vat` | Omani VAT Number |
174
+ # | Paraguay | `py_ruc` | Paraguayan RUC Number |
171
175
  # | Peru | `pe_ruc` | Peruvian RUC Number |
172
176
  # | Philippines | `ph_tin` | Philippines Tax Identification Number |
173
177
  # | Poland | `eu_vat` | European VAT Number |
@@ -189,6 +193,7 @@ module Orb
189
193
  # | South Korea | `kr_brn` | Korean BRN |
190
194
  # | Spain | `es_cif` | Spanish NIF Number (previously Spanish CIF Number) |
191
195
  # | Spain | `eu_vat` | European VAT Number |
196
+ # | Sri Lanka | `lk_vat` | Sri Lanka VAT Number |
192
197
  # | Suriname | `sr_fin` | Suriname FIN Number |
193
198
  # | Sweden | `eu_vat` | European VAT Number |
194
199
  # | Switzerland | `ch_uid` | Switzerland UID Number |
@@ -238,8 +243,8 @@ module Orb
238
243
  sig { returns(T.nilable(Time)) }
239
244
  attr_accessor :eligible_to_issue_at
240
245
 
241
- # A URL for the customer-facing invoice portal. This URL expires 30 days after the
242
- # invoice's due date, or 60 days after being re-generated through the UI.
246
+ # A URL for the customer-facing invoice portal. This URL expires 60 days after the
247
+ # link is generated, or 30 days after the invoice's due date — whichever is later.
243
248
  sig { returns(T.nilable(String)) }
244
249
  attr_accessor :hosted_invoice_url
245
250
 
@@ -406,7 +411,8 @@ module Orb
406
411
  T.any(
407
412
  Orb::PercentageDiscount::OrHash,
408
413
  Orb::AmountDiscount::OrHash,
409
- Orb::TrialDiscount::OrHash
414
+ Orb::TrialDiscount::OrHash,
415
+ Orb::InvoiceLevelDiscount::TieredPercentage::OrHash
410
416
  )
411
417
  ],
412
418
  due_date: T.nilable(Time),
@@ -519,11 +525,13 @@ module Orb
519
525
  # | Estonia | `eu_vat` | European VAT Number |
520
526
  # | Ethiopia | `et_tin` | Ethiopia Tax Identification Number |
521
527
  # | European Union | `eu_oss_vat` | European One Stop Shop VAT Number for non-Union scheme |
528
+ # | Faroe Islands | `fo_vat` | Faroe Islands VAT Number |
522
529
  # | Finland | `eu_vat` | European VAT Number |
523
530
  # | France | `eu_vat` | European VAT Number |
524
531
  # | Georgia | `ge_vat` | Georgian VAT |
525
532
  # | Germany | `de_stn` | German Tax Number (Steuernummer) |
526
533
  # | Germany | `eu_vat` | European VAT Number |
534
+ # | Gibraltar | `gi_tin` | Gibraltar Tax Identification Number |
527
535
  # | Greece | `eu_vat` | European VAT Number |
528
536
  # | Guinea | `gn_nif` | Guinea Tax Identification Number (Número de Identificação Fiscal) |
529
537
  # | Hong Kong | `hk_br` | Hong Kong BR Number |
@@ -535,6 +543,7 @@ module Orb
535
543
  # | Ireland | `eu_vat` | European VAT Number |
536
544
  # | Israel | `il_vat` | Israel VAT |
537
545
  # | Italy | `eu_vat` | European VAT Number |
546
+ # | Italy | `it_cf` | Italian Codice Fiscale Number |
538
547
  # | Japan | `jp_cn` | Japanese Corporate Number (_Hōjin Bangō_) |
539
548
  # | Japan | `jp_rn` | Japanese Registered Foreign Businesses' Registration Number (_Tōroku Kokugai Jigyōsha no Tōroku Bangō_) |
540
549
  # | Japan | `jp_trn` | Japanese Tax Registration Number (_Tōroku Bangō_) |
@@ -565,6 +574,7 @@ module Orb
565
574
  # | Norway | `no_vat` | Norwegian VAT Number |
566
575
  # | Norway | `no_voec` | Norwegian VAT on e-commerce Number |
567
576
  # | Oman | `om_vat` | Omani VAT Number |
577
+ # | Paraguay | `py_ruc` | Paraguayan RUC Number |
568
578
  # | Peru | `pe_ruc` | Peruvian RUC Number |
569
579
  # | Philippines | `ph_tin` | Philippines Tax Identification Number |
570
580
  # | Poland | `eu_vat` | European VAT Number |
@@ -586,6 +596,7 @@ module Orb
586
596
  # | South Korea | `kr_brn` | Korean BRN |
587
597
  # | Spain | `es_cif` | Spanish NIF Number (previously Spanish CIF Number) |
588
598
  # | Spain | `eu_vat` | European VAT Number |
599
+ # | Sri Lanka | `lk_vat` | Sri Lanka VAT Number |
589
600
  # | Suriname | `sr_fin` | Suriname FIN Number |
590
601
  # | Sweden | `eu_vat` | European VAT Number |
591
602
  # | Switzerland | `ch_uid` | Switzerland UID Number |
@@ -620,8 +631,8 @@ module Orb
620
631
  # will be eligible to be issued, otherwise it will be `null`. If `auto-issue` is
621
632
  # true, the invoice will automatically begin issuing at this time.
622
633
  eligible_to_issue_at:,
623
- # A URL for the customer-facing invoice portal. This URL expires 30 days after the
624
- # invoice's due date, or 60 days after being re-generated through the UI.
634
+ # A URL for the customer-facing invoice portal. This URL expires 60 days after the
635
+ # link is generated, or 30 days after the invoice's due date — whichever is later.
625
636
  hosted_invoice_url:,
626
637
  # Automatically generated invoice number to help track and reconcile invoices.
627
638
  # Invoice numbers have a prefix such as `RFOBWG`. These can be sequential per
@@ -1279,6 +1290,7 @@ module Orb
1279
1290
  Orb::MonetaryUsageDiscountAdjustment::OrHash,
1280
1291
  Orb::MonetaryAmountDiscountAdjustment::OrHash,
1281
1292
  Orb::MonetaryPercentageDiscountAdjustment::OrHash,
1293
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::OrHash,
1282
1294
  Orb::MonetaryMinimumAdjustment::OrHash,
1283
1295
  Orb::MonetaryMaximumAdjustment::OrHash
1284
1296
  )
@@ -1306,6 +1318,7 @@ module Orb
1306
1318
  Orb::Price::PackageWithAllocation::OrHash,
1307
1319
  Orb::Price::UnitWithPercent::OrHash,
1308
1320
  Orb::Price::MatrixWithAllocation::OrHash,
1321
+ Orb::Price::MatrixWithThresholdDiscounts::OrHash,
1309
1322
  Orb::Price::TieredWithProration::OrHash,
1310
1323
  Orb::Price::UnitWithProration::OrHash,
1311
1324
  Orb::Price::GroupedAllocation::OrHash,
@@ -1320,6 +1333,8 @@ module Orb
1320
1333
  Orb::Price::ScalableMatrixWithTieredPricing::OrHash,
1321
1334
  Orb::Price::CumulativeGroupedBulk::OrHash,
1322
1335
  Orb::Price::CumulativeGroupedAllocation::OrHash,
1336
+ Orb::Price::DailyCreditAllowance::OrHash,
1337
+ Orb::Price::MeteredAllowance::OrHash,
1323
1338
  Orb::Price::MinimumComposite::OrHash,
1324
1339
  Orb::Price::Percent::OrHash,
1325
1340
  Orb::Price::EventOutput::OrHash
@@ -1435,11 +1450,346 @@ module Orb
1435
1450
  Orb::MonetaryUsageDiscountAdjustment,
1436
1451
  Orb::MonetaryAmountDiscountAdjustment,
1437
1452
  Orb::MonetaryPercentageDiscountAdjustment,
1453
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount,
1438
1454
  Orb::MonetaryMinimumAdjustment,
1439
1455
  Orb::MonetaryMaximumAdjustment
1440
1456
  )
1441
1457
  end
1442
1458
 
1459
+ class TieredPercentageDiscount < Orb::Internal::Type::BaseModel
1460
+ OrHash =
1461
+ T.type_alias do
1462
+ T.any(
1463
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount,
1464
+ Orb::Internal::AnyHash
1465
+ )
1466
+ end
1467
+
1468
+ sig { returns(String) }
1469
+ attr_accessor :id
1470
+
1471
+ sig { returns(Symbol) }
1472
+ attr_accessor :adjustment_type
1473
+
1474
+ # The value applied by an adjustment.
1475
+ sig { returns(String) }
1476
+ attr_accessor :amount
1477
+
1478
+ # The price IDs that this adjustment applies to.
1479
+ sig { returns(T::Array[String]) }
1480
+ attr_accessor :applies_to_price_ids
1481
+
1482
+ # The filters that determine which prices to apply this adjustment to.
1483
+ sig do
1484
+ returns(
1485
+ T::Array[
1486
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter
1487
+ ]
1488
+ )
1489
+ end
1490
+ attr_accessor :filters
1491
+
1492
+ # True for adjustments that apply to an entire invoice, false for adjustments that
1493
+ # apply to only one price.
1494
+ sig { returns(T::Boolean) }
1495
+ attr_accessor :is_invoice_level
1496
+
1497
+ # The reason for the adjustment.
1498
+ sig { returns(T.nilable(String)) }
1499
+ attr_accessor :reason
1500
+
1501
+ # The adjustment id this adjustment replaces. This adjustment will take the place
1502
+ # of the replaced adjustment in plan version migrations.
1503
+ sig { returns(T.nilable(String)) }
1504
+ attr_accessor :replaces_adjustment_id
1505
+
1506
+ # The ordered, contiguous bands of cumulative eligible spend, each discounted at
1507
+ # its own percentage (progressive fill-a-tier), applied to the prices this
1508
+ # adjustment covers in a given billing period.
1509
+ sig do
1510
+ returns(
1511
+ T::Array[
1512
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Tier
1513
+ ]
1514
+ )
1515
+ end
1516
+ attr_accessor :tiers
1517
+
1518
+ sig do
1519
+ params(
1520
+ id: String,
1521
+ amount: String,
1522
+ applies_to_price_ids: T::Array[String],
1523
+ filters:
1524
+ T::Array[
1525
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::OrHash
1526
+ ],
1527
+ is_invoice_level: T::Boolean,
1528
+ reason: T.nilable(String),
1529
+ replaces_adjustment_id: T.nilable(String),
1530
+ tiers:
1531
+ T::Array[
1532
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Tier::OrHash
1533
+ ],
1534
+ adjustment_type: Symbol
1535
+ ).returns(T.attached_class)
1536
+ end
1537
+ def self.new(
1538
+ id:,
1539
+ # The value applied by an adjustment.
1540
+ amount:,
1541
+ # The price IDs that this adjustment applies to.
1542
+ applies_to_price_ids:,
1543
+ # The filters that determine which prices to apply this adjustment to.
1544
+ filters:,
1545
+ # True for adjustments that apply to an entire invoice, false for adjustments that
1546
+ # apply to only one price.
1547
+ is_invoice_level:,
1548
+ # The reason for the adjustment.
1549
+ reason:,
1550
+ # The adjustment id this adjustment replaces. This adjustment will take the place
1551
+ # of the replaced adjustment in plan version migrations.
1552
+ replaces_adjustment_id:,
1553
+ # The ordered, contiguous bands of cumulative eligible spend, each discounted at
1554
+ # its own percentage (progressive fill-a-tier), applied to the prices this
1555
+ # adjustment covers in a given billing period.
1556
+ tiers:,
1557
+ adjustment_type: :tiered_percentage_discount
1558
+ )
1559
+ end
1560
+
1561
+ sig do
1562
+ override.returns(
1563
+ {
1564
+ id: String,
1565
+ adjustment_type: Symbol,
1566
+ amount: String,
1567
+ applies_to_price_ids: T::Array[String],
1568
+ filters:
1569
+ T::Array[
1570
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter
1571
+ ],
1572
+ is_invoice_level: T::Boolean,
1573
+ reason: T.nilable(String),
1574
+ replaces_adjustment_id: T.nilable(String),
1575
+ tiers:
1576
+ T::Array[
1577
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Tier
1578
+ ]
1579
+ }
1580
+ )
1581
+ end
1582
+ def to_hash
1583
+ end
1584
+
1585
+ class Filter < Orb::Internal::Type::BaseModel
1586
+ OrHash =
1587
+ T.type_alias do
1588
+ T.any(
1589
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter,
1590
+ Orb::Internal::AnyHash
1591
+ )
1592
+ end
1593
+
1594
+ # The property of the price to filter on.
1595
+ sig do
1596
+ returns(
1597
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::Field::TaggedSymbol
1598
+ )
1599
+ end
1600
+ attr_accessor :field
1601
+
1602
+ # Should prices that match the filter be included or excluded.
1603
+ sig do
1604
+ returns(
1605
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::Operator::TaggedSymbol
1606
+ )
1607
+ end
1608
+ attr_accessor :operator
1609
+
1610
+ # The IDs or values that match this filter.
1611
+ sig { returns(T::Array[String]) }
1612
+ attr_accessor :values
1613
+
1614
+ sig do
1615
+ params(
1616
+ field:
1617
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::Field::OrSymbol,
1618
+ operator:
1619
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::Operator::OrSymbol,
1620
+ values: T::Array[String]
1621
+ ).returns(T.attached_class)
1622
+ end
1623
+ def self.new(
1624
+ # The property of the price to filter on.
1625
+ field:,
1626
+ # Should prices that match the filter be included or excluded.
1627
+ operator:,
1628
+ # The IDs or values that match this filter.
1629
+ values:
1630
+ )
1631
+ end
1632
+
1633
+ sig do
1634
+ override.returns(
1635
+ {
1636
+ field:
1637
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::Field::TaggedSymbol,
1638
+ operator:
1639
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::Operator::TaggedSymbol,
1640
+ values: T::Array[String]
1641
+ }
1642
+ )
1643
+ end
1644
+ def to_hash
1645
+ end
1646
+
1647
+ # The property of the price to filter on.
1648
+ module Field
1649
+ extend Orb::Internal::Type::Enum
1650
+
1651
+ TaggedSymbol =
1652
+ T.type_alias do
1653
+ T.all(
1654
+ Symbol,
1655
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::Field
1656
+ )
1657
+ end
1658
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1659
+
1660
+ PRICE_ID =
1661
+ T.let(
1662
+ :price_id,
1663
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::Field::TaggedSymbol
1664
+ )
1665
+ ITEM_ID =
1666
+ T.let(
1667
+ :item_id,
1668
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::Field::TaggedSymbol
1669
+ )
1670
+ PRICE_TYPE =
1671
+ T.let(
1672
+ :price_type,
1673
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::Field::TaggedSymbol
1674
+ )
1675
+ CURRENCY =
1676
+ T.let(
1677
+ :currency,
1678
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::Field::TaggedSymbol
1679
+ )
1680
+ PRICING_UNIT_ID =
1681
+ T.let(
1682
+ :pricing_unit_id,
1683
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::Field::TaggedSymbol
1684
+ )
1685
+
1686
+ sig do
1687
+ override.returns(
1688
+ T::Array[
1689
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::Field::TaggedSymbol
1690
+ ]
1691
+ )
1692
+ end
1693
+ def self.values
1694
+ end
1695
+ end
1696
+
1697
+ # Should prices that match the filter be included or excluded.
1698
+ module Operator
1699
+ extend Orb::Internal::Type::Enum
1700
+
1701
+ TaggedSymbol =
1702
+ T.type_alias do
1703
+ T.all(
1704
+ Symbol,
1705
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::Operator
1706
+ )
1707
+ end
1708
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1709
+
1710
+ INCLUDES =
1711
+ T.let(
1712
+ :includes,
1713
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::Operator::TaggedSymbol
1714
+ )
1715
+ EXCLUDES =
1716
+ T.let(
1717
+ :excludes,
1718
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::Operator::TaggedSymbol
1719
+ )
1720
+
1721
+ sig do
1722
+ override.returns(
1723
+ T::Array[
1724
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Filter::Operator::TaggedSymbol
1725
+ ]
1726
+ )
1727
+ end
1728
+ def self.values
1729
+ end
1730
+ end
1731
+ end
1732
+
1733
+ class Tier < Orb::Internal::Type::BaseModel
1734
+ OrHash =
1735
+ T.type_alias do
1736
+ T.any(
1737
+ Orb::Models::InvoiceFetchUpcomingResponse::LineItem::Adjustment::TieredPercentageDiscount::Tier,
1738
+ Orb::Internal::AnyHash
1739
+ )
1740
+ end
1741
+
1742
+ # Exclusive lower bound of cumulative spend for this tier.
1743
+ sig { returns(Float) }
1744
+ attr_accessor :lower_bound
1745
+
1746
+ # The percentage (between 0 and 1) discounted from spend that falls within this
1747
+ # tier.
1748
+ sig { returns(Float) }
1749
+ attr_accessor :percentage
1750
+
1751
+ # Inclusive upper bound of cumulative spend for this tier; null for the final
1752
+ # open-ended tier.
1753
+ sig { returns(T.nilable(Float)) }
1754
+ attr_accessor :upper_bound
1755
+
1756
+ # One band of a tiered percentage discount. Bounds are denominated in the
1757
+ # discount's currency. `lower_bound` is the exclusive start of the band and
1758
+ # `upper_bound` is the inclusive end; `upper_bound` is null only for the
1759
+ # open-ended final tier.
1760
+ sig do
1761
+ params(
1762
+ lower_bound: Float,
1763
+ percentage: Float,
1764
+ upper_bound: T.nilable(Float)
1765
+ ).returns(T.attached_class)
1766
+ end
1767
+ def self.new(
1768
+ # Exclusive lower bound of cumulative spend for this tier.
1769
+ lower_bound:,
1770
+ # The percentage (between 0 and 1) discounted from spend that falls within this
1771
+ # tier.
1772
+ percentage:,
1773
+ # Inclusive upper bound of cumulative spend for this tier; null for the final
1774
+ # open-ended tier.
1775
+ upper_bound: nil
1776
+ )
1777
+ end
1778
+
1779
+ sig do
1780
+ override.returns(
1781
+ {
1782
+ lower_bound: Float,
1783
+ percentage: Float,
1784
+ upper_bound: T.nilable(Float)
1785
+ }
1786
+ )
1787
+ end
1788
+ def to_hash
1789
+ end
1790
+ end
1791
+ end
1792
+
1443
1793
  sig do
1444
1794
  override.returns(
1445
1795
  T::Array[
@@ -1589,6 +1939,11 @@ module Orb
1589
1939
  :stripe,
1590
1940
  Orb::Models::InvoiceFetchUpcomingResponse::PaymentAttempt::PaymentProvider::TaggedSymbol
1591
1941
  )
1942
+ ADYEN =
1943
+ T.let(
1944
+ :adyen,
1945
+ Orb::Models::InvoiceFetchUpcomingResponse::PaymentAttempt::PaymentProvider::TaggedSymbol
1946
+ )
1592
1947
 
1593
1948
  sig do
1594
1949
  override.returns(
@@ -122,11 +122,13 @@ module Orb
122
122
  # | Estonia | `eu_vat` | European VAT Number |
123
123
  # | Ethiopia | `et_tin` | Ethiopia Tax Identification Number |
124
124
  # | European Union | `eu_oss_vat` | European One Stop Shop VAT Number for non-Union scheme |
125
+ # | Faroe Islands | `fo_vat` | Faroe Islands VAT Number |
125
126
  # | Finland | `eu_vat` | European VAT Number |
126
127
  # | France | `eu_vat` | European VAT Number |
127
128
  # | Georgia | `ge_vat` | Georgian VAT |
128
129
  # | Germany | `de_stn` | German Tax Number (Steuernummer) |
129
130
  # | Germany | `eu_vat` | European VAT Number |
131
+ # | Gibraltar | `gi_tin` | Gibraltar Tax Identification Number |
130
132
  # | Greece | `eu_vat` | European VAT Number |
131
133
  # | Guinea | `gn_nif` | Guinea Tax Identification Number (Número de Identificação Fiscal) |
132
134
  # | Hong Kong | `hk_br` | Hong Kong BR Number |
@@ -138,6 +140,7 @@ module Orb
138
140
  # | Ireland | `eu_vat` | European VAT Number |
139
141
  # | Israel | `il_vat` | Israel VAT |
140
142
  # | Italy | `eu_vat` | European VAT Number |
143
+ # | Italy | `it_cf` | Italian Codice Fiscale Number |
141
144
  # | Japan | `jp_cn` | Japanese Corporate Number (_Hōjin Bangō_) |
142
145
  # | Japan | `jp_rn` | Japanese Registered Foreign Businesses' Registration Number (_Tōroku Kokugai Jigyōsha no Tōroku Bangō_) |
143
146
  # | Japan | `jp_trn` | Japanese Tax Registration Number (_Tōroku Bangō_) |
@@ -168,6 +171,7 @@ module Orb
168
171
  # | Norway | `no_vat` | Norwegian VAT Number |
169
172
  # | Norway | `no_voec` | Norwegian VAT on e-commerce Number |
170
173
  # | Oman | `om_vat` | Omani VAT Number |
174
+ # | Paraguay | `py_ruc` | Paraguayan RUC Number |
171
175
  # | Peru | `pe_ruc` | Peruvian RUC Number |
172
176
  # | Philippines | `ph_tin` | Philippines Tax Identification Number |
173
177
  # | Poland | `eu_vat` | European VAT Number |
@@ -189,6 +193,7 @@ module Orb
189
193
  # | South Korea | `kr_brn` | Korean BRN |
190
194
  # | Spain | `es_cif` | Spanish NIF Number (previously Spanish CIF Number) |
191
195
  # | Spain | `eu_vat` | European VAT Number |
196
+ # | Sri Lanka | `lk_vat` | Sri Lanka VAT Number |
192
197
  # | Suriname | `sr_fin` | Suriname FIN Number |
193
198
  # | Sweden | `eu_vat` | European VAT Number |
194
199
  # | Switzerland | `ch_uid` | Switzerland UID Number |
@@ -229,8 +234,8 @@ module Orb
229
234
  sig { returns(T.nilable(Time)) }
230
235
  attr_accessor :eligible_to_issue_at
231
236
 
232
- # A URL for the customer-facing invoice portal. This URL expires 30 days after the
233
- # invoice's due date, or 60 days after being re-generated through the UI.
237
+ # A URL for the customer-facing invoice portal. This URL expires 60 days after the
238
+ # link is generated, or 30 days after the invoice's due date — whichever is later.
234
239
  sig { returns(T.nilable(String)) }
235
240
  attr_accessor :hosted_invoice_url
236
241
 
@@ -465,11 +470,13 @@ module Orb
465
470
  # | Estonia | `eu_vat` | European VAT Number |
466
471
  # | Ethiopia | `et_tin` | Ethiopia Tax Identification Number |
467
472
  # | European Union | `eu_oss_vat` | European One Stop Shop VAT Number for non-Union scheme |
473
+ # | Faroe Islands | `fo_vat` | Faroe Islands VAT Number |
468
474
  # | Finland | `eu_vat` | European VAT Number |
469
475
  # | France | `eu_vat` | European VAT Number |
470
476
  # | Georgia | `ge_vat` | Georgian VAT |
471
477
  # | Germany | `de_stn` | German Tax Number (Steuernummer) |
472
478
  # | Germany | `eu_vat` | European VAT Number |
479
+ # | Gibraltar | `gi_tin` | Gibraltar Tax Identification Number |
473
480
  # | Greece | `eu_vat` | European VAT Number |
474
481
  # | Guinea | `gn_nif` | Guinea Tax Identification Number (Número de Identificação Fiscal) |
475
482
  # | Hong Kong | `hk_br` | Hong Kong BR Number |
@@ -481,6 +488,7 @@ module Orb
481
488
  # | Ireland | `eu_vat` | European VAT Number |
482
489
  # | Israel | `il_vat` | Israel VAT |
483
490
  # | Italy | `eu_vat` | European VAT Number |
491
+ # | Italy | `it_cf` | Italian Codice Fiscale Number |
484
492
  # | Japan | `jp_cn` | Japanese Corporate Number (_Hōjin Bangō_) |
485
493
  # | Japan | `jp_rn` | Japanese Registered Foreign Businesses' Registration Number (_Tōroku Kokugai Jigyōsha no Tōroku Bangō_) |
486
494
  # | Japan | `jp_trn` | Japanese Tax Registration Number (_Tōroku Bangō_) |
@@ -511,6 +519,7 @@ module Orb
511
519
  # | Norway | `no_vat` | Norwegian VAT Number |
512
520
  # | Norway | `no_voec` | Norwegian VAT on e-commerce Number |
513
521
  # | Oman | `om_vat` | Omani VAT Number |
522
+ # | Paraguay | `py_ruc` | Paraguayan RUC Number |
514
523
  # | Peru | `pe_ruc` | Peruvian RUC Number |
515
524
  # | Philippines | `ph_tin` | Philippines Tax Identification Number |
516
525
  # | Poland | `eu_vat` | European VAT Number |
@@ -532,6 +541,7 @@ module Orb
532
541
  # | South Korea | `kr_brn` | Korean BRN |
533
542
  # | Spain | `es_cif` | Spanish NIF Number (previously Spanish CIF Number) |
534
543
  # | Spain | `eu_vat` | European VAT Number |
544
+ # | Sri Lanka | `lk_vat` | Sri Lanka VAT Number |
535
545
  # | Suriname | `sr_fin` | Suriname FIN Number |
536
546
  # | Sweden | `eu_vat` | European VAT Number |
537
547
  # | Switzerland | `ch_uid` | Switzerland UID Number |
@@ -561,8 +571,8 @@ module Orb
561
571
  # will be eligible to be issued, otherwise it will be `null`. If `auto-issue` is
562
572
  # true, the invoice will automatically begin issuing at this time.
563
573
  eligible_to_issue_at:,
564
- # A URL for the customer-facing invoice portal. This URL expires 30 days after the
565
- # invoice's due date, or 60 days after being re-generated through the UI.
574
+ # A URL for the customer-facing invoice portal. This URL expires 60 days after the
575
+ # link is generated, or 30 days after the invoice's due date — whichever is later.
566
576
  hosted_invoice_url:,
567
577
  # The scheduled date of the invoice
568
578
  invoice_date:,
@@ -1201,6 +1211,11 @@ module Orb
1201
1211
  :stripe,
1202
1212
  Orb::Models::InvoiceIssueSummaryResponse::PaymentAttempt::PaymentProvider::TaggedSymbol
1203
1213
  )
1214
+ ADYEN =
1215
+ T.let(
1216
+ :adyen,
1217
+ Orb::Models::InvoiceIssueSummaryResponse::PaymentAttempt::PaymentProvider::TaggedSymbol
1218
+ )
1204
1219
 
1205
1220
  sig do
1206
1221
  override.returns(