maxio-advanced-billing-sdk 5.2.0 → 6.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (555) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +1 -1
  3. data/README.md +48 -50
  4. data/lib/advanced_billing/client.rb +3 -4
  5. data/lib/advanced_billing/configuration.rb +21 -24
  6. data/lib/advanced_billing/controllers/advance_invoice_controller.rb +3 -3
  7. data/lib/advanced_billing/controllers/api_exports_controller.rb +9 -9
  8. data/lib/advanced_billing/controllers/base_controller.rb +1 -1
  9. data/lib/advanced_billing/controllers/billing_portal_controller.rb +4 -4
  10. data/lib/advanced_billing/controllers/component_price_points_controller.rb +34 -20
  11. data/lib/advanced_billing/controllers/components_controller.rb +12 -12
  12. data/lib/advanced_billing/controllers/coupons_controller.rb +45 -27
  13. data/lib/advanced_billing/controllers/custom_fields_controller.rb +9 -9
  14. data/lib/advanced_billing/controllers/customers_controller.rb +7 -7
  15. data/lib/advanced_billing/controllers/events_based_billing_segments_controller.rb +6 -6
  16. data/lib/advanced_billing/controllers/events_controller.rb +26 -9
  17. data/lib/advanced_billing/controllers/insights_controller.rb +4 -4
  18. data/lib/advanced_billing/controllers/invoices_controller.rb +17 -17
  19. data/lib/advanced_billing/controllers/offers_controller.rb +10 -6
  20. data/lib/advanced_billing/controllers/payment_profiles_controller.rb +12 -12
  21. data/lib/advanced_billing/controllers/product_families_controller.rb +22 -20
  22. data/lib/advanced_billing/controllers/product_price_points_controller.rb +14 -11
  23. data/lib/advanced_billing/controllers/products_controller.rb +6 -6
  24. data/lib/advanced_billing/controllers/proforma_invoices_controller.rb +9 -9
  25. data/lib/advanced_billing/controllers/reason_codes_controller.rb +17 -9
  26. data/lib/advanced_billing/controllers/referral_codes_controller.rb +1 -1
  27. data/lib/advanced_billing/controllers/sales_commissions_controller.rb +3 -3
  28. data/lib/advanced_billing/controllers/sites_controller.rb +3 -3
  29. data/lib/advanced_billing/controllers/subscription_components_controller.rb +21 -31
  30. data/lib/advanced_billing/controllers/subscription_group_invoice_account_controller.rb +4 -4
  31. data/lib/advanced_billing/controllers/subscription_group_status_controller.rb +4 -4
  32. data/lib/advanced_billing/controllers/subscription_groups_controller.rb +9 -9
  33. data/lib/advanced_billing/controllers/subscription_invoice_account_controller.rb +6 -6
  34. data/lib/advanced_billing/controllers/subscription_notes_controller.rb +20 -8
  35. data/lib/advanced_billing/controllers/subscription_products_controller.rb +2 -2
  36. data/lib/advanced_billing/controllers/subscription_status_controller.rb +20 -12
  37. data/lib/advanced_billing/controllers/subscriptions_controller.rb +40 -17
  38. data/lib/advanced_billing/controllers/webhooks_controller.rb +6 -6
  39. data/lib/advanced_billing/exceptions/api_exception.rb +11 -0
  40. data/lib/advanced_billing/exceptions/component_allocation_error_exception.rb +12 -0
  41. data/lib/advanced_billing/exceptions/component_price_point_error_exception.rb +12 -0
  42. data/lib/advanced_billing/exceptions/customer_error_response_exception.rb +12 -0
  43. data/lib/advanced_billing/exceptions/error_array_map_response_exception.rb +12 -0
  44. data/lib/advanced_billing/exceptions/error_list_response_exception.rb +12 -0
  45. data/lib/advanced_billing/exceptions/error_string_map_response_exception.rb +12 -0
  46. data/lib/advanced_billing/exceptions/event_based_billing_list_segments_errors_exception.rb +12 -0
  47. data/lib/advanced_billing/exceptions/event_based_billing_segment_errors_exception.rb +12 -0
  48. data/lib/advanced_billing/exceptions/event_based_billing_segment_exception.rb +12 -0
  49. data/lib/advanced_billing/exceptions/product_price_point_error_response_exception.rb +12 -0
  50. data/lib/advanced_billing/exceptions/proforma_bad_request_error_response_exception.rb +12 -0
  51. data/lib/advanced_billing/exceptions/refund_prepayment_base_errors_response_exception.rb +12 -0
  52. data/lib/advanced_billing/exceptions/single_error_response_exception.rb +12 -0
  53. data/lib/advanced_billing/exceptions/single_string_error_response_exception.rb +12 -0
  54. data/lib/advanced_billing/exceptions/subscription_add_coupon_error_exception.rb +14 -0
  55. data/lib/advanced_billing/exceptions/subscription_component_allocation_error_exception.rb +12 -0
  56. data/lib/advanced_billing/exceptions/subscription_group_create_error_response_exception.rb +12 -0
  57. data/lib/advanced_billing/exceptions/subscription_group_signup_error_response_exception.rb +12 -0
  58. data/lib/advanced_billing/exceptions/subscription_group_update_error_response_exception.rb +12 -0
  59. data/lib/advanced_billing/exceptions/subscription_remove_coupon_errors_exception.rb +12 -0
  60. data/lib/advanced_billing/exceptions/subscription_response_error_exception.rb +44 -0
  61. data/lib/advanced_billing/exceptions/subscriptions_mrr_error_response_exception.rb +12 -0
  62. data/lib/advanced_billing/exceptions/too_many_management_link_requests_error_exception.rb +12 -0
  63. data/lib/advanced_billing/models/account_balance.rb +24 -7
  64. data/lib/advanced_billing/models/account_balances.rb +24 -7
  65. data/lib/advanced_billing/models/ach_agreement.rb +23 -7
  66. data/lib/advanced_billing/models/activate_event_based_component.rb +21 -6
  67. data/lib/advanced_billing/models/activate_subscription_request.rb +18 -4
  68. data/lib/advanced_billing/models/add_coupons_request.rb +17 -4
  69. data/lib/advanced_billing/models/add_subscription_to_a_group.rb +16 -15
  70. data/lib/advanced_billing/models/address_change.rb +19 -5
  71. data/lib/advanced_billing/models/agreement_acceptance.rb +27 -7
  72. data/lib/advanced_billing/models/allocate_components.rb +29 -7
  73. data/lib/advanced_billing/models/allocation.rb +44 -7
  74. data/lib/advanced_billing/models/allocation_expiration_date.rb +18 -4
  75. data/lib/advanced_billing/models/allocation_preview.rb +33 -7
  76. data/lib/advanced_billing/models/allocation_preview_item.rb +38 -7
  77. data/lib/advanced_billing/models/allocation_preview_line_item.rb +28 -7
  78. data/lib/advanced_billing/models/allocation_preview_response.rb +18 -4
  79. data/lib/advanced_billing/models/allocation_response.rb +18 -4
  80. data/lib/advanced_billing/models/allocation_settings.rb +21 -6
  81. data/lib/advanced_billing/models/apple_pay_payment_profile.rb +34 -7
  82. data/lib/advanced_billing/models/applied_credit_note_data.rb +19 -5
  83. data/lib/advanced_billing/models/apply_credit_note_event.rb +23 -7
  84. data/lib/advanced_billing/models/apply_credit_note_event_data.rb +28 -7
  85. data/lib/advanced_billing/models/apply_debit_note_event.rb +23 -7
  86. data/lib/advanced_billing/models/apply_debit_note_event_data.rb +25 -7
  87. data/lib/advanced_billing/models/apply_payment_event.rb +23 -7
  88. data/lib/advanced_billing/models/apply_payment_event_data.rb +30 -7
  89. data/lib/advanced_billing/models/attribute_error.rb +18 -4
  90. data/lib/advanced_billing/models/auto_resume.rb +18 -4
  91. data/lib/advanced_billing/models/backport_invoice_event.rb +23 -7
  92. data/lib/advanced_billing/models/bank_account_attributes.rb +32 -7
  93. data/lib/advanced_billing/models/bank_account_payment_profile.rb +42 -7
  94. data/lib/advanced_billing/models/bank_account_response.rb +18 -4
  95. data/lib/advanced_billing/models/bank_account_verification.rb +19 -5
  96. data/lib/advanced_billing/models/bank_account_verification_request.rb +18 -4
  97. data/lib/advanced_billing/models/base_model.rb +88 -28
  98. data/lib/advanced_billing/models/base_refund_error.rb +17 -4
  99. data/lib/advanced_billing/models/base_string_error.rb +17 -4
  100. data/lib/advanced_billing/models/batch_job.rb +23 -7
  101. data/lib/advanced_billing/models/batch_job_response.rb +18 -4
  102. data/lib/advanced_billing/models/billing_manifest.rb +30 -7
  103. data/lib/advanced_billing/models/billing_manifest_item.rb +34 -7
  104. data/lib/advanced_billing/models/billing_schedule.rb +18 -4
  105. data/lib/advanced_billing/models/breakouts.rb +25 -7
  106. data/lib/advanced_billing/models/bulk_components_price_point_assignment.rb +18 -4
  107. data/lib/advanced_billing/models/bulk_create_product_price_points_request.rb +18 -4
  108. data/lib/advanced_billing/models/bulk_create_product_price_points_response.rb +18 -4
  109. data/lib/advanced_billing/models/bulk_create_segments.rb +18 -4
  110. data/lib/advanced_billing/models/bulk_update_segments.rb +18 -4
  111. data/lib/advanced_billing/models/bulk_update_segments_item.rb +20 -6
  112. data/lib/advanced_billing/models/calendar_billing.rb +22 -7
  113. data/lib/advanced_billing/models/cancel_grouped_subscriptions_request.rb +18 -4
  114. data/lib/advanced_billing/models/cancellation_options.rb +19 -5
  115. data/lib/advanced_billing/models/cancellation_request.rb +18 -4
  116. data/lib/advanced_billing/models/change_chargeback_status_event.rb +23 -7
  117. data/lib/advanced_billing/models/change_chargeback_status_event_data.rb +18 -4
  118. data/lib/advanced_billing/models/change_invoice_collection_method_event.rb +23 -7
  119. data/lib/advanced_billing/models/change_invoice_collection_method_event_data.rb +20 -5
  120. data/lib/advanced_billing/models/change_invoice_status_event.rb +23 -7
  121. data/lib/advanced_billing/models/change_invoice_status_event_data.rb +24 -7
  122. data/lib/advanced_billing/models/chargify_ebb.rb +25 -7
  123. data/lib/advanced_billing/models/component.rb +54 -9
  124. data/lib/advanced_billing/models/component_allocation_change.rb +27 -7
  125. data/lib/advanced_billing/models/component_allocation_error_item.rb +22 -7
  126. data/lib/advanced_billing/models/component_cost_data.rb +26 -7
  127. data/lib/advanced_billing/models/component_cost_data_rate_tier.rb +24 -7
  128. data/lib/advanced_billing/models/component_currency_price.rb +24 -7
  129. data/lib/advanced_billing/models/component_currency_prices_response.rb +18 -4
  130. data/lib/advanced_billing/models/component_custom_price.rb +24 -7
  131. data/lib/advanced_billing/models/component_price.rb +26 -7
  132. data/lib/advanced_billing/models/component_price_point.rb +127 -7
  133. data/lib/advanced_billing/models/component_price_point_assignment.rb +19 -5
  134. data/lib/advanced_billing/models/component_price_point_error_item.rb +21 -6
  135. data/lib/advanced_billing/models/component_price_point_item.rb +24 -7
  136. data/lib/advanced_billing/models/component_price_point_response.rb +18 -4
  137. data/lib/advanced_billing/models/component_price_points_response.rb +19 -5
  138. data/lib/advanced_billing/models/component_response.rb +18 -4
  139. data/lib/advanced_billing/models/compounding_strategy.rb +5 -1
  140. data/lib/advanced_billing/models/consolidated_invoice.rb +18 -4
  141. data/lib/advanced_billing/models/count_response.rb +17 -4
  142. data/lib/advanced_billing/models/coupon.rb +150 -29
  143. data/lib/advanced_billing/models/coupon_currency.rb +27 -9
  144. data/lib/advanced_billing/models/coupon_currency_request.rb +18 -4
  145. data/lib/advanced_billing/models/coupon_currency_response.rb +18 -4
  146. data/lib/advanced_billing/models/coupon_payload.rb +273 -0
  147. data/lib/advanced_billing/models/{create_or_update_coupon.rb → coupon_request.rb} +26 -22
  148. data/lib/advanced_billing/models/coupon_response.rb +17 -4
  149. data/lib/advanced_billing/models/coupon_restriction.rb +22 -7
  150. data/lib/advanced_billing/models/coupon_subcodes.rb +17 -4
  151. data/lib/advanced_billing/models/coupon_subcodes_response.rb +21 -6
  152. data/lib/advanced_billing/models/coupon_usage.rb +24 -7
  153. data/lib/advanced_billing/models/create_allocation.rb +31 -7
  154. data/lib/advanced_billing/models/create_allocation_request.rb +18 -4
  155. data/lib/advanced_billing/models/create_component_price_point.rb +30 -9
  156. data/lib/advanced_billing/models/create_component_price_point_request.rb +18 -4
  157. data/lib/advanced_billing/models/create_component_price_points_request.rb +18 -4
  158. data/lib/advanced_billing/models/create_credit_note_event.rb +23 -7
  159. data/lib/advanced_billing/models/create_currency_price.rb +20 -6
  160. data/lib/advanced_billing/models/create_currency_prices_request.rb +18 -4
  161. data/lib/advanced_billing/models/create_customer.rb +33 -7
  162. data/lib/advanced_billing/models/create_customer_request.rb +18 -4
  163. data/lib/advanced_billing/models/create_debit_note_event.rb +23 -7
  164. data/lib/advanced_billing/models/create_ebb_component.rb +18 -4
  165. data/lib/advanced_billing/models/create_invoice.rb +28 -7
  166. data/lib/advanced_billing/models/create_invoice_address.rb +24 -7
  167. data/lib/advanced_billing/models/create_invoice_coupon.rb +30 -8
  168. data/lib/advanced_billing/models/create_invoice_item.rb +30 -7
  169. data/lib/advanced_billing/models/create_invoice_payment.rb +24 -7
  170. data/lib/advanced_billing/models/create_invoice_payment_application.rb +19 -5
  171. data/lib/advanced_billing/models/create_invoice_payment_request.rb +19 -5
  172. data/lib/advanced_billing/models/create_invoice_request.rb +17 -4
  173. data/lib/advanced_billing/models/create_metadata.rb +19 -5
  174. data/lib/advanced_billing/models/create_metadata_request.rb +18 -4
  175. data/lib/advanced_billing/models/create_metafield.rb +22 -7
  176. data/lib/advanced_billing/models/create_metafields_request.rb +18 -4
  177. data/lib/advanced_billing/models/create_metered_component.rb +18 -4
  178. data/lib/advanced_billing/models/create_multi_invoice_payment.rb +24 -7
  179. data/lib/advanced_billing/models/create_multi_invoice_payment_request.rb +17 -4
  180. data/lib/advanced_billing/models/create_offer.rb +25 -7
  181. data/lib/advanced_billing/models/create_offer_component.rb +22 -6
  182. data/lib/advanced_billing/models/create_offer_request.rb +17 -4
  183. data/lib/advanced_billing/models/create_on_off_component.rb +18 -4
  184. data/lib/advanced_billing/models/create_or_update_endpoint.rb +19 -5
  185. data/lib/advanced_billing/models/create_or_update_endpoint_request.rb +18 -4
  186. data/lib/advanced_billing/models/create_or_update_product.rb +36 -7
  187. data/lib/advanced_billing/models/create_or_update_product_request.rb +17 -4
  188. data/lib/advanced_billing/models/create_or_update_segment_price.rb +22 -6
  189. data/lib/advanced_billing/models/create_payment.rb +22 -7
  190. data/lib/advanced_billing/models/create_payment_profile.rb +50 -7
  191. data/lib/advanced_billing/models/create_payment_profile_request.rb +18 -4
  192. data/lib/advanced_billing/models/create_prepaid_component.rb +18 -4
  193. data/lib/advanced_billing/models/create_prepaid_usage_component_price_point.rb +38 -13
  194. data/lib/advanced_billing/models/create_prepayment.rb +23 -7
  195. data/lib/advanced_billing/models/create_prepayment_request.rb +18 -4
  196. data/lib/advanced_billing/models/create_prepayment_response.rb +18 -4
  197. data/lib/advanced_billing/models/create_product_currency_price.rb +20 -6
  198. data/lib/advanced_billing/models/create_product_currency_prices_request.rb +18 -4
  199. data/lib/advanced_billing/models/create_product_family.rb +20 -6
  200. data/lib/advanced_billing/models/create_product_family_request.rb +18 -4
  201. data/lib/advanced_billing/models/create_product_price_point.rb +35 -7
  202. data/lib/advanced_billing/models/create_product_price_point_request.rb +18 -4
  203. data/lib/advanced_billing/models/create_quantity_based_component.rb +18 -4
  204. data/lib/advanced_billing/models/create_reason_code.rb +20 -6
  205. data/lib/advanced_billing/models/create_reason_code_request.rb +18 -4
  206. data/lib/advanced_billing/models/create_segment.rb +27 -7
  207. data/lib/advanced_billing/models/create_segment_request.rb +17 -4
  208. data/lib/advanced_billing/models/create_subscription.rb +79 -8
  209. data/lib/advanced_billing/models/create_subscription_component.rb +26 -7
  210. data/lib/advanced_billing/models/create_subscription_group.rb +19 -5
  211. data/lib/advanced_billing/models/create_subscription_group_request.rb +18 -4
  212. data/lib/advanced_billing/models/create_subscription_request.rb +18 -4
  213. data/lib/advanced_billing/models/create_usage.rb +23 -7
  214. data/lib/advanced_billing/models/create_usage_request.rb +17 -4
  215. data/lib/advanced_billing/models/created_prepayment.rb +26 -7
  216. data/lib/advanced_billing/models/credit_account_balance_changed.rb +27 -7
  217. data/lib/advanced_billing/models/credit_card_attributes.rb +22 -6
  218. data/lib/advanced_billing/models/credit_card_payment_profile.rb +39 -7
  219. data/lib/advanced_billing/models/credit_note.rb +42 -7
  220. data/lib/advanced_billing/models/credit_note_application.rb +23 -7
  221. data/lib/advanced_billing/models/credit_note_line_item.rb +37 -7
  222. data/lib/advanced_billing/models/credit_scheme_request.rb +18 -4
  223. data/lib/advanced_billing/models/currency_price.rb +46 -7
  224. data/lib/advanced_billing/models/currency_prices_response.rb +18 -4
  225. data/lib/advanced_billing/models/custom_field_value_change.rb +26 -7
  226. data/lib/advanced_billing/models/customer.rb +47 -7
  227. data/lib/advanced_billing/models/customer_attributes.rb +34 -7
  228. data/lib/advanced_billing/models/customer_change.rb +23 -7
  229. data/lib/advanced_billing/models/customer_changes_preview_response.rb +17 -4
  230. data/lib/advanced_billing/models/customer_custom_fields_change.rb +19 -5
  231. data/lib/advanced_billing/models/customer_error.rb +18 -4
  232. data/lib/advanced_billing/models/customer_payer_change.rb +19 -5
  233. data/lib/advanced_billing/models/customer_response.rb +18 -4
  234. data/lib/advanced_billing/models/debit_note.rb +37 -7
  235. data/lib/advanced_billing/models/deduct_service_credit.rb +19 -5
  236. data/lib/advanced_billing/models/deduct_service_credit_request.rb +18 -4
  237. data/lib/advanced_billing/models/delayed_cancellation_response.rb +17 -4
  238. data/lib/advanced_billing/models/delete_subscription_group_response.rb +19 -5
  239. data/lib/advanced_billing/models/dunner_data.rb +25 -7
  240. data/lib/advanced_billing/models/dunning_step_data.rb +26 -7
  241. data/lib/advanced_billing/models/dunning_step_reached.rb +20 -6
  242. data/lib/advanced_billing/models/ebb_component.rb +41 -53
  243. data/lib/advanced_billing/models/ebb_event.rb +18 -4
  244. data/lib/advanced_billing/models/enable_webhooks_request.rb +18 -4
  245. data/lib/advanced_billing/models/enable_webhooks_response.rb +18 -4
  246. data/lib/advanced_billing/models/endpoint.rb +23 -7
  247. data/lib/advanced_billing/models/endpoint_response.rb +18 -4
  248. data/lib/advanced_billing/models/errors.rb +19 -5
  249. data/lib/advanced_billing/models/event.rb +89 -11
  250. data/lib/advanced_billing/models/event_based_billing_segment_error.rb +18 -4
  251. data/lib/advanced_billing/models/event_key.rb +264 -0
  252. data/lib/advanced_billing/models/event_response.rb +17 -4
  253. data/lib/advanced_billing/models/failed_payment_event.rb +23 -7
  254. data/lib/advanced_billing/models/failed_payment_event_data.rb +24 -7
  255. data/lib/advanced_billing/models/full_subscription_group_response.rb +32 -7
  256. data/lib/advanced_billing/models/get_one_time_token_payment_profile.rb +39 -7
  257. data/lib/advanced_billing/models/get_one_time_token_request.rb +18 -4
  258. data/lib/advanced_billing/models/group_billing.rb +20 -6
  259. data/lib/advanced_billing/models/group_settings.rb +19 -5
  260. data/lib/advanced_billing/models/group_target.rb +19 -5
  261. data/lib/advanced_billing/models/historic_usage.rb +22 -6
  262. data/lib/advanced_billing/models/invoice.rb +114 -13
  263. data/lib/advanced_billing/models/invoice_address.rb +22 -7
  264. data/lib/advanced_billing/models/invoice_avatax_details.rb +146 -0
  265. data/lib/advanced_billing/models/invoice_balance_item.rb +20 -6
  266. data/lib/advanced_billing/models/invoice_credit.rb +26 -7
  267. data/lib/advanced_billing/models/invoice_custom_field.rb +23 -7
  268. data/lib/advanced_billing/models/invoice_customer.rb +25 -7
  269. data/lib/advanced_billing/models/invoice_debit.rb +167 -0
  270. data/lib/advanced_billing/models/invoice_discount.rb +30 -7
  271. data/lib/advanced_billing/models/invoice_discount_breakout.rb +21 -6
  272. data/lib/advanced_billing/models/invoice_display_settings.rb +23 -7
  273. data/lib/advanced_billing/models/invoice_issued.rb +31 -7
  274. data/lib/advanced_billing/models/invoice_line_item.rb +55 -8
  275. data/lib/advanced_billing/models/invoice_line_item_component_cost_data.rb +17 -4
  276. data/lib/advanced_billing/models/invoice_line_item_event_data.rb +37 -7
  277. data/lib/advanced_billing/models/invoice_line_item_pricing_detail.rb +19 -5
  278. data/lib/advanced_billing/models/invoice_payer.rb +24 -7
  279. data/lib/advanced_billing/models/invoice_payer_change.rb +22 -7
  280. data/lib/advanced_billing/models/invoice_payment.rb +30 -7
  281. data/lib/advanced_billing/models/invoice_payment_application.rb +21 -6
  282. data/lib/advanced_billing/models/invoice_payment_method.rb +26 -7
  283. data/lib/advanced_billing/models/invoice_pre_payment.rb +22 -6
  284. data/lib/advanced_billing/models/invoice_previous_balance.rb +19 -5
  285. data/lib/advanced_billing/models/invoice_refund.rb +28 -7
  286. data/lib/advanced_billing/models/invoice_response.rb +17 -4
  287. data/lib/advanced_billing/models/invoice_seller.rb +22 -7
  288. data/lib/advanced_billing/models/invoice_status.rb +4 -1
  289. data/lib/advanced_billing/models/invoice_tax.rb +31 -7
  290. data/lib/advanced_billing/models/invoice_tax_breakout.rb +23 -7
  291. data/lib/advanced_billing/models/invoice_tax_component_breakout.rb +33 -7
  292. data/lib/advanced_billing/models/issue_advance_invoice_request.rb +17 -4
  293. data/lib/advanced_billing/models/issue_invoice_event.rb +23 -7
  294. data/lib/advanced_billing/models/issue_invoice_event_data.rb +24 -7
  295. data/lib/advanced_billing/models/issue_invoice_request.rb +18 -4
  296. data/lib/advanced_billing/models/issue_service_credit.rb +19 -5
  297. data/lib/advanced_billing/models/issue_service_credit_request.rb +18 -4
  298. data/lib/advanced_billing/models/item_price_point_changed.rb +25 -7
  299. data/lib/advanced_billing/models/item_price_point_data.rb +20 -6
  300. data/lib/advanced_billing/models/list_components_filter.rb +19 -5
  301. data/lib/advanced_billing/models/list_components_price_points_response.rb +18 -4
  302. data/lib/advanced_billing/models/list_coupons_filter.rb +26 -7
  303. data/lib/advanced_billing/models/list_credit_notes_response.rb +18 -4
  304. data/lib/advanced_billing/models/list_invoice_events_response.rb +22 -7
  305. data/lib/advanced_billing/models/list_invoices_response.rb +18 -4
  306. data/lib/advanced_billing/models/list_metafields_response.rb +24 -7
  307. data/lib/advanced_billing/models/list_mrr_filter.rb +18 -4
  308. data/lib/advanced_billing/models/list_mrr_response.rb +16 -4
  309. data/lib/advanced_billing/models/list_mrr_response_result.rb +25 -7
  310. data/lib/advanced_billing/models/list_offers_response.rb +17 -4
  311. data/lib/advanced_billing/models/list_prepayments_filter.rb +20 -6
  312. data/lib/advanced_billing/models/list_price_points_filter.rb +25 -7
  313. data/lib/advanced_billing/models/list_product_price_points_response.rb +18 -4
  314. data/lib/advanced_billing/models/list_products_filter.rb +23 -7
  315. data/lib/advanced_billing/models/list_proforma_invoices_meta.rb +23 -7
  316. data/lib/advanced_billing/models/list_proforma_invoices_response.rb +19 -5
  317. data/lib/advanced_billing/models/list_public_keys_meta.rb +23 -7
  318. data/lib/advanced_billing/models/list_public_keys_response.rb +19 -5
  319. data/lib/advanced_billing/models/list_sale_rep_item.rb +23 -7
  320. data/lib/advanced_billing/models/list_segments_filter.rb +26 -7
  321. data/lib/advanced_billing/models/list_segments_response.rb +18 -4
  322. data/lib/advanced_billing/models/list_subcription_group_prepayment_item.rb +28 -7
  323. data/lib/advanced_billing/models/list_subscription_components_filter.rb +19 -5
  324. data/lib/advanced_billing/models/list_subscription_components_for_site_filter.rb +22 -6
  325. data/lib/advanced_billing/models/list_subscription_components_response.rb +18 -4
  326. data/lib/advanced_billing/models/list_subscription_group_prepayment.rb +18 -4
  327. data/lib/advanced_billing/models/list_subscription_group_prepayment_response.rb +18 -4
  328. data/lib/advanced_billing/models/list_subscription_groups_item.rb +30 -7
  329. data/lib/advanced_billing/models/list_subscription_groups_meta.rb +19 -5
  330. data/lib/advanced_billing/models/list_subscription_groups_response.rb +19 -5
  331. data/lib/advanced_billing/models/metadata.rb +24 -7
  332. data/lib/advanced_billing/models/metafield.rb +23 -7
  333. data/lib/advanced_billing/models/metafield_scope.rb +24 -7
  334. data/lib/advanced_billing/models/metered_component.rb +49 -51
  335. data/lib/advanced_billing/models/metered_usage.rb +25 -7
  336. data/lib/advanced_billing/models/movement.rb +28 -7
  337. data/lib/advanced_billing/models/movement_line_item.rb +26 -7
  338. data/lib/advanced_billing/models/mrr.rb +25 -7
  339. data/lib/advanced_billing/models/mrr_movement.rb +23 -7
  340. data/lib/advanced_billing/models/mrr_response.rb +16 -4
  341. data/lib/advanced_billing/models/multi_invoice_payment.rb +23 -7
  342. data/lib/advanced_billing/models/multi_invoice_payment_response.rb +17 -4
  343. data/lib/advanced_billing/models/nested_subscription_group.rb +23 -7
  344. data/lib/advanced_billing/models/net_terms.rb +28 -7
  345. data/lib/advanced_billing/models/offer.rb +37 -7
  346. data/lib/advanced_billing/models/offer_discount.rb +21 -6
  347. data/lib/advanced_billing/models/offer_item.rb +29 -7
  348. data/lib/advanced_billing/models/offer_response.rb +17 -4
  349. data/lib/advanced_billing/models/offer_signup_page.rb +24 -7
  350. data/lib/advanced_billing/models/{reason_codes_json_response.rb → ok_response.rb} +19 -7
  351. data/lib/advanced_billing/models/on_off_component.rb +66 -61
  352. data/lib/advanced_billing/models/organization_address.rb +24 -7
  353. data/lib/advanced_billing/models/origin_invoice.rb +19 -5
  354. data/lib/advanced_billing/models/overage_pricing.rb +19 -5
  355. data/lib/advanced_billing/models/override_subscription.rb +26 -7
  356. data/lib/advanced_billing/models/override_subscription_request.rb +18 -4
  357. data/lib/advanced_billing/models/paginated_metadata.rb +24 -7
  358. data/lib/advanced_billing/models/paid_invoice.rb +22 -7
  359. data/lib/advanced_billing/models/pause_request.rb +17 -4
  360. data/lib/advanced_billing/models/payer_attributes.rb +31 -7
  361. data/lib/advanced_billing/models/payer_error.rb +20 -6
  362. data/lib/advanced_billing/models/payment_collection_method_changed.rb +19 -5
  363. data/lib/advanced_billing/models/payment_for_allocation.rb +22 -7
  364. data/lib/advanced_billing/models/payment_method_apple_pay.rb +17 -4
  365. data/lib/advanced_billing/models/payment_method_bank_account.rb +22 -6
  366. data/lib/advanced_billing/models/payment_method_credit_card.rb +24 -7
  367. data/lib/advanced_billing/models/payment_method_external.rb +22 -7
  368. data/lib/advanced_billing/models/payment_method_paypal.rb +19 -5
  369. data/lib/advanced_billing/models/payment_profile_attributes.rb +42 -7
  370. data/lib/advanced_billing/models/payment_profile_response.rb +18 -4
  371. data/lib/advanced_billing/models/payment_related_events.rb +19 -5
  372. data/lib/advanced_billing/models/paypal_payment_profile.rb +35 -7
  373. data/lib/advanced_billing/models/pending_cancellation_change.rb +19 -5
  374. data/lib/advanced_billing/models/portal_management_link.rb +25 -7
  375. data/lib/advanced_billing/models/prepaid_configuration.rb +27 -7
  376. data/lib/advanced_billing/models/prepaid_configuration_response.rb +18 -4
  377. data/lib/advanced_billing/models/prepaid_product_price_point_filter.rb +18 -4
  378. data/lib/advanced_billing/models/prepaid_subscription_balance_changed.rb +26 -7
  379. data/lib/advanced_billing/models/prepaid_usage.rb +32 -7
  380. data/lib/advanced_billing/models/prepaid_usage_allocation_detail.rb +21 -6
  381. data/lib/advanced_billing/models/prepaid_usage_component.rb +83 -41
  382. data/lib/advanced_billing/models/prepayment.rb +28 -7
  383. data/lib/advanced_billing/models/prepayment_account_balance_changed.rb +25 -7
  384. data/lib/advanced_billing/models/prepayment_response.rb +18 -4
  385. data/lib/advanced_billing/models/prepayments_response.rb +18 -4
  386. data/lib/advanced_billing/models/preview_allocations_request.rb +24 -7
  387. data/lib/advanced_billing/models/price.rb +22 -6
  388. data/lib/advanced_billing/models/product.rb +62 -7
  389. data/lib/advanced_billing/models/product_family.rb +24 -7
  390. data/lib/advanced_billing/models/product_family_response.rb +18 -4
  391. data/lib/advanced_billing/models/product_price_point.rb +44 -7
  392. data/lib/advanced_billing/models/product_price_point_errors.rb +24 -7
  393. data/lib/advanced_billing/models/product_price_point_response.rb +18 -4
  394. data/lib/advanced_billing/models/product_response.rb +17 -4
  395. data/lib/advanced_billing/models/proforma_error.rb +18 -4
  396. data/lib/advanced_billing/models/proforma_invoice.rb +49 -7
  397. data/lib/advanced_billing/models/proforma_invoice_credit.rb +22 -7
  398. data/lib/advanced_billing/models/proforma_invoice_discount.rb +26 -7
  399. data/lib/advanced_billing/models/proforma_invoice_issued.rb +28 -7
  400. data/lib/advanced_billing/models/proforma_invoice_payment.rb +23 -7
  401. data/lib/advanced_billing/models/proforma_invoice_tax.rb +25 -7
  402. data/lib/advanced_billing/models/proration.rb +18 -4
  403. data/lib/advanced_billing/models/public_key.rb +22 -6
  404. data/lib/advanced_billing/models/public_signup_page.rb +22 -7
  405. data/lib/advanced_billing/models/quantity_based_component.rb +51 -23
  406. data/lib/advanced_billing/models/reactivate_subscription_group_request.rb +19 -5
  407. data/lib/advanced_billing/models/reactivate_subscription_group_response.rb +28 -7
  408. data/lib/advanced_billing/models/reactivate_subscription_request.rb +26 -7
  409. data/lib/advanced_billing/models/reactivation_billing.rb +18 -4
  410. data/lib/advanced_billing/models/reason_code.rb +24 -7
  411. data/lib/advanced_billing/models/reason_code_response.rb +18 -4
  412. data/lib/advanced_billing/models/record_payment_request.rb +17 -4
  413. data/lib/advanced_billing/models/record_payment_response.rb +19 -5
  414. data/lib/advanced_billing/models/referral_code.rb +22 -7
  415. data/lib/advanced_billing/models/referral_validation_response.rb +18 -4
  416. data/lib/advanced_billing/models/refund_consolidated_invoice.rb +24 -7
  417. data/lib/advanced_billing/models/refund_invoice.rb +24 -7
  418. data/lib/advanced_billing/models/refund_invoice_event.rb +23 -7
  419. data/lib/advanced_billing/models/refund_invoice_event_data.rb +28 -7
  420. data/lib/advanced_billing/models/refund_invoice_request.rb +17 -4
  421. data/lib/advanced_billing/models/refund_prepayment.rb +22 -7
  422. data/lib/advanced_billing/models/refund_prepayment_base_refund_error.rb +17 -4
  423. data/lib/advanced_billing/models/refund_prepayment_request.rb +17 -4
  424. data/lib/advanced_billing/models/refund_success.rb +22 -6
  425. data/lib/advanced_billing/models/remove_payment_event.rb +23 -7
  426. data/lib/advanced_billing/models/remove_payment_event_data.rb +26 -7
  427. data/lib/advanced_billing/models/renewal_preview.rb +30 -7
  428. data/lib/advanced_billing/models/renewal_preview_component.rb +21 -6
  429. data/lib/advanced_billing/models/renewal_preview_line_item.rb +34 -7
  430. data/lib/advanced_billing/models/renewal_preview_request.rb +18 -4
  431. data/lib/advanced_billing/models/renewal_preview_response.rb +18 -4
  432. data/lib/advanced_billing/models/replay_webhooks_request.rb +16 -4
  433. data/lib/advanced_billing/models/replay_webhooks_response.rb +17 -4
  434. data/lib/advanced_billing/models/resent_invitation.rb +26 -7
  435. data/lib/advanced_billing/models/resume_options.rb +19 -5
  436. data/lib/advanced_billing/models/revoked_invitation.rb +22 -6
  437. data/lib/advanced_billing/models/sale_rep.rb +23 -7
  438. data/lib/advanced_billing/models/sale_rep_item_mrr.rb +20 -6
  439. data/lib/advanced_billing/models/sale_rep_settings.rb +26 -7
  440. data/lib/advanced_billing/models/sale_rep_subscription.rb +26 -7
  441. data/lib/advanced_billing/models/segment.rb +33 -7
  442. data/lib/advanced_billing/models/segment_price.rb +26 -7
  443. data/lib/advanced_billing/models/segment_response.rb +17 -4
  444. data/lib/advanced_billing/models/send_invoice_request.rb +22 -6
  445. data/lib/advanced_billing/models/service_credit.rb +24 -7
  446. data/lib/advanced_billing/models/service_credit_response.rb +18 -4
  447. data/lib/advanced_billing/models/signup_proforma_preview.rb +21 -5
  448. data/lib/advanced_billing/models/signup_proforma_preview_response.rb +18 -4
  449. data/lib/advanced_billing/models/site.rb +56 -7
  450. data/lib/advanced_billing/models/site_response.rb +17 -4
  451. data/lib/advanced_billing/models/site_statistics.rb +35 -7
  452. data/lib/advanced_billing/models/site_summary.rb +23 -7
  453. data/lib/advanced_billing/models/subscription.rb +91 -7
  454. data/lib/advanced_billing/models/subscription_component.rb +50 -7
  455. data/lib/advanced_billing/models/subscription_component_allocation_error_item.rb +19 -5
  456. data/lib/advanced_billing/models/subscription_component_response.rb +18 -4
  457. data/lib/advanced_billing/models/subscription_component_subscription.rb +19 -5
  458. data/lib/advanced_billing/models/subscription_custom_price.rb +34 -7
  459. data/lib/advanced_billing/models/subscription_filter.rb +24 -7
  460. data/lib/advanced_billing/models/subscription_group.rb +25 -7
  461. data/lib/advanced_billing/models/subscription_group_balances.rb +23 -7
  462. data/lib/advanced_billing/models/subscription_group_bank_account.rb +35 -7
  463. data/lib/advanced_billing/models/subscription_group_component_custom_price.rb +21 -6
  464. data/lib/advanced_billing/models/subscription_group_credit_card.rb +37 -7
  465. data/lib/advanced_billing/models/subscription_group_customer.rb +23 -7
  466. data/lib/advanced_billing/models/subscription_group_item.rb +30 -7
  467. data/lib/advanced_billing/models/subscription_group_members_array_error.rb +17 -4
  468. data/lib/advanced_billing/models/subscription_group_payment_profile.rb +23 -7
  469. data/lib/advanced_billing/models/subscription_group_prepayment.rb +22 -7
  470. data/lib/advanced_billing/models/subscription_group_prepayment_request.rb +18 -4
  471. data/lib/advanced_billing/models/subscription_group_prepayment_response.rb +24 -7
  472. data/lib/advanced_billing/models/subscription_group_response.rb +18 -4
  473. data/lib/advanced_billing/models/subscription_group_signup.rb +29 -7
  474. data/lib/advanced_billing/models/subscription_group_signup_component.rb +24 -7
  475. data/lib/advanced_billing/models/subscription_group_signup_error.rb +25 -7
  476. data/lib/advanced_billing/models/{subscription_group_signup_success.rb → subscription_group_signup_event_data.rb} +31 -15
  477. data/lib/advanced_billing/models/subscription_group_signup_failure_data.rb +29 -7
  478. data/lib/advanced_billing/models/subscription_group_signup_item.rb +31 -7
  479. data/lib/advanced_billing/models/subscription_group_signup_request.rb +18 -4
  480. data/lib/advanced_billing/models/subscription_group_signup_response.rb +31 -7
  481. data/lib/advanced_billing/models/subscription_group_single_error.rb +18 -4
  482. data/lib/advanced_billing/models/subscription_group_subscription_error.rb +31 -7
  483. data/lib/advanced_billing/models/subscription_group_update_error.rb +19 -15
  484. data/lib/advanced_billing/models/subscription_included_coupon.rb +25 -7
  485. data/lib/advanced_billing/models/subscription_migration_preview.rb +25 -7
  486. data/lib/advanced_billing/models/subscription_migration_preview_options.rb +30 -7
  487. data/lib/advanced_billing/models/subscription_migration_preview_request.rb +18 -4
  488. data/lib/advanced_billing/models/subscription_migration_preview_response.rb +18 -4
  489. data/lib/advanced_billing/models/subscription_mrr.rb +22 -6
  490. data/lib/advanced_billing/models/subscription_mrr_breakout.rb +20 -5
  491. data/lib/advanced_billing/models/subscription_mrr_response.rb +18 -4
  492. data/lib/advanced_billing/models/subscription_note.rb +24 -7
  493. data/lib/advanced_billing/models/subscription_note_response.rb +17 -4
  494. data/lib/advanced_billing/models/subscription_preview.rb +21 -5
  495. data/lib/advanced_billing/models/subscription_preview_response.rb +18 -4
  496. data/lib/advanced_billing/models/subscription_product_change.rb +19 -5
  497. data/lib/advanced_billing/models/subscription_product_migration.rb +30 -7
  498. data/lib/advanced_billing/models/subscription_product_migration_request.rb +18 -4
  499. data/lib/advanced_billing/models/subscription_response.rb +18 -4
  500. data/lib/advanced_billing/models/subscription_state_change.rb +21 -5
  501. data/lib/advanced_billing/models/tax_configuration.rb +22 -6
  502. data/lib/advanced_billing/models/too_many_management_link_requests.rb +19 -5
  503. data/lib/advanced_billing/models/update_allocation_expiration_date.rb +18 -4
  504. data/lib/advanced_billing/models/update_component.rb +27 -7
  505. data/lib/advanced_billing/models/update_component_price_point.rb +26 -7
  506. data/lib/advanced_billing/models/update_component_price_point_request.rb +18 -4
  507. data/lib/advanced_billing/models/update_component_request.rb +18 -4
  508. data/lib/advanced_billing/models/update_coupon_currency.rb +19 -5
  509. data/lib/advanced_billing/models/update_currency_price.rb +20 -6
  510. data/lib/advanced_billing/models/update_currency_prices_request.rb +18 -4
  511. data/lib/advanced_billing/models/update_customer.rb +33 -7
  512. data/lib/advanced_billing/models/update_customer_request.rb +18 -4
  513. data/lib/advanced_billing/models/update_metadata.rb +20 -6
  514. data/lib/advanced_billing/models/update_metadata_request.rb +18 -4
  515. data/lib/advanced_billing/models/update_metafield.rb +23 -7
  516. data/lib/advanced_billing/models/update_metafields_request.rb +18 -4
  517. data/lib/advanced_billing/models/update_payment_profile.rb +30 -7
  518. data/lib/advanced_billing/models/update_payment_profile_request.rb +18 -4
  519. data/lib/advanced_billing/models/update_price.rb +23 -7
  520. data/lib/advanced_billing/models/update_product_price_point.rb +19 -5
  521. data/lib/advanced_billing/models/update_product_price_point_request.rb +18 -4
  522. data/lib/advanced_billing/models/update_reason_code.rb +20 -6
  523. data/lib/advanced_billing/models/update_reason_code_request.rb +18 -4
  524. data/lib/advanced_billing/models/update_segment.rb +19 -5
  525. data/lib/advanced_billing/models/update_segment_request.rb +17 -4
  526. data/lib/advanced_billing/models/update_subscription.rb +45 -8
  527. data/lib/advanced_billing/models/update_subscription_component.rb +19 -5
  528. data/lib/advanced_billing/models/update_subscription_group.rb +18 -4
  529. data/lib/advanced_billing/models/update_subscription_group_request.rb +18 -4
  530. data/lib/advanced_billing/models/update_subscription_note.rb +19 -5
  531. data/lib/advanced_billing/models/update_subscription_note_request.rb +17 -4
  532. data/lib/advanced_billing/models/update_subscription_request.rb +18 -4
  533. data/lib/advanced_billing/models/upsert_prepaid_configuration.rb +27 -7
  534. data/lib/advanced_billing/models/upsert_prepaid_configuration_request.rb +18 -4
  535. data/lib/advanced_billing/models/usage.rb +26 -7
  536. data/lib/advanced_billing/models/usage_response.rb +17 -4
  537. data/lib/advanced_billing/models/void_invoice.rb +17 -4
  538. data/lib/advanced_billing/models/void_invoice_event.rb +23 -7
  539. data/lib/advanced_billing/models/void_invoice_event_data.rb +25 -7
  540. data/lib/advanced_billing/models/void_invoice_request.rb +17 -4
  541. data/lib/advanced_billing/models/void_remainder_event.rb +23 -7
  542. data/lib/advanced_billing/models/void_remainder_event_data.rb +23 -7
  543. data/lib/advanced_billing/models/webhook.rb +29 -7
  544. data/lib/advanced_billing/models/webhook_response.rb +17 -4
  545. data/lib/advanced_billing/utilities/file_wrapper.rb +14 -2
  546. data/lib/advanced_billing/utilities/union_type_lookup.rb +12 -33
  547. data/lib/advanced_billing.rb +9 -11
  548. metadata +12 -14
  549. data/lib/advanced_billing/models/create_or_update_flat_amount_coupon.rb +0 -249
  550. data/lib/advanced_billing/models/create_or_update_percentage_coupon.rb +0 -250
  551. data/lib/advanced_billing/models/event_type.rb +0 -121
  552. data/lib/advanced_billing/models/prepaid_component_price_point.rb +0 -123
  553. data/lib/advanced_billing/models/subscription_group_member_error.rb +0 -78
  554. data/lib/advanced_billing/models/subscription_group_signup_failure.rb +0 -93
  555. data/lib/advanced_billing/models/subscription_group_signup_success_data.rb +0 -185
@@ -46,90 +46,150 @@ module AdvancedBilling
46
46
  # @return [DateTime]
47
47
  attr_accessor :start_date
48
48
 
49
- # TODO: Write general description for this method
49
+ # After the given time, this coupon code will be invalid for new signups.
50
+ # Recurring discounts started before this date will continue to recur even
51
+ # after this date.
50
52
  # @return [DateTime]
51
53
  attr_accessor :end_date
52
54
 
53
- # TODO: Write general description for this method
55
+ # After the given time, this coupon code will be invalid for new signups.
56
+ # Recurring discounts started before this date will continue to recur even
57
+ # after this date.
54
58
  # @return [String]
55
59
  attr_accessor :percentage
56
60
 
57
- # TODO: Write general description for this method
61
+ # After the given time, this coupon code will be invalid for new signups.
62
+ # Recurring discounts started before this date will continue to recur even
63
+ # after this date.
58
64
  # @return [TrueClass | FalseClass]
59
65
  attr_accessor :recurring
60
66
 
61
- # TODO: Write general description for this method
67
+ # After the given time, this coupon code will be invalid for new signups.
68
+ # Recurring discounts started before this date will continue to recur even
69
+ # after this date.
62
70
  # @return [RecurringScheme]
63
71
  attr_accessor :recurring_scheme
64
72
 
65
- # TODO: Write general description for this method
73
+ # After the given time, this coupon code will be invalid for new signups.
74
+ # Recurring discounts started before this date will continue to recur even
75
+ # after this date.
66
76
  # @return [Integer]
67
77
  attr_accessor :duration_period_count
68
78
 
69
- # TODO: Write general description for this method
79
+ # After the given time, this coupon code will be invalid for new signups.
80
+ # Recurring discounts started before this date will continue to recur even
81
+ # after this date.
70
82
  # @return [Integer]
71
83
  attr_accessor :duration_interval
72
84
 
73
- # TODO: Write general description for this method
85
+ # After the given time, this coupon code will be invalid for new signups.
86
+ # Recurring discounts started before this date will continue to recur even
87
+ # after this date.
74
88
  # @return [String]
75
89
  attr_accessor :duration_interval_unit
76
90
 
77
- # TODO: Write general description for this method
91
+ # After the given time, this coupon code will be invalid for new signups.
92
+ # Recurring discounts started before this date will continue to recur even
93
+ # after this date.
78
94
  # @return [String]
79
95
  attr_accessor :duration_interval_span
80
96
 
81
- # TODO: Write general description for this method
97
+ # If set to true, discount is not limited (credits will carry forward to
98
+ # next billing).
82
99
  # @return [TrueClass | FalseClass]
83
100
  attr_accessor :allow_negative_balance
84
101
 
85
- # TODO: Write general description for this method
102
+ # If set to true, discount is not limited (credits will carry forward to
103
+ # next billing).
86
104
  # @return [DateTime]
87
105
  attr_accessor :archived_at
88
106
 
89
- # TODO: Write general description for this method
107
+ # If set to true, discount is not limited (credits will carry forward to
108
+ # next billing).
90
109
  # @return [String]
91
110
  attr_accessor :conversion_limit
92
111
 
93
- # TODO: Write general description for this method
112
+ # A stackable coupon can be combined with other coupons on a Subscription.
94
113
  # @return [TrueClass | FalseClass]
95
114
  attr_accessor :stackable
96
115
 
97
- # TODO: Write general description for this method
116
+ # Applicable only to stackable coupons. For `compound`, Percentage-based
117
+ # discounts will be calculated against the remaining price, after prior
118
+ # discounts have been calculated. For `full-price`, Percentage-based
119
+ # discounts will always be calculated against the original item price,
120
+ # before other discounts are applied.
98
121
  # @return [CompoundingStrategy]
99
122
  attr_accessor :compounding_strategy
100
123
 
101
- # TODO: Write general description for this method
124
+ # Applicable only to stackable coupons. For `compound`, Percentage-based
125
+ # discounts will be calculated against the remaining price, after prior
126
+ # discounts have been calculated. For `full-price`, Percentage-based
127
+ # discounts will always be calculated against the original item price,
128
+ # before other discounts are applied.
102
129
  # @return [TrueClass | FalseClass]
103
130
  attr_accessor :use_site_exchange_rate
104
131
 
105
- # TODO: Write general description for this method
132
+ # Applicable only to stackable coupons. For `compound`, Percentage-based
133
+ # discounts will be calculated against the remaining price, after prior
134
+ # discounts have been calculated. For `full-price`, Percentage-based
135
+ # discounts will always be calculated against the original item price,
136
+ # before other discounts are applied.
106
137
  # @return [DateTime]
107
138
  attr_accessor :created_at
108
139
 
109
- # TODO: Write general description for this method
140
+ # Applicable only to stackable coupons. For `compound`, Percentage-based
141
+ # discounts will be calculated against the remaining price, after prior
142
+ # discounts have been calculated. For `full-price`, Percentage-based
143
+ # discounts will always be calculated against the original item price,
144
+ # before other discounts are applied.
110
145
  # @return [DateTime]
111
146
  attr_accessor :updated_at
112
147
 
113
- # TODO: Write general description for this method
148
+ # Applicable only to stackable coupons. For `compound`, Percentage-based
149
+ # discounts will be calculated against the remaining price, after prior
150
+ # discounts have been calculated. For `full-price`, Percentage-based
151
+ # discounts will always be calculated against the original item price,
152
+ # before other discounts are applied.
114
153
  # @return [DiscountType]
115
154
  attr_accessor :discount_type
116
155
 
117
- # TODO: Write general description for this method
156
+ # Applicable only to stackable coupons. For `compound`, Percentage-based
157
+ # discounts will be calculated against the remaining price, after prior
158
+ # discounts have been calculated. For `full-price`, Percentage-based
159
+ # discounts will always be calculated against the original item price,
160
+ # before other discounts are applied.
118
161
  # @return [TrueClass | FalseClass]
119
162
  attr_accessor :exclude_mid_period_allocations
120
163
 
121
- # TODO: Write general description for this method
164
+ # Applicable only to stackable coupons. For `compound`, Percentage-based
165
+ # discounts will be calculated against the remaining price, after prior
166
+ # discounts have been calculated. For `full-price`, Percentage-based
167
+ # discounts will always be calculated against the original item price,
168
+ # before other discounts are applied.
122
169
  # @return [TrueClass | FalseClass]
123
170
  attr_accessor :apply_on_cancel_at_end_of_period
124
171
 
125
- # TODO: Write general description for this method
172
+ # Applicable only to stackable coupons. For `compound`, Percentage-based
173
+ # discounts will be calculated against the remaining price, after prior
174
+ # discounts have been calculated. For `full-price`, Percentage-based
175
+ # discounts will always be calculated against the original item price,
176
+ # before other discounts are applied.
126
177
  # @return [TrueClass | FalseClass]
127
178
  attr_accessor :apply_on_subscription_expiration
128
179
 
129
- # TODO: Write general description for this method
180
+ # Applicable only to stackable coupons. For `compound`, Percentage-based
181
+ # discounts will be calculated against the remaining price, after prior
182
+ # discounts have been calculated. For `full-price`, Percentage-based
183
+ # discounts will always be calculated against the original item price,
184
+ # before other discounts are applied.
130
185
  # @return [Array[CouponRestriction]]
131
186
  attr_accessor :coupon_restrictions
132
187
 
188
+ # Returned in read, find, and list endpoints if the query parameter is
189
+ # provided.
190
+ # @return [Array[CouponCurrency]]
191
+ attr_accessor :currency_prices
192
+
133
193
  # A mapping from model property names to API property names.
134
194
  def self.names
135
195
  @_hash = {} if @_hash.nil?
@@ -166,6 +226,7 @@ module AdvancedBilling
166
226
  @_hash['apply_on_subscription_expiration'] =
167
227
  'apply_on_subscription_expiration'
168
228
  @_hash['coupon_restrictions'] = 'coupon_restrictions'
229
+ @_hash['currency_prices'] = 'currency_prices'
169
230
  @_hash
170
231
  end
171
232
 
@@ -202,6 +263,7 @@ module AdvancedBilling
202
263
  apply_on_cancel_at_end_of_period
203
264
  apply_on_subscription_expiration
204
265
  coupon_restrictions
266
+ currency_prices
205
267
  ]
206
268
  end
207
269
 
@@ -236,7 +298,13 @@ module AdvancedBilling
236
298
  exclude_mid_period_allocations: SKIP,
237
299
  apply_on_cancel_at_end_of_period: SKIP,
238
300
  apply_on_subscription_expiration: SKIP,
239
- coupon_restrictions: SKIP, additional_properties: {})
301
+ coupon_restrictions: SKIP, currency_prices: SKIP,
302
+ additional_properties: {})
303
+ # Add additional model properties to the instance.
304
+ additional_properties.each do |_name, _value|
305
+ instance_variable_set("@#{_name}", _value)
306
+ end
307
+
240
308
  @id = id unless id == SKIP
241
309
  @name = name unless name == SKIP
242
310
  @code = code unless code == SKIP
@@ -276,11 +344,7 @@ module AdvancedBilling
276
344
  apply_on_subscription_expiration
277
345
  end
278
346
  @coupon_restrictions = coupon_restrictions unless coupon_restrictions == SKIP
279
-
280
- # Add additional model properties to the instance.
281
- additional_properties.each do |_name, _value|
282
- instance_variable_set("@#{_name}", _value)
283
- end
347
+ @currency_prices = currency_prices unless currency_prices == SKIP
284
348
  end
285
349
 
286
350
  # Creates an instance of the object from a hash.
@@ -362,9 +426,19 @@ module AdvancedBilling
362
426
  end
363
427
 
364
428
  coupon_restrictions = SKIP unless hash.key?('coupon_restrictions')
429
+ # Parameter is an array, so we need to iterate through it
430
+ currency_prices = nil
431
+ unless hash['currency_prices'].nil?
432
+ currency_prices = []
433
+ hash['currency_prices'].each do |structure|
434
+ currency_prices << (CouponCurrency.from_hash(structure) if structure)
435
+ end
436
+ end
437
+
438
+ currency_prices = SKIP unless hash.key?('currency_prices')
365
439
 
366
440
  # Clean out expected properties from Hash.
367
- names.each_value { |k| hash.delete(k) }
441
+ additional_properties = hash.reject { |k, _| names.value?(k) }
368
442
 
369
443
  # Create object from extracted values.
370
444
  Coupon.new(id: id,
@@ -397,7 +471,8 @@ module AdvancedBilling
397
471
  apply_on_cancel_at_end_of_period: apply_on_cancel_at_end_of_period,
398
472
  apply_on_subscription_expiration: apply_on_subscription_expiration,
399
473
  coupon_restrictions: coupon_restrictions,
400
- additional_properties: hash)
474
+ currency_prices: currency_prices,
475
+ additional_properties: additional_properties)
401
476
  end
402
477
 
403
478
  def to_custom_start_date
@@ -419,5 +494,51 @@ module AdvancedBilling
419
494
  def to_custom_updated_at
420
495
  DateTimeHelper.to_rfc3339(updated_at)
421
496
  end
497
+
498
+ # Provides a human-readable string representation of the object.
499
+ def to_s
500
+ class_name = self.class.name.split('::').last
501
+ "<#{class_name} id: #{@id}, name: #{@name}, code: #{@code}, description: #{@description},"\
502
+ " amount: #{@amount}, amount_in_cents: #{@amount_in_cents}, product_family_id:"\
503
+ " #{@product_family_id}, product_family_name: #{@product_family_name}, start_date:"\
504
+ " #{@start_date}, end_date: #{@end_date}, percentage: #{@percentage}, recurring:"\
505
+ " #{@recurring}, recurring_scheme: #{@recurring_scheme}, duration_period_count:"\
506
+ " #{@duration_period_count}, duration_interval: #{@duration_interval},"\
507
+ " duration_interval_unit: #{@duration_interval_unit}, duration_interval_span:"\
508
+ " #{@duration_interval_span}, allow_negative_balance: #{@allow_negative_balance},"\
509
+ " archived_at: #{@archived_at}, conversion_limit: #{@conversion_limit}, stackable:"\
510
+ " #{@stackable}, compounding_strategy: #{@compounding_strategy}, use_site_exchange_rate:"\
511
+ " #{@use_site_exchange_rate}, created_at: #{@created_at}, updated_at: #{@updated_at},"\
512
+ " discount_type: #{@discount_type}, exclude_mid_period_allocations:"\
513
+ " #{@exclude_mid_period_allocations}, apply_on_cancel_at_end_of_period:"\
514
+ " #{@apply_on_cancel_at_end_of_period}, apply_on_subscription_expiration:"\
515
+ " #{@apply_on_subscription_expiration}, coupon_restrictions: #{@coupon_restrictions},"\
516
+ " currency_prices: #{@currency_prices}, additional_properties:"\
517
+ " #{get_additional_properties}>"
518
+ end
519
+
520
+ # Provides a debugging-friendly string with detailed object information.
521
+ def inspect
522
+ class_name = self.class.name.split('::').last
523
+ "<#{class_name} id: #{@id.inspect}, name: #{@name.inspect}, code: #{@code.inspect},"\
524
+ " description: #{@description.inspect}, amount: #{@amount.inspect}, amount_in_cents:"\
525
+ " #{@amount_in_cents.inspect}, product_family_id: #{@product_family_id.inspect},"\
526
+ " product_family_name: #{@product_family_name.inspect}, start_date: #{@start_date.inspect},"\
527
+ " end_date: #{@end_date.inspect}, percentage: #{@percentage.inspect}, recurring:"\
528
+ " #{@recurring.inspect}, recurring_scheme: #{@recurring_scheme.inspect},"\
529
+ " duration_period_count: #{@duration_period_count.inspect}, duration_interval:"\
530
+ " #{@duration_interval.inspect}, duration_interval_unit: #{@duration_interval_unit.inspect},"\
531
+ " duration_interval_span: #{@duration_interval_span.inspect}, allow_negative_balance:"\
532
+ " #{@allow_negative_balance.inspect}, archived_at: #{@archived_at.inspect},"\
533
+ " conversion_limit: #{@conversion_limit.inspect}, stackable: #{@stackable.inspect},"\
534
+ " compounding_strategy: #{@compounding_strategy.inspect}, use_site_exchange_rate:"\
535
+ " #{@use_site_exchange_rate.inspect}, created_at: #{@created_at.inspect}, updated_at:"\
536
+ " #{@updated_at.inspect}, discount_type: #{@discount_type.inspect},"\
537
+ " exclude_mid_period_allocations: #{@exclude_mid_period_allocations.inspect},"\
538
+ " apply_on_cancel_at_end_of_period: #{@apply_on_cancel_at_end_of_period.inspect},"\
539
+ " apply_on_subscription_expiration: #{@apply_on_subscription_expiration.inspect},"\
540
+ " coupon_restrictions: #{@coupon_restrictions.inspect}, currency_prices:"\
541
+ " #{@currency_prices.inspect}, additional_properties: #{get_additional_properties}>"
542
+ end
422
543
  end
423
544
  end
@@ -18,7 +18,7 @@ module AdvancedBilling
18
18
  attr_accessor :currency
19
19
 
20
20
  # TODO: Write general description for this method
21
- # @return [Integer]
21
+ # @return [Float]
22
22
  attr_accessor :price
23
23
 
24
24
  # TODO: Write general description for this method
@@ -47,20 +47,23 @@ module AdvancedBilling
47
47
 
48
48
  # An array for nullable fields
49
49
  def self.nullables
50
- []
50
+ %w[
51
+ id
52
+ price
53
+ ]
51
54
  end
52
55
 
53
56
  def initialize(id: SKIP, currency: SKIP, price: SKIP, coupon_id: SKIP,
54
57
  additional_properties: {})
55
- @id = id unless id == SKIP
56
- @currency = currency unless currency == SKIP
57
- @price = price unless price == SKIP
58
- @coupon_id = coupon_id unless coupon_id == SKIP
59
-
60
58
  # Add additional model properties to the instance.
61
59
  additional_properties.each do |_name, _value|
62
60
  instance_variable_set("@#{_name}", _value)
63
61
  end
62
+
63
+ @id = id unless id == SKIP
64
+ @currency = currency unless currency == SKIP
65
+ @price = price unless price == SKIP
66
+ @coupon_id = coupon_id unless coupon_id == SKIP
64
67
  end
65
68
 
66
69
  # Creates an instance of the object from a hash.
@@ -74,14 +77,29 @@ module AdvancedBilling
74
77
  coupon_id = hash.key?('coupon_id') ? hash['coupon_id'] : SKIP
75
78
 
76
79
  # Clean out expected properties from Hash.
77
- names.each_value { |k| hash.delete(k) }
80
+ additional_properties = hash.reject { |k, _| names.value?(k) }
78
81
 
79
82
  # Create object from extracted values.
80
83
  CouponCurrency.new(id: id,
81
84
  currency: currency,
82
85
  price: price,
83
86
  coupon_id: coupon_id,
84
- additional_properties: hash)
87
+ additional_properties: additional_properties)
88
+ end
89
+
90
+ # Provides a human-readable string representation of the object.
91
+ def to_s
92
+ class_name = self.class.name.split('::').last
93
+ "<#{class_name} id: #{@id}, currency: #{@currency}, price: #{@price}, coupon_id:"\
94
+ " #{@coupon_id}, additional_properties: #{get_additional_properties}>"
95
+ end
96
+
97
+ # Provides a debugging-friendly string with detailed object information.
98
+ def inspect
99
+ class_name = self.class.name.split('::').last
100
+ "<#{class_name} id: #{@id.inspect}, currency: #{@currency.inspect}, price:"\
101
+ " #{@price.inspect}, coupon_id: #{@coupon_id.inspect}, additional_properties:"\
102
+ " #{get_additional_properties}>"
85
103
  end
86
104
  end
87
105
  end
@@ -31,12 +31,12 @@ module AdvancedBilling
31
31
  end
32
32
 
33
33
  def initialize(currency_prices:, additional_properties: {})
34
- @currency_prices = currency_prices
35
-
36
34
  # Add additional model properties to the instance.
37
35
  additional_properties.each do |_name, _value|
38
36
  instance_variable_set("@#{_name}", _value)
39
37
  end
38
+
39
+ @currency_prices = currency_prices
40
40
  end
41
41
 
42
42
  # Creates an instance of the object from a hash.
@@ -56,11 +56,25 @@ module AdvancedBilling
56
56
  currency_prices = nil unless hash.key?('currency_prices')
57
57
 
58
58
  # Clean out expected properties from Hash.
59
- names.each_value { |k| hash.delete(k) }
59
+ additional_properties = hash.reject { |k, _| names.value?(k) }
60
60
 
61
61
  # Create object from extracted values.
62
62
  CouponCurrencyRequest.new(currency_prices: currency_prices,
63
- additional_properties: hash)
63
+ additional_properties: additional_properties)
64
+ end
65
+
66
+ # Provides a human-readable string representation of the object.
67
+ def to_s
68
+ class_name = self.class.name.split('::').last
69
+ "<#{class_name} currency_prices: #{@currency_prices}, additional_properties:"\
70
+ " #{get_additional_properties}>"
71
+ end
72
+
73
+ # Provides a debugging-friendly string with detailed object information.
74
+ def inspect
75
+ class_name = self.class.name.split('::').last
76
+ "<#{class_name} currency_prices: #{@currency_prices.inspect}, additional_properties:"\
77
+ " #{get_additional_properties}>"
64
78
  end
65
79
  end
66
80
  end
@@ -33,12 +33,12 @@ module AdvancedBilling
33
33
  end
34
34
 
35
35
  def initialize(currency_prices: SKIP, additional_properties: {})
36
- @currency_prices = currency_prices unless currency_prices == SKIP
37
-
38
36
  # Add additional model properties to the instance.
39
37
  additional_properties.each do |_name, _value|
40
38
  instance_variable_set("@#{_name}", _value)
41
39
  end
40
+
41
+ @currency_prices = currency_prices unless currency_prices == SKIP
42
42
  end
43
43
 
44
44
  # Creates an instance of the object from a hash.
@@ -58,11 +58,25 @@ module AdvancedBilling
58
58
  currency_prices = SKIP unless hash.key?('currency_prices')
59
59
 
60
60
  # Clean out expected properties from Hash.
61
- names.each_value { |k| hash.delete(k) }
61
+ additional_properties = hash.reject { |k, _| names.value?(k) }
62
62
 
63
63
  # Create object from extracted values.
64
64
  CouponCurrencyResponse.new(currency_prices: currency_prices,
65
- additional_properties: hash)
65
+ additional_properties: additional_properties)
66
+ end
67
+
68
+ # Provides a human-readable string representation of the object.
69
+ def to_s
70
+ class_name = self.class.name.split('::').last
71
+ "<#{class_name} currency_prices: #{@currency_prices}, additional_properties:"\
72
+ " #{get_additional_properties}>"
73
+ end
74
+
75
+ # Provides a debugging-friendly string with detailed object information.
76
+ def inspect
77
+ class_name = self.class.name.split('::').last
78
+ "<#{class_name} currency_prices: #{@currency_prices.inspect}, additional_properties:"\
79
+ " #{get_additional_properties}>"
66
80
  end
67
81
  end
68
82
  end