stripe 18.0.0 → 18.1.0.pre.beta.1

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 (487) hide show
  1. checksums.yaml +4 -4
  2. data/lib/stripe/api_requestor.rb +34 -0
  3. data/lib/stripe/api_version.rb +1 -2
  4. data/lib/stripe/errors.rb +63 -0
  5. data/lib/stripe/event_types.rb +209 -0
  6. data/lib/stripe/events/v2_core_account_closed_event.rb +44 -0
  7. data/lib/stripe/events/v2_core_account_created_event.rb +44 -0
  8. data/lib/stripe/events/v2_core_account_including_configuration_customer_capability_status_updated_event.rb +63 -0
  9. data/lib/stripe/events/v2_core_account_including_configuration_customer_updated_event.rb +44 -0
  10. data/lib/stripe/events/v2_core_account_including_configuration_merchant_capability_status_updated_event.rb +63 -0
  11. data/lib/stripe/events/v2_core_account_including_configuration_merchant_updated_event.rb +44 -0
  12. data/lib/stripe/events/v2_core_account_including_configuration_recipient_capability_status_updated_event.rb +63 -0
  13. data/lib/stripe/events/v2_core_account_including_configuration_recipient_updated_event.rb +44 -0
  14. data/lib/stripe/events/v2_core_account_including_configuration_storer_capability_status_updated_event.rb +63 -0
  15. data/lib/stripe/events/v2_core_account_including_configuration_storer_updated_event.rb +44 -0
  16. data/lib/stripe/events/v2_core_account_including_defaults_updated_event.rb +44 -0
  17. data/lib/stripe/events/v2_core_account_including_identity_updated_event.rb +44 -0
  18. data/lib/stripe/events/v2_core_account_including_requirements_updated_event.rb +44 -0
  19. data/lib/stripe/events/v2_core_account_link_returned_event.rb +42 -0
  20. data/lib/stripe/events/v2_core_account_person_created_event.rb +61 -0
  21. data/lib/stripe/events/v2_core_account_person_deleted_event.rb +61 -0
  22. data/lib/stripe/events/v2_core_account_person_updated_event.rb +61 -0
  23. data/lib/stripe/events/v2_core_account_updated_event.rb +44 -0
  24. data/lib/stripe/events/v2_core_health_event_generation_failure_resolved_event.rb +78 -0
  25. data/lib/stripe/events/v2_money_management_adjustment_created_event.rb +44 -0
  26. data/lib/stripe/events/v2_money_management_financial_account_created_event.rb +44 -0
  27. data/lib/stripe/events/v2_money_management_financial_account_updated_event.rb +44 -0
  28. data/lib/stripe/events/v2_money_management_financial_address_activated_event.rb +44 -0
  29. data/lib/stripe/events/v2_money_management_financial_address_failed_event.rb +44 -0
  30. data/lib/stripe/events/v2_money_management_inbound_transfer_available_event.rb +61 -0
  31. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_failed_event.rb +44 -0
  32. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_processing_event.rb +44 -0
  33. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_queued_event.rb +44 -0
  34. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_returned_event.rb +44 -0
  35. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_succeeded_event.rb +44 -0
  36. data/lib/stripe/events/v2_money_management_outbound_payment_canceled_event.rb +44 -0
  37. data/lib/stripe/events/v2_money_management_outbound_payment_created_event.rb +44 -0
  38. data/lib/stripe/events/v2_money_management_outbound_payment_failed_event.rb +44 -0
  39. data/lib/stripe/events/v2_money_management_outbound_payment_posted_event.rb +44 -0
  40. data/lib/stripe/events/v2_money_management_outbound_payment_returned_event.rb +44 -0
  41. data/lib/stripe/events/v2_money_management_outbound_payment_updated_event.rb +44 -0
  42. data/lib/stripe/events/v2_money_management_outbound_transfer_canceled_event.rb +44 -0
  43. data/lib/stripe/events/v2_money_management_outbound_transfer_created_event.rb +44 -0
  44. data/lib/stripe/events/v2_money_management_outbound_transfer_failed_event.rb +44 -0
  45. data/lib/stripe/events/v2_money_management_outbound_transfer_posted_event.rb +44 -0
  46. data/lib/stripe/events/v2_money_management_outbound_transfer_returned_event.rb +44 -0
  47. data/lib/stripe/events/v2_money_management_outbound_transfer_updated_event.rb +44 -0
  48. data/lib/stripe/events/v2_money_management_payout_method_updated_event.rb +44 -0
  49. data/lib/stripe/events/v2_money_management_received_credit_available_event.rb +61 -0
  50. data/lib/stripe/events/v2_money_management_received_credit_failed_event.rb +44 -0
  51. data/lib/stripe/events/v2_money_management_received_credit_returned_event.rb +44 -0
  52. data/lib/stripe/events/v2_money_management_received_credit_succeeded_event.rb +44 -0
  53. data/lib/stripe/events/v2_money_management_received_debit_canceled_event.rb +44 -0
  54. data/lib/stripe/events/v2_money_management_received_debit_failed_event.rb +44 -0
  55. data/lib/stripe/events/v2_money_management_received_debit_pending_event.rb +44 -0
  56. data/lib/stripe/events/v2_money_management_received_debit_succeeded_event.rb +44 -0
  57. data/lib/stripe/events/v2_money_management_received_debit_updated_event.rb +44 -0
  58. data/lib/stripe/events/v2_money_management_transaction_created_event.rb +61 -0
  59. data/lib/stripe/events/v2_money_management_transaction_updated_event.rb +44 -0
  60. data/lib/stripe/object_types.rb +54 -0
  61. data/lib/stripe/params/account_create_params.rb +317 -1
  62. data/lib/stripe/params/account_notice_list_params.rb +25 -0
  63. data/lib/stripe/params/account_notice_retrieve_params.rb +13 -0
  64. data/lib/stripe/params/account_notice_update_params.rb +36 -0
  65. data/lib/stripe/params/account_session_create_params.rb +226 -1
  66. data/lib/stripe/params/account_update_params.rb +279 -0
  67. data/lib/stripe/params/billing/analytics/meter_usage_retrieve_params.rb +65 -0
  68. data/lib/stripe/params/billing/credit_balance_summary_retrieve_params.rb +4 -1
  69. data/lib/stripe/params/billing/credit_balance_transaction_list_params.rb +4 -0
  70. data/lib/stripe/params/billing/credit_grant_create_params.rb +4 -0
  71. data/lib/stripe/params/billing/credit_grant_list_params.rb +4 -0
  72. data/lib/stripe/params/billing_portal/session_create_params.rb +4 -0
  73. data/lib/stripe/params/capital/financing_offer_list_params.rb +58 -0
  74. data/lib/stripe/params/capital/financing_offer_mark_delivered_params.rb +15 -0
  75. data/lib/stripe/params/capital/financing_offer_retrieve_params.rb +15 -0
  76. data/lib/stripe/params/capital/financing_summary_retrieve_params.rb +15 -0
  77. data/lib/stripe/params/capital/financing_transaction_list_params.rb +45 -0
  78. data/lib/stripe/params/capital/financing_transaction_retrieve_params.rb +15 -0
  79. data/lib/stripe/params/charge_capture_params.rb +1648 -0
  80. data/lib/stripe/params/charge_update_params.rb +1648 -0
  81. data/lib/stripe/params/checkout/session_create_params.rb +193 -3
  82. data/lib/stripe/params/checkout/session_list_params.rb +4 -0
  83. data/lib/stripe/params/checkout/session_update_params.rb +288 -1
  84. data/lib/stripe/params/confirmation_token_create_params.rb +97 -0
  85. data/lib/stripe/params/coupon_create_params.rb +17 -1
  86. data/lib/stripe/params/credit_note_list_params.rb +4 -0
  87. data/lib/stripe/params/customer_session_create_params.rb +36 -2
  88. data/lib/stripe/params/dispute_update_params.rb +10 -1
  89. data/lib/stripe/params/external_account_create_params.rb +134 -0
  90. data/lib/stripe/params/external_account_delete_params.rb +6 -0
  91. data/lib/stripe/params/external_account_list_params.rb +25 -0
  92. data/lib/stripe/params/external_account_retrieve_params.rb +13 -0
  93. data/lib/stripe/params/external_account_update_params.rb +91 -0
  94. data/lib/stripe/params/financial_connections/account_inferred_balance_list_params.rb +24 -0
  95. data/lib/stripe/params/financial_connections/account_list_params.rb +4 -1
  96. data/lib/stripe/params/financial_connections/institution_list_params.rb +24 -0
  97. data/lib/stripe/params/financial_connections/institution_retrieve_params.rb +15 -0
  98. data/lib/stripe/params/financial_connections/session_create_params.rb +34 -2
  99. data/lib/stripe/params/fx_quote_create_params.rb +73 -0
  100. data/lib/stripe/params/fx_quote_list_params.rb +22 -0
  101. data/lib/stripe/params/fx_quote_retrieve_params.rb +13 -0
  102. data/lib/stripe/params/identity/verification_session_create_params.rb +4 -0
  103. data/lib/stripe/params/identity/verification_session_list_params.rb +4 -0
  104. data/lib/stripe/params/invoice_add_lines_params.rb +33 -1
  105. data/lib/stripe/params/invoice_attach_payment_params.rb +43 -1
  106. data/lib/stripe/params/invoice_create_params.rb +112 -2
  107. data/lib/stripe/params/invoice_create_preview_params.rb +826 -9
  108. data/lib/stripe/params/invoice_item_create_params.rb +37 -1
  109. data/lib/stripe/params/invoice_item_list_params.rb +4 -0
  110. data/lib/stripe/params/invoice_item_update_params.rb +33 -1
  111. data/lib/stripe/params/invoice_line_item_update_params.rb +33 -1
  112. data/lib/stripe/params/invoice_list_params.rb +4 -0
  113. data/lib/stripe/params/invoice_update_lines_params.rb +33 -1
  114. data/lib/stripe/params/invoice_update_params.rb +108 -2
  115. data/lib/stripe/params/issuing/cardholder_create_params.rb +2 -1
  116. data/lib/stripe/params/issuing/credit_underwriting_record_correct_params.rb +163 -0
  117. data/lib/stripe/params/issuing/credit_underwriting_record_create_from_application_params.rb +50 -0
  118. data/lib/stripe/params/issuing/credit_underwriting_record_create_from_proactive_review_params.rb +128 -0
  119. data/lib/stripe/params/issuing/credit_underwriting_record_list_params.rb +24 -0
  120. data/lib/stripe/params/issuing/credit_underwriting_record_report_decision_params.rb +86 -0
  121. data/lib/stripe/params/issuing/credit_underwriting_record_retrieve_params.rb +15 -0
  122. data/lib/stripe/params/issuing/dispute_settlement_detail_list_params.rb +33 -0
  123. data/lib/stripe/params/issuing/dispute_settlement_detail_retrieve_params.rb +15 -0
  124. data/lib/stripe/params/issuing/fraud_liability_debit_list_params.rb +44 -0
  125. data/lib/stripe/params/issuing/fraud_liability_debit_retrieve_params.rb +15 -0
  126. data/lib/stripe/params/issuing/transaction_list_params.rb +4 -0
  127. data/lib/stripe/params/mandate_list_params.rb +39 -0
  128. data/lib/stripe/params/margin_create_params.rb +25 -0
  129. data/lib/stripe/params/margin_list_params.rb +25 -0
  130. data/lib/stripe/params/margin_retrieve_params.rb +13 -0
  131. data/lib/stripe/params/margin_update_params.rb +22 -0
  132. data/lib/stripe/params/order_cancel_params.rb +13 -0
  133. data/lib/stripe/params/order_create_params.rb +2061 -0
  134. data/lib/stripe/params/order_line_item_list_params.rb +22 -0
  135. data/lib/stripe/params/order_list_line_items_params.rb +22 -0
  136. data/lib/stripe/params/order_list_params.rb +25 -0
  137. data/lib/stripe/params/order_reopen_params.rb +13 -0
  138. data/lib/stripe/params/order_retrieve_params.rb +13 -0
  139. data/lib/stripe/params/order_submit_params.rb +16 -0
  140. data/lib/stripe/params/order_update_params.rb +2065 -0
  141. data/lib/stripe/params/payment_intent_capture_params.rb +1627 -1
  142. data/lib/stripe/params/payment_intent_confirm_params.rb +3134 -100
  143. data/lib/stripe/params/payment_intent_create_params.rb +3126 -84
  144. data/lib/stripe/params/payment_intent_decrement_authorization_params.rb +73 -0
  145. data/lib/stripe/params/payment_intent_increment_authorization_params.rb +21 -0
  146. data/lib/stripe/params/payment_intent_list_params.rb +4 -0
  147. data/lib/stripe/params/payment_intent_trigger_action_params.rb +27 -0
  148. data/lib/stripe/params/payment_intent_update_params.rb +3158 -85
  149. data/lib/stripe/params/payment_method_attach_params.rb +4 -1
  150. data/lib/stripe/params/payment_method_configuration_create_params.rb +126 -0
  151. data/lib/stripe/params/payment_method_configuration_update_params.rb +126 -0
  152. data/lib/stripe/params/payment_method_create_params.rb +97 -0
  153. data/lib/stripe/params/payment_method_list_params.rb +8 -0
  154. data/lib/stripe/params/payment_method_update_params.rb +19 -0
  155. data/lib/stripe/params/price_update_params.rb +19 -0
  156. data/lib/stripe/params/privacy/redaction_job_cancel_params.rb +15 -0
  157. data/lib/stripe/params/privacy/redaction_job_create_params.rb +67 -0
  158. data/lib/stripe/params/privacy/redaction_job_list_params.rb +27 -0
  159. data/lib/stripe/params/privacy/redaction_job_retrieve_params.rb +15 -0
  160. data/lib/stripe/params/privacy/redaction_job_run_params.rb +15 -0
  161. data/lib/stripe/params/privacy/redaction_job_update_params.rb +18 -0
  162. data/lib/stripe/params/privacy/redaction_job_validate_params.rb +15 -0
  163. data/lib/stripe/params/privacy/redaction_job_validation_error_list_params.rb +24 -0
  164. data/lib/stripe/params/promotion_code_create_params.rb +4 -0
  165. data/lib/stripe/params/promotion_code_list_params.rb +4 -0
  166. data/lib/stripe/params/quote_create_params.rb +805 -3
  167. data/lib/stripe/params/quote_line_list_params.rb +22 -0
  168. data/lib/stripe/params/quote_list_lines_params.rb +22 -0
  169. data/lib/stripe/params/quote_list_params.rb +8 -0
  170. data/lib/stripe/params/quote_list_preview_invoice_lines_params.rb +22 -0
  171. data/lib/stripe/params/quote_mark_draft_params.rb +13 -0
  172. data/lib/stripe/params/quote_mark_stale_params.rb +16 -0
  173. data/lib/stripe/params/quote_preview_invoice_list_params.rb +22 -0
  174. data/lib/stripe/params/quote_preview_subscription_schedule_list_params.rb +22 -0
  175. data/lib/stripe/params/quote_reestimate_params.rb +13 -0
  176. data/lib/stripe/params/quote_update_params.rb +813 -4
  177. data/lib/stripe/params/setup_intent_confirm_params.rb +225 -3
  178. data/lib/stripe/params/setup_intent_create_params.rb +231 -3
  179. data/lib/stripe/params/setup_intent_list_params.rb +4 -0
  180. data/lib/stripe/params/setup_intent_update_params.rb +231 -3
  181. data/lib/stripe/params/subscription_attach_cadence_params.rb +16 -0
  182. data/lib/stripe/params/subscription_create_params.rb +259 -5
  183. data/lib/stripe/params/subscription_item_create_params.rb +46 -2
  184. data/lib/stripe/params/subscription_item_update_params.rb +29 -1
  185. data/lib/stripe/params/subscription_list_params.rb +4 -0
  186. data/lib/stripe/params/subscription_schedule_amend_params.rb +570 -0
  187. data/lib/stripe/params/subscription_schedule_create_params.rb +167 -5
  188. data/lib/stripe/params/subscription_schedule_list_params.rb +4 -0
  189. data/lib/stripe/params/subscription_schedule_update_params.rb +163 -5
  190. data/lib/stripe/params/subscription_update_params.rb +238 -4
  191. data/lib/stripe/params/tax/form_list_params.rb +51 -0
  192. data/lib/stripe/params/tax/form_pdf_params.rb +15 -0
  193. data/lib/stripe/params/tax/form_retrieve_params.rb +15 -0
  194. data/lib/stripe/params/tax_id_create_params.rb +4 -1
  195. data/lib/stripe/params/tax_id_list_params.rb +4 -1
  196. data/lib/stripe/params/terminal/configuration_create_params.rb +13 -0
  197. data/lib/stripe/params/terminal/configuration_update_params.rb +13 -0
  198. data/lib/stripe/params/terminal/reader_collected_data_retrieve_params.rb +15 -0
  199. data/lib/stripe/params/test_helpers/confirmation_token_create_params.rb +97 -0
  200. data/lib/stripe/params/test_helpers/treasury/received_credit_create_params.rb +25 -1
  201. data/lib/stripe/params/test_helpers/treasury/received_debit_create_params.rb +25 -1
  202. data/lib/stripe/params/transfer_create_params.rb +4 -0
  203. data/lib/stripe/params/treasury/financial_account_create_params.rb +8 -1
  204. data/lib/stripe/params/treasury/financial_account_features_update_params.rb +4 -1
  205. data/lib/stripe/params/treasury/financial_account_update_features_params.rb +4 -1
  206. data/lib/stripe/params/treasury/financial_account_update_params.rb +8 -1
  207. data/lib/stripe/params/treasury/outbound_transfer_create_params.rb +24 -0
  208. data/lib/stripe/params/treasury/received_credit_create_params.rb +25 -1
  209. data/lib/stripe/params/treasury/received_debit_create_params.rb +25 -1
  210. data/lib/stripe/params/v2/billing/bill_setting_create_params.rb +74 -0
  211. data/lib/stripe/params/v2/billing/bill_setting_list_params.rb +21 -0
  212. data/lib/stripe/params/v2/billing/bill_setting_retrieve_params.rb +10 -0
  213. data/lib/stripe/params/v2/billing/bill_setting_update_params.rb +80 -0
  214. data/lib/stripe/params/v2/billing/bill_settings/version_list_params.rb +19 -0
  215. data/lib/stripe/params/v2/billing/bill_settings/version_retrieve_params.rb +12 -0
  216. data/lib/stripe/params/v2/billing/cadence_cancel_params.rb +10 -0
  217. data/lib/stripe/params/v2/billing/cadence_create_params.rb +253 -0
  218. data/lib/stripe/params/v2/billing/cadence_list_params.rb +43 -0
  219. data/lib/stripe/params/v2/billing/cadence_retrieve_params.rb +17 -0
  220. data/lib/stripe/params/v2/billing/cadence_update_params.rb +75 -0
  221. data/lib/stripe/params/v2/billing/collection_setting_create_params.rb +223 -0
  222. data/lib/stripe/params/v2/billing/collection_setting_list_params.rb +21 -0
  223. data/lib/stripe/params/v2/billing/collection_setting_retrieve_params.rb +10 -0
  224. data/lib/stripe/params/v2/billing/collection_setting_update_params.rb +229 -0
  225. data/lib/stripe/params/v2/billing/collection_settings/version_list_params.rb +19 -0
  226. data/lib/stripe/params/v2/billing/collection_settings/version_retrieve_params.rb +12 -0
  227. data/lib/stripe/params/v2/billing/profile_create_params.rb +37 -0
  228. data/lib/stripe/params/v2/billing/profile_list_params.rb +40 -0
  229. data/lib/stripe/params/v2/billing/profile_retrieve_params.rb +10 -0
  230. data/lib/stripe/params/v2/billing/profile_update_params.rb +35 -0
  231. data/lib/stripe/params/v2/core/account_close_params.rb +17 -0
  232. data/lib/stripe/params/v2/core/account_create_params.rb +2341 -0
  233. data/lib/stripe/params/v2/core/account_link_create_params.rb +101 -0
  234. data/lib/stripe/params/v2/core/account_list_params.rb +23 -0
  235. data/lib/stripe/params/v2/core/account_retrieve_params.rb +17 -0
  236. data/lib/stripe/params/v2/core/account_token_create_params.rb +1001 -0
  237. data/lib/stripe/params/v2/core/account_token_retrieve_params.rb +10 -0
  238. data/lib/stripe/params/v2/core/account_update_params.rb +2387 -0
  239. data/lib/stripe/params/v2/core/accounts/person_create_params.rb +497 -0
  240. data/lib/stripe/params/v2/core/accounts/person_delete_params.rb +12 -0
  241. data/lib/stripe/params/v2/core/accounts/person_list_params.rb +19 -0
  242. data/lib/stripe/params/v2/core/accounts/person_retrieve_params.rb +12 -0
  243. data/lib/stripe/params/v2/core/accounts/person_token_create_params.rb +487 -0
  244. data/lib/stripe/params/v2/core/accounts/person_token_retrieve_params.rb +12 -0
  245. data/lib/stripe/params/v2/core/accounts/person_update_params.rb +497 -0
  246. data/lib/stripe/params/v2/core/vault/gb_bank_account_acknowledge_confirmation_of_payee_params.rb +12 -0
  247. data/lib/stripe/params/v2/core/vault/gb_bank_account_archive_params.rb +12 -0
  248. data/lib/stripe/params/v2/core/vault/gb_bank_account_create_params.rb +50 -0
  249. data/lib/stripe/params/v2/core/vault/gb_bank_account_initiate_confirmation_of_payee_params.rb +22 -0
  250. data/lib/stripe/params/v2/core/vault/gb_bank_account_list_params.rb +19 -0
  251. data/lib/stripe/params/v2/core/vault/gb_bank_account_retrieve_params.rb +12 -0
  252. data/lib/stripe/params/v2/core/vault/us_bank_account_archive_params.rb +12 -0
  253. data/lib/stripe/params/v2/core/vault/us_bank_account_confirm_microdeposits_params.rb +22 -0
  254. data/lib/stripe/params/v2/core/vault/us_bank_account_create_params.rb +33 -0
  255. data/lib/stripe/params/v2/core/vault/us_bank_account_list_params.rb +22 -0
  256. data/lib/stripe/params/v2/core/vault/us_bank_account_retrieve_params.rb +12 -0
  257. data/lib/stripe/params/v2/core/vault/us_bank_account_send_microdeposits_params.rb +12 -0
  258. data/lib/stripe/params/v2/core/vault/us_bank_account_update_params.rb +22 -0
  259. data/lib/stripe/params/v2/money_management/adjustment_list_params.rb +48 -0
  260. data/lib/stripe/params/v2/money_management/adjustment_retrieve_params.rb +10 -0
  261. data/lib/stripe/params/v2/money_management/financial_account_close_params.rb +28 -0
  262. data/lib/stripe/params/v2/money_management/financial_account_create_params.rb +34 -0
  263. data/lib/stripe/params/v2/money_management/financial_account_list_params.rb +20 -0
  264. data/lib/stripe/params/v2/money_management/financial_account_retrieve_params.rb +10 -0
  265. data/lib/stripe/params/v2/money_management/financial_account_update_params.rb +20 -0
  266. data/lib/stripe/params/v2/money_management/financial_address_create_params.rb +20 -0
  267. data/lib/stripe/params/v2/money_management/financial_address_list_params.rb +23 -0
  268. data/lib/stripe/params/v2/money_management/financial_address_retrieve_params.rb +17 -0
  269. data/lib/stripe/params/v2/money_management/inbound_transfer_create_params.rb +50 -0
  270. data/lib/stripe/params/v2/money_management/inbound_transfer_list_params.rb +44 -0
  271. data/lib/stripe/params/v2/money_management/inbound_transfer_retrieve_params.rb +10 -0
  272. data/lib/stripe/params/v2/money_management/outbound_payment_cancel_params.rb +10 -0
  273. data/lib/stripe/params/v2/money_management/outbound_payment_create_params.rb +98 -0
  274. data/lib/stripe/params/v2/money_management/outbound_payment_list_params.rb +52 -0
  275. data/lib/stripe/params/v2/money_management/outbound_payment_quote_create_params.rb +67 -0
  276. data/lib/stripe/params/v2/money_management/outbound_payment_quote_retrieve_params.rb +10 -0
  277. data/lib/stripe/params/v2/money_management/outbound_payment_retrieve_params.rb +10 -0
  278. data/lib/stripe/params/v2/money_management/outbound_setup_intent_cancel_params.rb +10 -0
  279. data/lib/stripe/params/v2/money_management/outbound_setup_intent_create_params.rb +85 -0
  280. data/lib/stripe/params/v2/money_management/outbound_setup_intent_list_params.rb +17 -0
  281. data/lib/stripe/params/v2/money_management/outbound_setup_intent_retrieve_params.rb +10 -0
  282. data/lib/stripe/params/v2/money_management/outbound_setup_intent_update_params.rb +80 -0
  283. data/lib/stripe/params/v2/money_management/outbound_transfer_cancel_params.rb +10 -0
  284. data/lib/stripe/params/v2/money_management/outbound_transfer_create_params.rb +77 -0
  285. data/lib/stripe/params/v2/money_management/outbound_transfer_list_params.rb +48 -0
  286. data/lib/stripe/params/v2/money_management/outbound_transfer_retrieve_params.rb +10 -0
  287. data/lib/stripe/params/v2/money_management/payout_method_archive_params.rb +10 -0
  288. data/lib/stripe/params/v2/money_management/payout_method_list_params.rb +31 -0
  289. data/lib/stripe/params/v2/money_management/payout_method_retrieve_params.rb +10 -0
  290. data/lib/stripe/params/v2/money_management/payout_method_unarchive_params.rb +10 -0
  291. data/lib/stripe/params/v2/money_management/payout_methods_bank_account_spec_retrieve_params.rb +17 -0
  292. data/lib/stripe/params/v2/money_management/received_credit_list_params.rb +44 -0
  293. data/lib/stripe/params/v2/money_management/received_credit_retrieve_params.rb +10 -0
  294. data/lib/stripe/params/v2/money_management/received_debit_list_params.rb +17 -0
  295. data/lib/stripe/params/v2/money_management/received_debit_retrieve_params.rb +10 -0
  296. data/lib/stripe/params/v2/money_management/transaction_entry_list_params.rb +43 -0
  297. data/lib/stripe/params/v2/money_management/transaction_entry_retrieve_params.rb +10 -0
  298. data/lib/stripe/params/v2/money_management/transaction_list_params.rb +47 -0
  299. data/lib/stripe/params/v2/money_management/transaction_retrieve_params.rb +10 -0
  300. data/lib/stripe/params/v2/test_helpers/financial_address_credit_params.rb +23 -0
  301. data/lib/stripe/params/v2/test_helpers/financial_address_generate_microdeposits_params.rb +10 -0
  302. data/lib/stripe/params.rb +161 -0
  303. data/lib/stripe/resources/account.rb +184 -1
  304. data/lib/stripe/resources/account_notice.rb +94 -0
  305. data/lib/stripe/resources/account_session.rb +81 -0
  306. data/lib/stripe/resources/billing/analytics/meter_usage.rb +33 -0
  307. data/lib/stripe/resources/billing/analytics/meter_usage_row.rb +38 -0
  308. data/lib/stripe/resources/billing/credit_balance_summary.rb +2 -0
  309. data/lib/stripe/resources/billing/credit_grant.rb +2 -0
  310. data/lib/stripe/resources/billing_portal/session.rb +2 -0
  311. data/lib/stripe/resources/capital/financing_offer.rb +142 -0
  312. data/lib/stripe/resources/capital/financing_summary.rb +79 -0
  313. data/lib/stripe/resources/capital/financing_transaction.rb +99 -0
  314. data/lib/stripe/resources/card.rb +2 -0
  315. data/lib/stripe/resources/cash_balance.rb +2 -0
  316. data/lib/stripe/resources/charge.rb +237 -1
  317. data/lib/stripe/resources/checkout/session.rb +154 -4
  318. data/lib/stripe/resources/confirmation_token.rb +155 -0
  319. data/lib/stripe/resources/coupon.rb +26 -1
  320. data/lib/stripe/resources/credit_note.rb +2 -0
  321. data/lib/stripe/resources/credit_note_line_item.rb +18 -0
  322. data/lib/stripe/resources/customer.rb +2 -0
  323. data/lib/stripe/resources/customer_balance_transaction.rb +2 -0
  324. data/lib/stripe/resources/customer_cash_balance_transaction.rb +2 -0
  325. data/lib/stripe/resources/customer_session.rb +38 -0
  326. data/lib/stripe/resources/discount.rb +2 -0
  327. data/lib/stripe/resources/dispute.rb +22 -0
  328. data/lib/stripe/resources/event.rb +64 -1
  329. data/lib/stripe/resources/financial_connections/account.rb +27 -0
  330. data/lib/stripe/resources/financial_connections/account_inferred_balance.rb +35 -0
  331. data/lib/stripe/resources/financial_connections/institution.rb +127 -0
  332. data/lib/stripe/resources/financial_connections/session.rb +67 -1
  333. data/lib/stripe/resources/fx_quote.rb +147 -0
  334. data/lib/stripe/resources/identity/verification_session.rb +2 -0
  335. data/lib/stripe/resources/invoice.rb +152 -1
  336. data/lib/stripe/resources/invoice_item.rb +4 -0
  337. data/lib/stripe/resources/invoice_line_item.rb +40 -0
  338. data/lib/stripe/resources/issuing/credit_underwriting_record.rb +263 -0
  339. data/lib/stripe/resources/issuing/dispute_settlement_detail.rb +71 -0
  340. data/lib/stripe/resources/issuing/fraud_liability_debit.rb +51 -0
  341. data/lib/stripe/resources/issuing/settlement.rb +61 -0
  342. data/lib/stripe/resources/issuing/transaction.rb +2 -0
  343. data/lib/stripe/resources/line_item.rb +68 -1
  344. data/lib/stripe/resources/mandate.rb +71 -0
  345. data/lib/stripe/resources/margin.rb +64 -0
  346. data/lib/stripe/resources/order.rb +987 -0
  347. data/lib/stripe/resources/payment_attempt_record.rb +203 -1
  348. data/lib/stripe/resources/payment_intent.rb +749 -4
  349. data/lib/stripe/resources/payment_method.rb +157 -0
  350. data/lib/stripe/resources/payment_method_configuration.rb +204 -0
  351. data/lib/stripe/resources/payment_record.rb +203 -1
  352. data/lib/stripe/resources/price.rb +20 -0
  353. data/lib/stripe/resources/privacy/redaction_job.rb +187 -0
  354. data/lib/stripe/resources/privacy/redaction_job_validation_error.rb +49 -0
  355. data/lib/stripe/resources/promotion_code.rb +2 -0
  356. data/lib/stripe/resources/quote.rb +571 -2
  357. data/lib/stripe/resources/quote_line.rb +521 -0
  358. data/lib/stripe/resources/quote_preview_invoice.rb +1150 -0
  359. data/lib/stripe/resources/quote_preview_subscription_schedule.rb +732 -0
  360. data/lib/stripe/resources/refund.rb +18 -0
  361. data/lib/stripe/resources/setup_attempt.rb +63 -0
  362. data/lib/stripe/resources/setup_intent.rb +132 -1
  363. data/lib/stripe/resources/source.rb +38 -0
  364. data/lib/stripe/resources/subscription.rb +232 -0
  365. data/lib/stripe/resources/subscription_item.rb +20 -1
  366. data/lib/stripe/resources/subscription_schedule.rb +198 -3
  367. data/lib/stripe/resources/tax/form.rb +264 -0
  368. data/lib/stripe/resources/tax_id.rb +4 -0
  369. data/lib/stripe/resources/terminal/configuration.rb +16 -0
  370. data/lib/stripe/resources/terminal/reader.rb +8 -0
  371. data/lib/stripe/resources/terminal/reader_collected_data.rb +47 -0
  372. data/lib/stripe/resources/transfer.rb +2 -0
  373. data/lib/stripe/resources/treasury/financial_account.rb +2 -0
  374. data/lib/stripe/resources/treasury/financial_account_features.rb +2 -0
  375. data/lib/stripe/resources/treasury/outbound_transfer.rb +30 -0
  376. data/lib/stripe/resources/treasury/received_credit.rb +30 -0
  377. data/lib/stripe/resources/treasury/received_debit.rb +32 -0
  378. data/lib/stripe/resources/v2/billing/bill_setting.rb +102 -0
  379. data/lib/stripe/resources/v2/billing/bill_setting_version.rb +90 -0
  380. data/lib/stripe/resources/v2/billing/cadence.rb +609 -0
  381. data/lib/stripe/resources/v2/billing/collection_setting.rb +274 -0
  382. data/lib/stripe/resources/v2/billing/collection_setting_version.rb +262 -0
  383. data/lib/stripe/resources/v2/billing/profile.rb +46 -0
  384. data/lib/stripe/resources/v2/core/account.rb +4209 -0
  385. data/lib/stripe/resources/v2/core/account_link.rb +123 -0
  386. data/lib/stripe/resources/v2/core/account_person.rb +477 -0
  387. data/lib/stripe/resources/v2/core/account_person_token.rb +37 -0
  388. data/lib/stripe/resources/v2/core/account_token.rb +37 -0
  389. data/lib/stripe/resources/v2/core/event.rb +2 -0
  390. data/lib/stripe/resources/v2/core/vault/gb_bank_account.rb +114 -0
  391. data/lib/stripe/resources/v2/core/vault/us_bank_account.rb +81 -0
  392. data/lib/stripe/resources/v2/financial_address_credit_simulation.rb +28 -0
  393. data/lib/stripe/resources/v2/financial_address_generated_microdeposits.rb +30 -0
  394. data/lib/stripe/resources/v2/money_management/adjustment.rb +67 -0
  395. data/lib/stripe/resources/v2/money_management/financial_account.rb +140 -0
  396. data/lib/stripe/resources/v2/money_management/financial_address.rb +132 -0
  397. data/lib/stripe/resources/v2/money_management/inbound_transfer.rb +148 -0
  398. data/lib/stripe/resources/v2/money_management/outbound_payment.rb +217 -0
  399. data/lib/stripe/resources/v2/money_management/outbound_payment_quote.rb +144 -0
  400. data/lib/stripe/resources/v2/money_management/outbound_setup_intent.rb +69 -0
  401. data/lib/stripe/resources/v2/money_management/outbound_transfer.rb +196 -0
  402. data/lib/stripe/resources/v2/money_management/payout_method.rb +109 -0
  403. data/lib/stripe/resources/v2/money_management/payout_methods_bank_account_spec.rb +81 -0
  404. data/lib/stripe/resources/v2/money_management/received_credit.rb +228 -0
  405. data/lib/stripe/resources/v2/money_management/received_debit.rb +136 -0
  406. data/lib/stripe/resources/v2/money_management/transaction.rb +116 -0
  407. data/lib/stripe/resources/v2/money_management/transaction_entry.rb +105 -0
  408. data/lib/stripe/resources.rb +105 -0
  409. data/lib/stripe/services/account_notice_service.rb +39 -0
  410. data/lib/stripe/services/billing/analytics/meter_usage_service.rb +21 -0
  411. data/lib/stripe/services/billing/analytics_service.rb +15 -0
  412. data/lib/stripe/services/billing_service.rb +2 -1
  413. data/lib/stripe/services/capital/financing_offer_service.rb +42 -0
  414. data/lib/stripe/services/capital/financing_summary_service.rb +19 -0
  415. data/lib/stripe/services/capital/financing_transaction_service.rb +31 -0
  416. data/lib/stripe/services/capital_service.rb +15 -0
  417. data/lib/stripe/services/external_account_service.rb +68 -0
  418. data/lib/stripe/services/financial_connections/account_inferred_balance_service.rb +19 -0
  419. data/lib/stripe/services/financial_connections/account_service.rb +3 -1
  420. data/lib/stripe/services/financial_connections/institution_service.rb +30 -0
  421. data/lib/stripe/services/financial_connections_service.rb +2 -1
  422. data/lib/stripe/services/fx_quote_service.rb +27 -0
  423. data/lib/stripe/services/issuing/credit_underwriting_record_service.rb +74 -0
  424. data/lib/stripe/services/issuing/dispute_settlement_detail_service.rb +30 -0
  425. data/lib/stripe/services/issuing/fraud_liability_debit_service.rb +30 -0
  426. data/lib/stripe/services/issuing_service.rb +5 -1
  427. data/lib/stripe/services/mandate_service.rb +5 -0
  428. data/lib/stripe/services/margin_service.rb +50 -0
  429. data/lib/stripe/services/order_line_item_service.rb +17 -0
  430. data/lib/stripe/services/order_service.rb +78 -0
  431. data/lib/stripe/services/payment_intent_service.rb +37 -0
  432. data/lib/stripe/services/privacy/redaction_job_service.rb +104 -0
  433. data/lib/stripe/services/privacy/redaction_job_validation_error_service.rb +19 -0
  434. data/lib/stripe/services/privacy_service.rb +13 -0
  435. data/lib/stripe/services/quote_line_service.rb +17 -0
  436. data/lib/stripe/services/quote_preview_invoice_service.rb +17 -0
  437. data/lib/stripe/services/quote_preview_subscription_schedule_service.rb +17 -0
  438. data/lib/stripe/services/quote_service.rb +49 -1
  439. data/lib/stripe/services/subscription_schedule_service.rb +11 -0
  440. data/lib/stripe/services/subscription_service.rb +11 -0
  441. data/lib/stripe/services/tax/form_service.rb +37 -0
  442. data/lib/stripe/services/tax_service.rb +2 -1
  443. data/lib/stripe/services/terminal/reader_collected_data_service.rb +19 -0
  444. data/lib/stripe/services/terminal_service.rb +2 -1
  445. data/lib/stripe/services/v1_services.rb +8 -1
  446. data/lib/stripe/services/v2/billing/bill_setting_service.rb +61 -0
  447. data/lib/stripe/services/v2/billing/bill_settings/version_service.rb +34 -0
  448. data/lib/stripe/services/v2/billing/cadence_service.rb +65 -0
  449. data/lib/stripe/services/v2/billing/collection_setting_service.rb +61 -0
  450. data/lib/stripe/services/v2/billing/collection_settings/version_service.rb +34 -0
  451. data/lib/stripe/services/v2/billing/profile_service.rb +54 -0
  452. data/lib/stripe/services/v2/billing_service.rb +5 -1
  453. data/lib/stripe/services/v2/core/account_link_service.rb +21 -0
  454. data/lib/stripe/services/v2/core/account_service.rb +77 -0
  455. data/lib/stripe/services/v2/core/account_token_service.rb +32 -0
  456. data/lib/stripe/services/v2/core/accounts/person_service.rb +67 -0
  457. data/lib/stripe/services/v2/core/accounts/person_token_service.rb +34 -0
  458. data/lib/stripe/services/v2/core/vault/gb_bank_account_service.rb +85 -0
  459. data/lib/stripe/services/v2/core/vault/us_bank_account_service.rb +101 -0
  460. data/lib/stripe/services/v2/core/vault_service.rb +18 -0
  461. data/lib/stripe/services/v2/core_service.rb +5 -1
  462. data/lib/stripe/services/v2/money_management/adjustment_service.rb +32 -0
  463. data/lib/stripe/services/v2/money_management/financial_account_service.rb +70 -0
  464. data/lib/stripe/services/v2/money_management/financial_address_service.rb +46 -0
  465. data/lib/stripe/services/v2/money_management/inbound_transfer_service.rb +45 -0
  466. data/lib/stripe/services/v2/money_management/outbound_payment_quote_service.rb +34 -0
  467. data/lib/stripe/services/v2/money_management/outbound_payment_service.rb +62 -0
  468. data/lib/stripe/services/v2/money_management/outbound_setup_intent_service.rb +73 -0
  469. data/lib/stripe/services/v2/money_management/outbound_transfer_service.rb +60 -0
  470. data/lib/stripe/services/v2/money_management/payout_method_service.rb +63 -0
  471. data/lib/stripe/services/v2/money_management/payout_methods_bank_account_spec_service.rb +23 -0
  472. data/lib/stripe/services/v2/money_management/received_credit_service.rb +32 -0
  473. data/lib/stripe/services/v2/money_management/received_debit_service.rb +32 -0
  474. data/lib/stripe/services/v2/money_management/transaction_entry_service.rb +32 -0
  475. data/lib/stripe/services/v2/money_management/transaction_service.rb +32 -0
  476. data/lib/stripe/services/v2/money_management_service.rb +31 -0
  477. data/lib/stripe/services/v2/test_helper_service.rb +15 -0
  478. data/lib/stripe/services/v2/test_helpers/financial_address_service.rb +36 -0
  479. data/lib/stripe/services/v2_services.rb +3 -1
  480. data/lib/stripe/services.rb +56 -0
  481. data/lib/stripe/stripe_configuration.rb +3 -1
  482. data/lib/stripe/stripe_object.rb +1 -1
  483. data/lib/stripe/util.rb +7 -1
  484. data/lib/stripe/version.rb +1 -1
  485. data/lib/stripe.rb +53 -0
  486. data/rbi/stripe.rbi +156300 -79954
  487. metadata +325 -3
@@ -199,21 +199,1678 @@ module Stripe
199
199
  end
200
200
  end
201
201
 
202
+ class MandateData < ::Stripe::RequestParams
203
+ class CustomerAcceptance < ::Stripe::RequestParams
204
+ class Online < ::Stripe::RequestParams
205
+ # The IP address from which the Mandate was accepted by the customer.
206
+ attr_accessor :ip_address
207
+ # The user agent of the browser from which the Mandate was accepted by the customer.
208
+ attr_accessor :user_agent
209
+
210
+ def initialize(ip_address: nil, user_agent: nil)
211
+ @ip_address = ip_address
212
+ @user_agent = user_agent
213
+ end
214
+ end
215
+ # If this is a Mandate accepted online, this hash contains details about the online acceptance.
216
+ attr_accessor :online
217
+ # The type of customer acceptance information included with the Mandate.
218
+ attr_accessor :type
219
+
220
+ def initialize(online: nil, type: nil)
221
+ @online = online
222
+ @type = type
223
+ end
224
+ end
225
+ # This hash contains details about the customer acceptance of the Mandate.
226
+ attr_accessor :customer_acceptance
227
+
228
+ def initialize(customer_acceptance: nil)
229
+ @customer_acceptance = customer_acceptance
230
+ end
231
+ end
232
+
202
233
  class PaymentDetails < ::Stripe::RequestParams
234
+ class CarRental < ::Stripe::RequestParams
235
+ class Affiliate < ::Stripe::RequestParams
236
+ # The name of the affiliate that originated the purchase.
237
+ attr_accessor :name
238
+
239
+ def initialize(name: nil)
240
+ @name = name
241
+ end
242
+ end
243
+
244
+ class Delivery < ::Stripe::RequestParams
245
+ class Recipient < ::Stripe::RequestParams
246
+ # The email of the recipient the ticket is delivered to.
247
+ attr_accessor :email
248
+ # The name of the recipient the ticket is delivered to.
249
+ attr_accessor :name
250
+ # The phone number of the recipient the ticket is delivered to.
251
+ attr_accessor :phone
252
+
253
+ def initialize(email: nil, name: nil, phone: nil)
254
+ @email = email
255
+ @name = name
256
+ @phone = phone
257
+ end
258
+ end
259
+ # The delivery method for the payment
260
+ attr_accessor :mode
261
+ # Details of the recipient.
262
+ attr_accessor :recipient
263
+
264
+ def initialize(mode: nil, recipient: nil)
265
+ @mode = mode
266
+ @recipient = recipient
267
+ end
268
+ end
269
+
270
+ class Distance < ::Stripe::RequestParams
271
+ # Distance traveled.
272
+ attr_accessor :amount
273
+ # Unit of measurement for the distance traveled. One of `miles` or `kilometers`.
274
+ attr_accessor :unit
275
+
276
+ def initialize(amount: nil, unit: nil)
277
+ @amount = amount
278
+ @unit = unit
279
+ end
280
+ end
281
+
282
+ class Driver < ::Stripe::RequestParams
283
+ # Driver's identification number.
284
+ attr_accessor :driver_identification_number
285
+ # Driver's tax number.
286
+ attr_accessor :driver_tax_number
287
+ # Full name of the person or entity on the car reservation.
288
+ attr_accessor :name
289
+
290
+ def initialize(driver_identification_number: nil, driver_tax_number: nil, name: nil)
291
+ @driver_identification_number = driver_identification_number
292
+ @driver_tax_number = driver_tax_number
293
+ @name = name
294
+ end
295
+ end
296
+
297
+ class PickupAddress < ::Stripe::RequestParams
298
+ # City, district, suburb, town, or village.
299
+ attr_accessor :city
300
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
301
+ attr_accessor :country
302
+ # Address line 1, such as the street, PO Box, or company name.
303
+ attr_accessor :line1
304
+ # Address line 2, such as the apartment, suite, unit, or building.
305
+ attr_accessor :line2
306
+ # ZIP or postal code.
307
+ attr_accessor :postal_code
308
+ # State, county, province, or region.
309
+ attr_accessor :state
310
+
311
+ def initialize(
312
+ city: nil,
313
+ country: nil,
314
+ line1: nil,
315
+ line2: nil,
316
+ postal_code: nil,
317
+ state: nil
318
+ )
319
+ @city = city
320
+ @country = country
321
+ @line1 = line1
322
+ @line2 = line2
323
+ @postal_code = postal_code
324
+ @state = state
325
+ end
326
+ end
327
+
328
+ class ReturnAddress < ::Stripe::RequestParams
329
+ # City, district, suburb, town, or village.
330
+ attr_accessor :city
331
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
332
+ attr_accessor :country
333
+ # Address line 1, such as the street, PO Box, or company name.
334
+ attr_accessor :line1
335
+ # Address line 2, such as the apartment, suite, unit, or building.
336
+ attr_accessor :line2
337
+ # ZIP or postal code.
338
+ attr_accessor :postal_code
339
+ # State, county, province, or region.
340
+ attr_accessor :state
341
+
342
+ def initialize(
343
+ city: nil,
344
+ country: nil,
345
+ line1: nil,
346
+ line2: nil,
347
+ postal_code: nil,
348
+ state: nil
349
+ )
350
+ @city = city
351
+ @country = country
352
+ @line1 = line1
353
+ @line2 = line2
354
+ @postal_code = postal_code
355
+ @state = state
356
+ end
357
+ end
358
+ # Affiliate details for this purchase.
359
+ attr_accessor :affiliate
360
+ # The booking number associated with the car rental.
361
+ attr_accessor :booking_number
362
+ # Class code of the car.
363
+ attr_accessor :car_class_code
364
+ # Make of the car.
365
+ attr_accessor :car_make
366
+ # Model of the car.
367
+ attr_accessor :car_model
368
+ # The name of the rental car company.
369
+ attr_accessor :company
370
+ # The customer service phone number of the car rental company.
371
+ attr_accessor :customer_service_phone_number
372
+ # Number of days the car is being rented.
373
+ attr_accessor :days_rented
374
+ # Delivery details for this purchase.
375
+ attr_accessor :delivery
376
+ # The details of the distance traveled during the rental period.
377
+ attr_accessor :distance
378
+ # The details of the passengers in the travel reservation
379
+ attr_accessor :drivers
380
+ # List of additional charges being billed.
381
+ attr_accessor :extra_charges
382
+ # Indicates if the customer did not keep nor cancel their booking.
383
+ attr_accessor :no_show
384
+ # Car pick-up address.
385
+ attr_accessor :pickup_address
386
+ # Car pick-up time. Measured in seconds since the Unix epoch.
387
+ attr_accessor :pickup_at
388
+ # Name of the pickup location.
389
+ attr_accessor :pickup_location_name
390
+ # Rental rate.
391
+ attr_accessor :rate_amount
392
+ # The frequency at which the rate amount is applied. One of `day`, `week` or `month`
393
+ attr_accessor :rate_interval
394
+ # The name of the person or entity renting the car.
395
+ attr_accessor :renter_name
396
+ # Car return address.
397
+ attr_accessor :return_address
398
+ # Car return time. Measured in seconds since the Unix epoch.
399
+ attr_accessor :return_at
400
+ # Name of the return location.
401
+ attr_accessor :return_location_name
402
+ # Indicates whether the goods or services are tax-exempt or tax is not collected.
403
+ attr_accessor :tax_exempt
404
+ # The vehicle identification number.
405
+ attr_accessor :vehicle_identification_number
406
+
407
+ def initialize(
408
+ affiliate: nil,
409
+ booking_number: nil,
410
+ car_class_code: nil,
411
+ car_make: nil,
412
+ car_model: nil,
413
+ company: nil,
414
+ customer_service_phone_number: nil,
415
+ days_rented: nil,
416
+ delivery: nil,
417
+ distance: nil,
418
+ drivers: nil,
419
+ extra_charges: nil,
420
+ no_show: nil,
421
+ pickup_address: nil,
422
+ pickup_at: nil,
423
+ pickup_location_name: nil,
424
+ rate_amount: nil,
425
+ rate_interval: nil,
426
+ renter_name: nil,
427
+ return_address: nil,
428
+ return_at: nil,
429
+ return_location_name: nil,
430
+ tax_exempt: nil,
431
+ vehicle_identification_number: nil
432
+ )
433
+ @affiliate = affiliate
434
+ @booking_number = booking_number
435
+ @car_class_code = car_class_code
436
+ @car_make = car_make
437
+ @car_model = car_model
438
+ @company = company
439
+ @customer_service_phone_number = customer_service_phone_number
440
+ @days_rented = days_rented
441
+ @delivery = delivery
442
+ @distance = distance
443
+ @drivers = drivers
444
+ @extra_charges = extra_charges
445
+ @no_show = no_show
446
+ @pickup_address = pickup_address
447
+ @pickup_at = pickup_at
448
+ @pickup_location_name = pickup_location_name
449
+ @rate_amount = rate_amount
450
+ @rate_interval = rate_interval
451
+ @renter_name = renter_name
452
+ @return_address = return_address
453
+ @return_at = return_at
454
+ @return_location_name = return_location_name
455
+ @tax_exempt = tax_exempt
456
+ @vehicle_identification_number = vehicle_identification_number
457
+ end
458
+ end
459
+
460
+ class CarRentalDatum < ::Stripe::RequestParams
461
+ class Affiliate < ::Stripe::RequestParams
462
+ # Affiliate partner code.
463
+ attr_accessor :code
464
+ # Name of affiliate partner.
465
+ attr_accessor :name
466
+
467
+ def initialize(code: nil, name: nil)
468
+ @code = code
469
+ @name = name
470
+ end
471
+ end
472
+
473
+ class Distance < ::Stripe::RequestParams
474
+ # Distance traveled.
475
+ attr_accessor :amount
476
+ # Unit of measurement for the distance traveled. One of `miles` or `kilometers`.
477
+ attr_accessor :unit
478
+
479
+ def initialize(amount: nil, unit: nil)
480
+ @amount = amount
481
+ @unit = unit
482
+ end
483
+ end
484
+
485
+ class Driver < ::Stripe::RequestParams
486
+ class DateOfBirth < ::Stripe::RequestParams
487
+ # Day of birth (1-31).
488
+ attr_accessor :day
489
+ # Month of birth (1-12).
490
+ attr_accessor :month
491
+ # Year of birth (must be greater than 1900).
492
+ attr_accessor :year
493
+
494
+ def initialize(day: nil, month: nil, year: nil)
495
+ @day = day
496
+ @month = month
497
+ @year = year
498
+ end
499
+ end
500
+ # Driver's date of birth.
501
+ attr_accessor :date_of_birth
502
+ # Driver's identification number.
503
+ attr_accessor :driver_identification_number
504
+ # Driver's tax number.
505
+ attr_accessor :driver_tax_number
506
+ # Driver's full name.
507
+ attr_accessor :name
508
+
509
+ def initialize(
510
+ date_of_birth: nil,
511
+ driver_identification_number: nil,
512
+ driver_tax_number: nil,
513
+ name: nil
514
+ )
515
+ @date_of_birth = date_of_birth
516
+ @driver_identification_number = driver_identification_number
517
+ @driver_tax_number = driver_tax_number
518
+ @name = name
519
+ end
520
+ end
521
+
522
+ class DropOff < ::Stripe::RequestParams
523
+ class Address < ::Stripe::RequestParams
524
+ # City, district, suburb, town, or village.
525
+ attr_accessor :city
526
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
527
+ attr_accessor :country
528
+ # Address line 1, such as the street, PO Box, or company name.
529
+ attr_accessor :line1
530
+ # Address line 2, such as the apartment, suite, unit, or building.
531
+ attr_accessor :line2
532
+ # ZIP or postal code.
533
+ attr_accessor :postal_code
534
+ # State, county, province, or region.
535
+ attr_accessor :state
536
+
537
+ def initialize(
538
+ city: nil,
539
+ country: nil,
540
+ line1: nil,
541
+ line2: nil,
542
+ postal_code: nil,
543
+ state: nil
544
+ )
545
+ @city = city
546
+ @country = country
547
+ @line1 = line1
548
+ @line2 = line2
549
+ @postal_code = postal_code
550
+ @state = state
551
+ end
552
+ end
553
+ # Address of the rental location.
554
+ attr_accessor :address
555
+ # Location name.
556
+ attr_accessor :location_name
557
+ # Timestamp for the location.
558
+ attr_accessor :time
559
+
560
+ def initialize(address: nil, location_name: nil, time: nil)
561
+ @address = address
562
+ @location_name = location_name
563
+ @time = time
564
+ end
565
+ end
566
+
567
+ class Insurance < ::Stripe::RequestParams
568
+ # Amount of the insurance coverage in cents.
569
+ attr_accessor :amount
570
+ # Currency of the insurance amount.
571
+ attr_accessor :currency
572
+ # Name of the insurance company.
573
+ attr_accessor :insurance_company_name
574
+ # Type of insurance coverage.
575
+ attr_accessor :insurance_type
576
+
577
+ def initialize(
578
+ amount: nil,
579
+ currency: nil,
580
+ insurance_company_name: nil,
581
+ insurance_type: nil
582
+ )
583
+ @amount = amount
584
+ @currency = currency
585
+ @insurance_company_name = insurance_company_name
586
+ @insurance_type = insurance_type
587
+ end
588
+ end
589
+
590
+ class Pickup < ::Stripe::RequestParams
591
+ class Address < ::Stripe::RequestParams
592
+ # City, district, suburb, town, or village.
593
+ attr_accessor :city
594
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
595
+ attr_accessor :country
596
+ # Address line 1, such as the street, PO Box, or company name.
597
+ attr_accessor :line1
598
+ # Address line 2, such as the apartment, suite, unit, or building.
599
+ attr_accessor :line2
600
+ # ZIP or postal code.
601
+ attr_accessor :postal_code
602
+ # State, county, province, or region.
603
+ attr_accessor :state
604
+
605
+ def initialize(
606
+ city: nil,
607
+ country: nil,
608
+ line1: nil,
609
+ line2: nil,
610
+ postal_code: nil,
611
+ state: nil
612
+ )
613
+ @city = city
614
+ @country = country
615
+ @line1 = line1
616
+ @line2 = line2
617
+ @postal_code = postal_code
618
+ @state = state
619
+ end
620
+ end
621
+ # Address of the rental location.
622
+ attr_accessor :address
623
+ # Location name.
624
+ attr_accessor :location_name
625
+ # Timestamp for the location.
626
+ attr_accessor :time
627
+
628
+ def initialize(address: nil, location_name: nil, time: nil)
629
+ @address = address
630
+ @location_name = location_name
631
+ @time = time
632
+ end
633
+ end
634
+
635
+ class Total < ::Stripe::RequestParams
636
+ class Discounts < ::Stripe::RequestParams
637
+ # Corporate client discount code.
638
+ attr_accessor :corporate_client_code
639
+ # Coupon code applied to the rental.
640
+ attr_accessor :coupon
641
+ # Maximum number of free miles or kilometers included.
642
+ attr_accessor :maximum_free_miles_or_kilometers
643
+
644
+ def initialize(
645
+ corporate_client_code: nil,
646
+ coupon: nil,
647
+ maximum_free_miles_or_kilometers: nil
648
+ )
649
+ @corporate_client_code = corporate_client_code
650
+ @coupon = coupon
651
+ @maximum_free_miles_or_kilometers = maximum_free_miles_or_kilometers
652
+ end
653
+ end
654
+
655
+ class ExtraCharge < ::Stripe::RequestParams
656
+ # Amount of the extra charge in cents.
657
+ attr_accessor :amount
658
+ # Type of extra charge.
659
+ attr_accessor :type
660
+
661
+ def initialize(amount: nil, type: nil)
662
+ @amount = amount
663
+ @type = type
664
+ end
665
+ end
666
+
667
+ class Tax < ::Stripe::RequestParams
668
+ class Tax < ::Stripe::RequestParams
669
+ # Tax amount.
670
+ attr_accessor :amount
671
+ # Tax rate applied.
672
+ attr_accessor :rate
673
+ # Type of tax applied.
674
+ attr_accessor :type
675
+
676
+ def initialize(amount: nil, rate: nil, type: nil)
677
+ @amount = amount
678
+ @rate = rate
679
+ @type = type
680
+ end
681
+ end
682
+ # Indicates if the transaction is tax exempt.
683
+ attr_accessor :tax_exempt_indicator
684
+ # Array of tax details.
685
+ attr_accessor :taxes
686
+
687
+ def initialize(tax_exempt_indicator: nil, taxes: nil)
688
+ @tax_exempt_indicator = tax_exempt_indicator
689
+ @taxes = taxes
690
+ end
691
+ end
692
+ # Total amount in cents.
693
+ attr_accessor :amount
694
+ # Currency of the amount.
695
+ attr_accessor :currency
696
+ # Discount details for the rental.
697
+ attr_accessor :discounts
698
+ # Additional charges for the rental.
699
+ attr_accessor :extra_charges
700
+ # Rate per unit for the rental.
701
+ attr_accessor :rate_per_unit
702
+ # Unit of measurement for the rate.
703
+ attr_accessor :rate_unit
704
+ # Tax breakdown for the rental.
705
+ attr_accessor :tax
706
+
707
+ def initialize(
708
+ amount: nil,
709
+ currency: nil,
710
+ discounts: nil,
711
+ extra_charges: nil,
712
+ rate_per_unit: nil,
713
+ rate_unit: nil,
714
+ tax: nil
715
+ )
716
+ @amount = amount
717
+ @currency = currency
718
+ @discounts = discounts
719
+ @extra_charges = extra_charges
720
+ @rate_per_unit = rate_per_unit
721
+ @rate_unit = rate_unit
722
+ @tax = tax
723
+ end
724
+ end
725
+
726
+ class Vehicle < ::Stripe::RequestParams
727
+ # Make of the rental vehicle.
728
+ attr_accessor :make
729
+ # Model of the rental vehicle.
730
+ attr_accessor :model
731
+ # Odometer reading at the time of rental.
732
+ attr_accessor :odometer
733
+ # Type of the rental vehicle.
734
+ attr_accessor :type
735
+ # Class of the rental vehicle.
736
+ attr_accessor :vehicle_class
737
+ # Vehicle identification number (VIN).
738
+ attr_accessor :vehicle_identification_number
739
+
740
+ def initialize(
741
+ make: nil,
742
+ model: nil,
743
+ odometer: nil,
744
+ type: nil,
745
+ vehicle_class: nil,
746
+ vehicle_identification_number: nil
747
+ )
748
+ @make = make
749
+ @model = model
750
+ @odometer = odometer
751
+ @type = type
752
+ @vehicle_class = vehicle_class
753
+ @vehicle_identification_number = vehicle_identification_number
754
+ end
755
+ end
756
+ # Affiliate (such as travel agency) details for the rental.
757
+ attr_accessor :affiliate
758
+ # Booking confirmation number for the car rental.
759
+ attr_accessor :booking_number
760
+ # Name of the car rental company.
761
+ attr_accessor :carrier_name
762
+ # Customer service phone number for the car rental company.
763
+ attr_accessor :customer_service_phone_number
764
+ # Number of days the car is being rented.
765
+ attr_accessor :days_rented
766
+ # Distance details for the rental.
767
+ attr_accessor :distance
768
+ # List of drivers for the rental.
769
+ attr_accessor :drivers
770
+ # Drop-off location details.
771
+ attr_accessor :drop_off
772
+ # Insurance details for the rental.
773
+ attr_accessor :insurances
774
+ # Indicates if the customer was a no-show.
775
+ attr_accessor :no_show_indicator
776
+ # Pickup location details.
777
+ attr_accessor :pickup
778
+ # Name of the person renting the vehicle.
779
+ attr_accessor :renter_name
780
+ # Total cost breakdown for the rental.
781
+ attr_accessor :total
782
+ # Vehicle details for the rental.
783
+ attr_accessor :vehicle
784
+
785
+ def initialize(
786
+ affiliate: nil,
787
+ booking_number: nil,
788
+ carrier_name: nil,
789
+ customer_service_phone_number: nil,
790
+ days_rented: nil,
791
+ distance: nil,
792
+ drivers: nil,
793
+ drop_off: nil,
794
+ insurances: nil,
795
+ no_show_indicator: nil,
796
+ pickup: nil,
797
+ renter_name: nil,
798
+ total: nil,
799
+ vehicle: nil
800
+ )
801
+ @affiliate = affiliate
802
+ @booking_number = booking_number
803
+ @carrier_name = carrier_name
804
+ @customer_service_phone_number = customer_service_phone_number
805
+ @days_rented = days_rented
806
+ @distance = distance
807
+ @drivers = drivers
808
+ @drop_off = drop_off
809
+ @insurances = insurances
810
+ @no_show_indicator = no_show_indicator
811
+ @pickup = pickup
812
+ @renter_name = renter_name
813
+ @total = total
814
+ @vehicle = vehicle
815
+ end
816
+ end
817
+
818
+ class EventDetails < ::Stripe::RequestParams
819
+ class Address < ::Stripe::RequestParams
820
+ # City, district, suburb, town, or village.
821
+ attr_accessor :city
822
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
823
+ attr_accessor :country
824
+ # Address line 1, such as the street, PO Box, or company name.
825
+ attr_accessor :line1
826
+ # Address line 2, such as the apartment, suite, unit, or building.
827
+ attr_accessor :line2
828
+ # ZIP or postal code.
829
+ attr_accessor :postal_code
830
+ # State, county, province, or region.
831
+ attr_accessor :state
832
+
833
+ def initialize(
834
+ city: nil,
835
+ country: nil,
836
+ line1: nil,
837
+ line2: nil,
838
+ postal_code: nil,
839
+ state: nil
840
+ )
841
+ @city = city
842
+ @country = country
843
+ @line1 = line1
844
+ @line2 = line2
845
+ @postal_code = postal_code
846
+ @state = state
847
+ end
848
+ end
849
+
850
+ class Affiliate < ::Stripe::RequestParams
851
+ # The name of the affiliate that originated the purchase.
852
+ attr_accessor :name
853
+
854
+ def initialize(name: nil)
855
+ @name = name
856
+ end
857
+ end
858
+
859
+ class Delivery < ::Stripe::RequestParams
860
+ class Recipient < ::Stripe::RequestParams
861
+ # The email of the recipient the ticket is delivered to.
862
+ attr_accessor :email
863
+ # The name of the recipient the ticket is delivered to.
864
+ attr_accessor :name
865
+ # The phone number of the recipient the ticket is delivered to.
866
+ attr_accessor :phone
867
+
868
+ def initialize(email: nil, name: nil, phone: nil)
869
+ @email = email
870
+ @name = name
871
+ @phone = phone
872
+ end
873
+ end
874
+ # The delivery method for the payment
875
+ attr_accessor :mode
876
+ # Details of the recipient.
877
+ attr_accessor :recipient
878
+
879
+ def initialize(mode: nil, recipient: nil)
880
+ @mode = mode
881
+ @recipient = recipient
882
+ end
883
+ end
884
+ # Indicates if the tickets are digitally checked when entering the venue.
885
+ attr_accessor :access_controlled_venue
886
+ # The event location's address.
887
+ attr_accessor :address
888
+ # Affiliate details for this purchase.
889
+ attr_accessor :affiliate
890
+ # The name of the company
891
+ attr_accessor :company
892
+ # Delivery details for this purchase.
893
+ attr_accessor :delivery
894
+ # Event end time. Measured in seconds since the Unix epoch.
895
+ attr_accessor :ends_at
896
+ # Type of the event entertainment (concert, sports event etc)
897
+ attr_accessor :genre
898
+ # The name of the event.
899
+ attr_accessor :name
900
+ # Event start time. Measured in seconds since the Unix epoch.
901
+ attr_accessor :starts_at
902
+
903
+ def initialize(
904
+ access_controlled_venue: nil,
905
+ address: nil,
906
+ affiliate: nil,
907
+ company: nil,
908
+ delivery: nil,
909
+ ends_at: nil,
910
+ genre: nil,
911
+ name: nil,
912
+ starts_at: nil
913
+ )
914
+ @access_controlled_venue = access_controlled_venue
915
+ @address = address
916
+ @affiliate = affiliate
917
+ @company = company
918
+ @delivery = delivery
919
+ @ends_at = ends_at
920
+ @genre = genre
921
+ @name = name
922
+ @starts_at = starts_at
923
+ end
924
+ end
925
+
926
+ class Flight < ::Stripe::RequestParams
927
+ class Affiliate < ::Stripe::RequestParams
928
+ # The name of the affiliate that originated the purchase.
929
+ attr_accessor :name
930
+
931
+ def initialize(name: nil)
932
+ @name = name
933
+ end
934
+ end
935
+
936
+ class Delivery < ::Stripe::RequestParams
937
+ class Recipient < ::Stripe::RequestParams
938
+ # The email of the recipient the ticket is delivered to.
939
+ attr_accessor :email
940
+ # The name of the recipient the ticket is delivered to.
941
+ attr_accessor :name
942
+ # The phone number of the recipient the ticket is delivered to.
943
+ attr_accessor :phone
944
+
945
+ def initialize(email: nil, name: nil, phone: nil)
946
+ @email = email
947
+ @name = name
948
+ @phone = phone
949
+ end
950
+ end
951
+ # The delivery method for the payment
952
+ attr_accessor :mode
953
+ # Details of the recipient.
954
+ attr_accessor :recipient
955
+
956
+ def initialize(mode: nil, recipient: nil)
957
+ @mode = mode
958
+ @recipient = recipient
959
+ end
960
+ end
961
+
962
+ class Passenger < ::Stripe::RequestParams
963
+ # Full name of the person or entity on the flight reservation.
964
+ attr_accessor :name
965
+
966
+ def initialize(name: nil)
967
+ @name = name
968
+ end
969
+ end
970
+
971
+ class Segment < ::Stripe::RequestParams
972
+ # The flight segment amount.
973
+ attr_accessor :amount
974
+ # The International Air Transport Association (IATA) airport code for the arrival airport.
975
+ attr_accessor :arrival_airport
976
+ # The arrival time for the flight segment. Measured in seconds since the Unix epoch.
977
+ attr_accessor :arrives_at
978
+ # The International Air Transport Association (IATA) carrier code of the carrier operating the flight segment.
979
+ attr_accessor :carrier
980
+ # The departure time for the flight segment. Measured in seconds since the Unix epoch.
981
+ attr_accessor :departs_at
982
+ # The International Air Transport Association (IATA) airport code for the departure airport.
983
+ attr_accessor :departure_airport
984
+ # The flight number associated with the segment
985
+ attr_accessor :flight_number
986
+ # The fare class for the segment.
987
+ attr_accessor :service_class
988
+
989
+ def initialize(
990
+ amount: nil,
991
+ arrival_airport: nil,
992
+ arrives_at: nil,
993
+ carrier: nil,
994
+ departs_at: nil,
995
+ departure_airport: nil,
996
+ flight_number: nil,
997
+ service_class: nil
998
+ )
999
+ @amount = amount
1000
+ @arrival_airport = arrival_airport
1001
+ @arrives_at = arrives_at
1002
+ @carrier = carrier
1003
+ @departs_at = departs_at
1004
+ @departure_airport = departure_airport
1005
+ @flight_number = flight_number
1006
+ @service_class = service_class
1007
+ end
1008
+ end
1009
+ # Affiliate details for this purchase.
1010
+ attr_accessor :affiliate
1011
+ # The agency number (i.e. International Air Transport Association (IATA) agency number) of the travel agency that made the booking.
1012
+ attr_accessor :agency_number
1013
+ # The International Air Transport Association (IATA) carrier code of the carrier that issued the ticket.
1014
+ attr_accessor :carrier
1015
+ # Delivery details for this purchase.
1016
+ attr_accessor :delivery
1017
+ # The name of the person or entity on the reservation.
1018
+ attr_accessor :passenger_name
1019
+ # The details of the passengers in the travel reservation.
1020
+ attr_accessor :passengers
1021
+ # The individual flight segments associated with the trip.
1022
+ attr_accessor :segments
1023
+ # The ticket number associated with the travel reservation.
1024
+ attr_accessor :ticket_number
1025
+
1026
+ def initialize(
1027
+ affiliate: nil,
1028
+ agency_number: nil,
1029
+ carrier: nil,
1030
+ delivery: nil,
1031
+ passenger_name: nil,
1032
+ passengers: nil,
1033
+ segments: nil,
1034
+ ticket_number: nil
1035
+ )
1036
+ @affiliate = affiliate
1037
+ @agency_number = agency_number
1038
+ @carrier = carrier
1039
+ @delivery = delivery
1040
+ @passenger_name = passenger_name
1041
+ @passengers = passengers
1042
+ @segments = segments
1043
+ @ticket_number = ticket_number
1044
+ end
1045
+ end
1046
+
1047
+ class FlightDatum < ::Stripe::RequestParams
1048
+ class Affiliate < ::Stripe::RequestParams
1049
+ # Affiliate partner code.
1050
+ attr_accessor :code
1051
+ # Name of affiliate partner.
1052
+ attr_accessor :name
1053
+ # Code provided by the company to a travel agent authorizing ticket issuance.
1054
+ attr_accessor :travel_authorization_code
1055
+
1056
+ def initialize(code: nil, name: nil, travel_authorization_code: nil)
1057
+ @code = code
1058
+ @name = name
1059
+ @travel_authorization_code = travel_authorization_code
1060
+ end
1061
+ end
1062
+
1063
+ class Insurance < ::Stripe::RequestParams
1064
+ # Insurance cost.
1065
+ attr_accessor :amount
1066
+ # Insurance currency.
1067
+ attr_accessor :currency
1068
+ # Insurance company name.
1069
+ attr_accessor :insurance_company_name
1070
+ # Type of insurance.
1071
+ attr_accessor :insurance_type
1072
+
1073
+ def initialize(
1074
+ amount: nil,
1075
+ currency: nil,
1076
+ insurance_company_name: nil,
1077
+ insurance_type: nil
1078
+ )
1079
+ @amount = amount
1080
+ @currency = currency
1081
+ @insurance_company_name = insurance_company_name
1082
+ @insurance_type = insurance_type
1083
+ end
1084
+ end
1085
+
1086
+ class Passenger < ::Stripe::RequestParams
1087
+ # Passenger's full name.
1088
+ attr_accessor :name
1089
+
1090
+ def initialize(name: nil)
1091
+ @name = name
1092
+ end
1093
+ end
1094
+
1095
+ class Segment < ::Stripe::RequestParams
1096
+ class Arrival < ::Stripe::RequestParams
1097
+ # Arrival airport IATA code.
1098
+ attr_accessor :airport
1099
+ # Arrival date/time.
1100
+ attr_accessor :arrives_at
1101
+ # Arrival city.
1102
+ attr_accessor :city
1103
+ # Arrival country.
1104
+ attr_accessor :country
1105
+
1106
+ def initialize(airport: nil, arrives_at: nil, city: nil, country: nil)
1107
+ @airport = airport
1108
+ @arrives_at = arrives_at
1109
+ @city = city
1110
+ @country = country
1111
+ end
1112
+ end
1113
+
1114
+ class Departure < ::Stripe::RequestParams
1115
+ # Departure airport IATA code.
1116
+ attr_accessor :airport
1117
+ # Departure city.
1118
+ attr_accessor :city
1119
+ # Departure country.
1120
+ attr_accessor :country
1121
+ # Departure date/time.
1122
+ attr_accessor :departs_at
1123
+
1124
+ def initialize(airport: nil, city: nil, country: nil, departs_at: nil)
1125
+ @airport = airport
1126
+ @city = city
1127
+ @country = country
1128
+ @departs_at = departs_at
1129
+ end
1130
+ end
1131
+ # Segment fare amount.
1132
+ attr_accessor :amount
1133
+ # Arrival details.
1134
+ attr_accessor :arrival
1135
+ # Airline carrier code.
1136
+ attr_accessor :carrier_code
1137
+ # Carrier name.
1138
+ attr_accessor :carrier_name
1139
+ # Segment currency.
1140
+ attr_accessor :currency
1141
+ # Departure details.
1142
+ attr_accessor :departure
1143
+ # Exchange ticket number.
1144
+ attr_accessor :exchange_ticket_number
1145
+ # Fare basis code.
1146
+ attr_accessor :fare_basis_code
1147
+ # Additional fees.
1148
+ attr_accessor :fees
1149
+ # Flight number.
1150
+ attr_accessor :flight_number
1151
+ # Stopover indicator.
1152
+ attr_accessor :is_stop_over_indicator
1153
+ # Refundable ticket indicator.
1154
+ attr_accessor :refundable
1155
+ # Class of service.
1156
+ attr_accessor :service_class
1157
+ # Tax amount for segment.
1158
+ attr_accessor :tax_amount
1159
+ # Ticket number.
1160
+ attr_accessor :ticket_number
1161
+
1162
+ def initialize(
1163
+ amount: nil,
1164
+ arrival: nil,
1165
+ carrier_code: nil,
1166
+ carrier_name: nil,
1167
+ currency: nil,
1168
+ departure: nil,
1169
+ exchange_ticket_number: nil,
1170
+ fare_basis_code: nil,
1171
+ fees: nil,
1172
+ flight_number: nil,
1173
+ is_stop_over_indicator: nil,
1174
+ refundable: nil,
1175
+ service_class: nil,
1176
+ tax_amount: nil,
1177
+ ticket_number: nil
1178
+ )
1179
+ @amount = amount
1180
+ @arrival = arrival
1181
+ @carrier_code = carrier_code
1182
+ @carrier_name = carrier_name
1183
+ @currency = currency
1184
+ @departure = departure
1185
+ @exchange_ticket_number = exchange_ticket_number
1186
+ @fare_basis_code = fare_basis_code
1187
+ @fees = fees
1188
+ @flight_number = flight_number
1189
+ @is_stop_over_indicator = is_stop_over_indicator
1190
+ @refundable = refundable
1191
+ @service_class = service_class
1192
+ @tax_amount = tax_amount
1193
+ @ticket_number = ticket_number
1194
+ end
1195
+ end
1196
+
1197
+ class Total < ::Stripe::RequestParams
1198
+ class Discounts < ::Stripe::RequestParams
1199
+ # Corporate client discount code.
1200
+ attr_accessor :corporate_client_code
1201
+
1202
+ def initialize(corporate_client_code: nil)
1203
+ @corporate_client_code = corporate_client_code
1204
+ end
1205
+ end
1206
+
1207
+ class ExtraCharge < ::Stripe::RequestParams
1208
+ # Amount of additional charges.
1209
+ attr_accessor :amount
1210
+ # Type of additional charges.
1211
+ attr_accessor :type
1212
+
1213
+ def initialize(amount: nil, type: nil)
1214
+ @amount = amount
1215
+ @type = type
1216
+ end
1217
+ end
1218
+
1219
+ class Tax < ::Stripe::RequestParams
1220
+ class Tax < ::Stripe::RequestParams
1221
+ # Tax amount.
1222
+ attr_accessor :amount
1223
+ # Tax rate.
1224
+ attr_accessor :rate
1225
+ # Type of tax.
1226
+ attr_accessor :type
1227
+
1228
+ def initialize(amount: nil, rate: nil, type: nil)
1229
+ @amount = amount
1230
+ @rate = rate
1231
+ @type = type
1232
+ end
1233
+ end
1234
+ # Array of tax details.
1235
+ attr_accessor :taxes
1236
+
1237
+ def initialize(taxes: nil)
1238
+ @taxes = taxes
1239
+ end
1240
+ end
1241
+ # Total flight amount.
1242
+ attr_accessor :amount
1243
+ # Reason for credit.
1244
+ attr_accessor :credit_reason
1245
+ # Total currency.
1246
+ attr_accessor :currency
1247
+ # Discount details.
1248
+ attr_accessor :discounts
1249
+ # Additional charges.
1250
+ attr_accessor :extra_charges
1251
+ # Tax breakdown.
1252
+ attr_accessor :tax
1253
+
1254
+ def initialize(
1255
+ amount: nil,
1256
+ credit_reason: nil,
1257
+ currency: nil,
1258
+ discounts: nil,
1259
+ extra_charges: nil,
1260
+ tax: nil
1261
+ )
1262
+ @amount = amount
1263
+ @credit_reason = credit_reason
1264
+ @currency = currency
1265
+ @discounts = discounts
1266
+ @extra_charges = extra_charges
1267
+ @tax = tax
1268
+ end
1269
+ end
1270
+ # Affiliate details if applicable.
1271
+ attr_accessor :affiliate
1272
+ # Reservation reference.
1273
+ attr_accessor :booking_number
1274
+ # Computerized reservation system used to make the reservation and purchase the ticket.
1275
+ attr_accessor :computerized_reservation_system
1276
+ # Ticket restrictions.
1277
+ attr_accessor :endorsements_and_restrictions
1278
+ # List of insurances.
1279
+ attr_accessor :insurances
1280
+ # List of passengers.
1281
+ attr_accessor :passengers
1282
+ # List of flight segments.
1283
+ attr_accessor :segments
1284
+ # Electronic ticket indicator.
1285
+ attr_accessor :ticket_electronically_issued_indicator
1286
+ # Total cost breakdown.
1287
+ attr_accessor :total
1288
+ # Type of flight transaction.
1289
+ attr_accessor :transaction_type
1290
+
1291
+ def initialize(
1292
+ affiliate: nil,
1293
+ booking_number: nil,
1294
+ computerized_reservation_system: nil,
1295
+ endorsements_and_restrictions: nil,
1296
+ insurances: nil,
1297
+ passengers: nil,
1298
+ segments: nil,
1299
+ ticket_electronically_issued_indicator: nil,
1300
+ total: nil,
1301
+ transaction_type: nil
1302
+ )
1303
+ @affiliate = affiliate
1304
+ @booking_number = booking_number
1305
+ @computerized_reservation_system = computerized_reservation_system
1306
+ @endorsements_and_restrictions = endorsements_and_restrictions
1307
+ @insurances = insurances
1308
+ @passengers = passengers
1309
+ @segments = segments
1310
+ @ticket_electronically_issued_indicator = ticket_electronically_issued_indicator
1311
+ @total = total
1312
+ @transaction_type = transaction_type
1313
+ end
1314
+ end
1315
+
1316
+ class Lodging < ::Stripe::RequestParams
1317
+ class Address < ::Stripe::RequestParams
1318
+ # City, district, suburb, town, or village.
1319
+ attr_accessor :city
1320
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
1321
+ attr_accessor :country
1322
+ # Address line 1, such as the street, PO Box, or company name.
1323
+ attr_accessor :line1
1324
+ # Address line 2, such as the apartment, suite, unit, or building.
1325
+ attr_accessor :line2
1326
+ # ZIP or postal code.
1327
+ attr_accessor :postal_code
1328
+ # State, county, province, or region.
1329
+ attr_accessor :state
1330
+
1331
+ def initialize(
1332
+ city: nil,
1333
+ country: nil,
1334
+ line1: nil,
1335
+ line2: nil,
1336
+ postal_code: nil,
1337
+ state: nil
1338
+ )
1339
+ @city = city
1340
+ @country = country
1341
+ @line1 = line1
1342
+ @line2 = line2
1343
+ @postal_code = postal_code
1344
+ @state = state
1345
+ end
1346
+ end
1347
+
1348
+ class Affiliate < ::Stripe::RequestParams
1349
+ # The name of the affiliate that originated the purchase.
1350
+ attr_accessor :name
1351
+
1352
+ def initialize(name: nil)
1353
+ @name = name
1354
+ end
1355
+ end
1356
+
1357
+ class Delivery < ::Stripe::RequestParams
1358
+ class Recipient < ::Stripe::RequestParams
1359
+ # The email of the recipient the ticket is delivered to.
1360
+ attr_accessor :email
1361
+ # The name of the recipient the ticket is delivered to.
1362
+ attr_accessor :name
1363
+ # The phone number of the recipient the ticket is delivered to.
1364
+ attr_accessor :phone
1365
+
1366
+ def initialize(email: nil, name: nil, phone: nil)
1367
+ @email = email
1368
+ @name = name
1369
+ @phone = phone
1370
+ end
1371
+ end
1372
+ # The delivery method for the payment
1373
+ attr_accessor :mode
1374
+ # Details of the recipient.
1375
+ attr_accessor :recipient
1376
+
1377
+ def initialize(mode: nil, recipient: nil)
1378
+ @mode = mode
1379
+ @recipient = recipient
1380
+ end
1381
+ end
1382
+
1383
+ class Passenger < ::Stripe::RequestParams
1384
+ # Full name of the person or entity on the lodging reservation.
1385
+ attr_accessor :name
1386
+
1387
+ def initialize(name: nil)
1388
+ @name = name
1389
+ end
1390
+ end
1391
+ # The lodging location's address.
1392
+ attr_accessor :address
1393
+ # The number of adults on the booking
1394
+ attr_accessor :adults
1395
+ # Affiliate details for this purchase.
1396
+ attr_accessor :affiliate
1397
+ # The booking number associated with the lodging reservation.
1398
+ attr_accessor :booking_number
1399
+ # The lodging category
1400
+ attr_accessor :category
1401
+ # Lodging check-in time. Measured in seconds since the Unix epoch.
1402
+ attr_accessor :checkin_at
1403
+ # Lodging check-out time. Measured in seconds since the Unix epoch.
1404
+ attr_accessor :checkout_at
1405
+ # The customer service phone number of the lodging company.
1406
+ attr_accessor :customer_service_phone_number
1407
+ # The daily lodging room rate.
1408
+ attr_accessor :daily_room_rate_amount
1409
+ # Delivery details for this purchase.
1410
+ attr_accessor :delivery
1411
+ # List of additional charges being billed.
1412
+ attr_accessor :extra_charges
1413
+ # Indicates whether the lodging location is compliant with the Fire Safety Act.
1414
+ attr_accessor :fire_safety_act_compliance
1415
+ # The name of the lodging location.
1416
+ attr_accessor :name
1417
+ # Indicates if the customer did not keep their booking while failing to cancel the reservation.
1418
+ attr_accessor :no_show
1419
+ # The number of rooms on the booking
1420
+ attr_accessor :number_of_rooms
1421
+ # The details of the passengers in the travel reservation
1422
+ attr_accessor :passengers
1423
+ # The phone number of the lodging location.
1424
+ attr_accessor :property_phone_number
1425
+ # The room class for this purchase.
1426
+ attr_accessor :room_class
1427
+ # The number of room nights
1428
+ attr_accessor :room_nights
1429
+ # The total tax amount associating with the room reservation.
1430
+ attr_accessor :total_room_tax_amount
1431
+ # The total tax amount
1432
+ attr_accessor :total_tax_amount
1433
+
1434
+ def initialize(
1435
+ address: nil,
1436
+ adults: nil,
1437
+ affiliate: nil,
1438
+ booking_number: nil,
1439
+ category: nil,
1440
+ checkin_at: nil,
1441
+ checkout_at: nil,
1442
+ customer_service_phone_number: nil,
1443
+ daily_room_rate_amount: nil,
1444
+ delivery: nil,
1445
+ extra_charges: nil,
1446
+ fire_safety_act_compliance: nil,
1447
+ name: nil,
1448
+ no_show: nil,
1449
+ number_of_rooms: nil,
1450
+ passengers: nil,
1451
+ property_phone_number: nil,
1452
+ room_class: nil,
1453
+ room_nights: nil,
1454
+ total_room_tax_amount: nil,
1455
+ total_tax_amount: nil
1456
+ )
1457
+ @address = address
1458
+ @adults = adults
1459
+ @affiliate = affiliate
1460
+ @booking_number = booking_number
1461
+ @category = category
1462
+ @checkin_at = checkin_at
1463
+ @checkout_at = checkout_at
1464
+ @customer_service_phone_number = customer_service_phone_number
1465
+ @daily_room_rate_amount = daily_room_rate_amount
1466
+ @delivery = delivery
1467
+ @extra_charges = extra_charges
1468
+ @fire_safety_act_compliance = fire_safety_act_compliance
1469
+ @name = name
1470
+ @no_show = no_show
1471
+ @number_of_rooms = number_of_rooms
1472
+ @passengers = passengers
1473
+ @property_phone_number = property_phone_number
1474
+ @room_class = room_class
1475
+ @room_nights = room_nights
1476
+ @total_room_tax_amount = total_room_tax_amount
1477
+ @total_tax_amount = total_tax_amount
1478
+ end
1479
+ end
1480
+
1481
+ class LodgingDatum < ::Stripe::RequestParams
1482
+ class Accommodation < ::Stripe::RequestParams
1483
+ # Type of accommodation.
1484
+ attr_accessor :accommodation_type
1485
+ # Bed type.
1486
+ attr_accessor :bed_type
1487
+ # Daily accommodation rate in cents.
1488
+ attr_accessor :daily_rate_amount
1489
+ # Number of nights.
1490
+ attr_accessor :nights
1491
+ # Number of rooms, cabanas, apartments, and so on.
1492
+ attr_accessor :number_of_rooms
1493
+ # Rate type.
1494
+ attr_accessor :rate_type
1495
+ # Whether smoking is allowed.
1496
+ attr_accessor :smoking_indicator
1497
+
1498
+ def initialize(
1499
+ accommodation_type: nil,
1500
+ bed_type: nil,
1501
+ daily_rate_amount: nil,
1502
+ nights: nil,
1503
+ number_of_rooms: nil,
1504
+ rate_type: nil,
1505
+ smoking_indicator: nil
1506
+ )
1507
+ @accommodation_type = accommodation_type
1508
+ @bed_type = bed_type
1509
+ @daily_rate_amount = daily_rate_amount
1510
+ @nights = nights
1511
+ @number_of_rooms = number_of_rooms
1512
+ @rate_type = rate_type
1513
+ @smoking_indicator = smoking_indicator
1514
+ end
1515
+ end
1516
+
1517
+ class Affiliate < ::Stripe::RequestParams
1518
+ # Affiliate partner code.
1519
+ attr_accessor :code
1520
+ # Affiliate partner name.
1521
+ attr_accessor :name
1522
+
1523
+ def initialize(code: nil, name: nil)
1524
+ @code = code
1525
+ @name = name
1526
+ end
1527
+ end
1528
+
1529
+ class Guest < ::Stripe::RequestParams
1530
+ # Guest's full name.
1531
+ attr_accessor :name
1532
+
1533
+ def initialize(name: nil)
1534
+ @name = name
1535
+ end
1536
+ end
1537
+
1538
+ class Host < ::Stripe::RequestParams
1539
+ class Address < ::Stripe::RequestParams
1540
+ # City, district, suburb, town, or village.
1541
+ attr_accessor :city
1542
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
1543
+ attr_accessor :country
1544
+ # Address line 1, such as the street, PO Box, or company name.
1545
+ attr_accessor :line1
1546
+ # Address line 2, such as the apartment, suite, unit, or building.
1547
+ attr_accessor :line2
1548
+ # ZIP or postal code.
1549
+ attr_accessor :postal_code
1550
+ # State, county, province, or region.
1551
+ attr_accessor :state
1552
+
1553
+ def initialize(
1554
+ city: nil,
1555
+ country: nil,
1556
+ line1: nil,
1557
+ line2: nil,
1558
+ postal_code: nil,
1559
+ state: nil
1560
+ )
1561
+ @city = city
1562
+ @country = country
1563
+ @line1 = line1
1564
+ @line2 = line2
1565
+ @postal_code = postal_code
1566
+ @state = state
1567
+ end
1568
+ end
1569
+ # Address of the host.
1570
+ attr_accessor :address
1571
+ # Host's country of domicile.
1572
+ attr_accessor :country_of_domicile
1573
+ # Reference number for the host.
1574
+ attr_accessor :host_reference
1575
+ # Type of host.
1576
+ attr_accessor :host_type
1577
+ # Name of the lodging property or host.
1578
+ attr_accessor :name
1579
+ # Total number of reservations for the host.
1580
+ attr_accessor :number_of_reservations
1581
+ # Property phone number.
1582
+ attr_accessor :property_phone_number
1583
+ # Host's registration date.
1584
+ attr_accessor :registered_at
1585
+
1586
+ def initialize(
1587
+ address: nil,
1588
+ country_of_domicile: nil,
1589
+ host_reference: nil,
1590
+ host_type: nil,
1591
+ name: nil,
1592
+ number_of_reservations: nil,
1593
+ property_phone_number: nil,
1594
+ registered_at: nil
1595
+ )
1596
+ @address = address
1597
+ @country_of_domicile = country_of_domicile
1598
+ @host_reference = host_reference
1599
+ @host_type = host_type
1600
+ @name = name
1601
+ @number_of_reservations = number_of_reservations
1602
+ @property_phone_number = property_phone_number
1603
+ @registered_at = registered_at
1604
+ end
1605
+ end
1606
+
1607
+ class Insurance < ::Stripe::RequestParams
1608
+ # Price of the insurance coverage in cents.
1609
+ attr_accessor :amount
1610
+ # Currency of the insurance amount.
1611
+ attr_accessor :currency
1612
+ # Name of the insurance company.
1613
+ attr_accessor :insurance_company_name
1614
+ # Type of insurance coverage.
1615
+ attr_accessor :insurance_type
1616
+
1617
+ def initialize(
1618
+ amount: nil,
1619
+ currency: nil,
1620
+ insurance_company_name: nil,
1621
+ insurance_type: nil
1622
+ )
1623
+ @amount = amount
1624
+ @currency = currency
1625
+ @insurance_company_name = insurance_company_name
1626
+ @insurance_type = insurance_type
1627
+ end
1628
+ end
1629
+
1630
+ class Total < ::Stripe::RequestParams
1631
+ class Discounts < ::Stripe::RequestParams
1632
+ # Corporate client discount code.
1633
+ attr_accessor :corporate_client_code
1634
+ # Coupon code.
1635
+ attr_accessor :coupon
1636
+
1637
+ def initialize(corporate_client_code: nil, coupon: nil)
1638
+ @corporate_client_code = corporate_client_code
1639
+ @coupon = coupon
1640
+ end
1641
+ end
1642
+
1643
+ class ExtraCharge < ::Stripe::RequestParams
1644
+ # Amount of the extra charge in cents.
1645
+ attr_accessor :amount
1646
+ # Type of extra charge.
1647
+ attr_accessor :type
1648
+
1649
+ def initialize(amount: nil, type: nil)
1650
+ @amount = amount
1651
+ @type = type
1652
+ end
1653
+ end
1654
+
1655
+ class Tax < ::Stripe::RequestParams
1656
+ class Tax < ::Stripe::RequestParams
1657
+ # Tax amount in cents.
1658
+ attr_accessor :amount
1659
+ # Tax rate.
1660
+ attr_accessor :rate
1661
+ # Type of tax applied.
1662
+ attr_accessor :type
1663
+
1664
+ def initialize(amount: nil, rate: nil, type: nil)
1665
+ @amount = amount
1666
+ @rate = rate
1667
+ @type = type
1668
+ end
1669
+ end
1670
+ # Indicates whether the transaction is tax exempt.
1671
+ attr_accessor :tax_exempt_indicator
1672
+ # Tax details.
1673
+ attr_accessor :taxes
1674
+
1675
+ def initialize(tax_exempt_indicator: nil, taxes: nil)
1676
+ @tax_exempt_indicator = tax_exempt_indicator
1677
+ @taxes = taxes
1678
+ end
1679
+ end
1680
+ # Total price of the lodging reservation in cents.
1681
+ attr_accessor :amount
1682
+ # Cash advances in cents.
1683
+ attr_accessor :cash_advances
1684
+ # Currency of the total amount.
1685
+ attr_accessor :currency
1686
+ # Discount details for the lodging.
1687
+ attr_accessor :discounts
1688
+ # Additional charges for the lodging.
1689
+ attr_accessor :extra_charges
1690
+ # Prepaid amount in cents.
1691
+ attr_accessor :prepaid_amount
1692
+ # Tax breakdown for the lodging reservation.
1693
+ attr_accessor :tax
1694
+
1695
+ def initialize(
1696
+ amount: nil,
1697
+ cash_advances: nil,
1698
+ currency: nil,
1699
+ discounts: nil,
1700
+ extra_charges: nil,
1701
+ prepaid_amount: nil,
1702
+ tax: nil
1703
+ )
1704
+ @amount = amount
1705
+ @cash_advances = cash_advances
1706
+ @currency = currency
1707
+ @discounts = discounts
1708
+ @extra_charges = extra_charges
1709
+ @prepaid_amount = prepaid_amount
1710
+ @tax = tax
1711
+ end
1712
+ end
1713
+ # Accommodation details for the lodging.
1714
+ attr_accessor :accommodation
1715
+ # Affiliate details if applicable.
1716
+ attr_accessor :affiliate
1717
+ # Booking confirmation number for the lodging.
1718
+ attr_accessor :booking_number
1719
+ # Check-in date.
1720
+ attr_accessor :checkin_at
1721
+ # Check-out date.
1722
+ attr_accessor :checkout_at
1723
+ # Customer service phone number for the lodging company.
1724
+ attr_accessor :customer_service_phone_number
1725
+ # Whether the lodging is compliant with any hotel fire safety regulations.
1726
+ attr_accessor :fire_safety_act_compliance_indicator
1727
+ # List of guests for the lodging.
1728
+ attr_accessor :guests
1729
+ # Host details for the lodging.
1730
+ attr_accessor :host
1731
+ # List of insurances for the lodging.
1732
+ attr_accessor :insurances
1733
+ # Whether the renter is a no-show.
1734
+ attr_accessor :no_show_indicator
1735
+ # Renter ID number for the lodging.
1736
+ attr_accessor :renter_id_number
1737
+ # Renter name for the lodging.
1738
+ attr_accessor :renter_name
1739
+ # Total details for the lodging.
1740
+ attr_accessor :total
1741
+
1742
+ def initialize(
1743
+ accommodation: nil,
1744
+ affiliate: nil,
1745
+ booking_number: nil,
1746
+ checkin_at: nil,
1747
+ checkout_at: nil,
1748
+ customer_service_phone_number: nil,
1749
+ fire_safety_act_compliance_indicator: nil,
1750
+ guests: nil,
1751
+ host: nil,
1752
+ insurances: nil,
1753
+ no_show_indicator: nil,
1754
+ renter_id_number: nil,
1755
+ renter_name: nil,
1756
+ total: nil
1757
+ )
1758
+ @accommodation = accommodation
1759
+ @affiliate = affiliate
1760
+ @booking_number = booking_number
1761
+ @checkin_at = checkin_at
1762
+ @checkout_at = checkout_at
1763
+ @customer_service_phone_number = customer_service_phone_number
1764
+ @fire_safety_act_compliance_indicator = fire_safety_act_compliance_indicator
1765
+ @guests = guests
1766
+ @host = host
1767
+ @insurances = insurances
1768
+ @no_show_indicator = no_show_indicator
1769
+ @renter_id_number = renter_id_number
1770
+ @renter_name = renter_name
1771
+ @total = total
1772
+ end
1773
+ end
1774
+
1775
+ class Subscription < ::Stripe::RequestParams
1776
+ class Affiliate < ::Stripe::RequestParams
1777
+ # The name of the affiliate that originated the purchase.
1778
+ attr_accessor :name
1779
+
1780
+ def initialize(name: nil)
1781
+ @name = name
1782
+ end
1783
+ end
1784
+
1785
+ class BillingInterval < ::Stripe::RequestParams
1786
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
1787
+ attr_accessor :count
1788
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
1789
+ attr_accessor :interval
1790
+
1791
+ def initialize(count: nil, interval: nil)
1792
+ @count = count
1793
+ @interval = interval
1794
+ end
1795
+ end
1796
+ # Affiliate details for this purchase.
1797
+ attr_accessor :affiliate
1798
+ # Info whether the subscription will be auto renewed upon expiry.
1799
+ attr_accessor :auto_renewal
1800
+ # Subscription billing details for this purchase.
1801
+ attr_accessor :billing_interval
1802
+ # Subscription end time. Measured in seconds since the Unix epoch.
1803
+ attr_accessor :ends_at
1804
+ # Name of the product on subscription. e.g. Apple Music Subscription
1805
+ attr_accessor :name
1806
+ # Subscription start time. Measured in seconds since the Unix epoch.
1807
+ attr_accessor :starts_at
1808
+
1809
+ def initialize(
1810
+ affiliate: nil,
1811
+ auto_renewal: nil,
1812
+ billing_interval: nil,
1813
+ ends_at: nil,
1814
+ name: nil,
1815
+ starts_at: nil
1816
+ )
1817
+ @affiliate = affiliate
1818
+ @auto_renewal = auto_renewal
1819
+ @billing_interval = billing_interval
1820
+ @ends_at = ends_at
1821
+ @name = name
1822
+ @starts_at = starts_at
1823
+ end
1824
+ end
1825
+ # Car rental details for this PaymentIntent.
1826
+ attr_accessor :car_rental
1827
+ # Car rental data for this PaymentIntent.
1828
+ attr_accessor :car_rental_data
203
1829
  # A unique value to identify the customer. This field is available only for card payments.
204
1830
  #
205
1831
  # This field is truncated to 25 alphanumeric characters, excluding spaces, before being sent to card networks.
206
1832
  attr_accessor :customer_reference
1833
+ # Event details for this PaymentIntent
1834
+ attr_accessor :event_details
1835
+ # Flight reservation details for this PaymentIntent
1836
+ attr_accessor :flight
1837
+ # Flight data for this PaymentIntent.
1838
+ attr_accessor :flight_data
1839
+ # Lodging reservation details for this PaymentIntent
1840
+ attr_accessor :lodging
1841
+ # Lodging data for this PaymentIntent.
1842
+ attr_accessor :lodging_data
207
1843
  # A unique value assigned by the business to identify the transaction. Required for L2 and L3 rates.
208
1844
  #
209
1845
  # Required when the Payment Method Types array contains `card`, including when [automatic_payment_methods.enabled](/api/payment_intents/create#create_payment_intent-automatic_payment_methods-enabled) is set to `true`.
210
1846
  #
211
1847
  # For Cards, this field is truncated to 25 alphanumeric characters, excluding spaces, before being sent to card networks. For Klarna, this field is truncated to 255 characters and is visible to customers when they view the order in the Klarna app.
212
1848
  attr_accessor :order_reference
1849
+ # Subscription details for this PaymentIntent
1850
+ attr_accessor :subscription
213
1851
 
214
- def initialize(customer_reference: nil, order_reference: nil)
1852
+ def initialize(
1853
+ car_rental: nil,
1854
+ car_rental_data: nil,
1855
+ customer_reference: nil,
1856
+ event_details: nil,
1857
+ flight: nil,
1858
+ flight_data: nil,
1859
+ lodging: nil,
1860
+ lodging_data: nil,
1861
+ order_reference: nil,
1862
+ subscription: nil
1863
+ )
1864
+ @car_rental = car_rental
1865
+ @car_rental_data = car_rental_data
215
1866
  @customer_reference = customer_reference
1867
+ @event_details = event_details
1868
+ @flight = flight
1869
+ @flight_data = flight_data
1870
+ @lodging = lodging
1871
+ @lodging_data = lodging_data
216
1872
  @order_reference = order_reference
1873
+ @subscription = subscription
217
1874
  end
218
1875
  end
219
1876
 
@@ -354,8 +2011,18 @@ module Stripe
354
2011
  end
355
2012
 
356
2013
  class Giropay < ::Stripe::RequestParams; end
2014
+ class Gopay < ::Stripe::RequestParams; end
357
2015
  class Grabpay < ::Stripe::RequestParams; end
358
2016
 
2017
+ class IdBankTransfer < ::Stripe::RequestParams
2018
+ # Bank where the account is held.
2019
+ attr_accessor :bank
2020
+
2021
+ def initialize(bank: nil)
2022
+ @bank = bank
2023
+ end
2024
+ end
2025
+
359
2026
  class Ideal < ::Stripe::RequestParams
360
2027
  # The customer's bank. Only use this parameter for existing customers. Don't use it for new customers.
361
2028
  attr_accessor :bank
@@ -453,8 +2120,26 @@ module Stripe
453
2120
  class Payco < ::Stripe::RequestParams; end
454
2121
  class Paynow < ::Stripe::RequestParams; end
455
2122
  class Paypal < ::Stripe::RequestParams; end
2123
+ class Paypay < ::Stripe::RequestParams; end
2124
+
2125
+ class Payto < ::Stripe::RequestParams
2126
+ # The account number for the bank account.
2127
+ attr_accessor :account_number
2128
+ # Bank-State-Branch number of the bank account.
2129
+ attr_accessor :bsb_number
2130
+ # The PayID alias for the bank account.
2131
+ attr_accessor :pay_id
2132
+
2133
+ def initialize(account_number: nil, bsb_number: nil, pay_id: nil)
2134
+ @account_number = account_number
2135
+ @bsb_number = bsb_number
2136
+ @pay_id = pay_id
2137
+ end
2138
+ end
2139
+
456
2140
  class Pix < ::Stripe::RequestParams; end
457
2141
  class Promptpay < ::Stripe::RequestParams; end
2142
+ class Qris < ::Stripe::RequestParams; end
458
2143
 
459
2144
  class RadarOptions < ::Stripe::RequestParams
460
2145
  # A [Radar Session](https://stripe.com/docs/radar/radar-session) is a snapshot of the browser metadata and device details that help Radar make more accurate predictions on your payments.
@@ -465,6 +2150,29 @@ module Stripe
465
2150
  end
466
2151
  end
467
2152
 
2153
+ class Rechnung < ::Stripe::RequestParams
2154
+ class Dob < ::Stripe::RequestParams
2155
+ # The day of birth, between 1 and 31.
2156
+ attr_accessor :day
2157
+ # The month of birth, between 1 and 12.
2158
+ attr_accessor :month
2159
+ # The four-digit year of birth.
2160
+ attr_accessor :year
2161
+
2162
+ def initialize(day: nil, month: nil, year: nil)
2163
+ @day = day
2164
+ @month = month
2165
+ @year = year
2166
+ end
2167
+ end
2168
+ # Customer's date of birth
2169
+ attr_accessor :dob
2170
+
2171
+ def initialize(dob: nil)
2172
+ @dob = dob
2173
+ end
2174
+ end
2175
+
468
2176
  class RevolutPay < ::Stripe::RequestParams; end
469
2177
  class SamsungPay < ::Stripe::RequestParams; end
470
2178
  class Satispay < ::Stripe::RequestParams; end
@@ -478,6 +2186,8 @@ module Stripe
478
2186
  end
479
2187
  end
480
2188
 
2189
+ class Shopeepay < ::Stripe::RequestParams; end
2190
+
481
2191
  class Sofort < ::Stripe::RequestParams
482
2192
  # Two-letter ISO code representing the country the bank account is located in.
483
2193
  attr_accessor :country
@@ -487,6 +2197,18 @@ module Stripe
487
2197
  end
488
2198
  end
489
2199
 
2200
+ class StripeBalance < ::Stripe::RequestParams
2201
+ # The connected account ID whose Stripe balance to use as the source of payment
2202
+ attr_accessor :account
2203
+ # The [source_type](https://docs.stripe.com/api/balance/balance_object#balance_object-available-source_types) of the balance
2204
+ attr_accessor :source_type
2205
+
2206
+ def initialize(account: nil, source_type: nil)
2207
+ @account = account
2208
+ @source_type = source_type
2209
+ end
2210
+ end
2211
+
490
2212
  class Swish < ::Stripe::RequestParams; end
491
2213
  class Twint < ::Stripe::RequestParams; end
492
2214
 
@@ -559,8 +2281,12 @@ module Stripe
559
2281
  attr_accessor :fpx
560
2282
  # If this is a `giropay` PaymentMethod, this hash contains details about the Giropay payment method.
561
2283
  attr_accessor :giropay
2284
+ # If this is a Gopay PaymentMethod, this hash contains details about the Gopay payment method.
2285
+ attr_accessor :gopay
562
2286
  # If this is a `grabpay` PaymentMethod, this hash contains details about the GrabPay payment method.
563
2287
  attr_accessor :grabpay
2288
+ # If this is an `IdBankTransfer` PaymentMethod, this hash contains details about the IdBankTransfer payment method.
2289
+ attr_accessor :id_bank_transfer
564
2290
  # If this is an `ideal` PaymentMethod, this hash contains details about the iDEAL payment method.
565
2291
  attr_accessor :ideal
566
2292
  # If this is an `interac_present` PaymentMethod, this hash contains details about the Interac Present payment method.
@@ -599,12 +2325,20 @@ module Stripe
599
2325
  attr_accessor :paynow
600
2326
  # If this is a `paypal` PaymentMethod, this hash contains details about the PayPal payment method.
601
2327
  attr_accessor :paypal
2328
+ # If this is a `paypay` PaymentMethod, this hash contains details about the PayPay payment method.
2329
+ attr_accessor :paypay
2330
+ # If this is a `payto` PaymentMethod, this hash contains details about the PayTo payment method.
2331
+ attr_accessor :payto
602
2332
  # If this is a `pix` PaymentMethod, this hash contains details about the Pix payment method.
603
2333
  attr_accessor :pix
604
2334
  # If this is a `promptpay` PaymentMethod, this hash contains details about the PromptPay payment method.
605
2335
  attr_accessor :promptpay
2336
+ # If this is a `qris` PaymentMethod, this hash contains details about the QRIS payment method.
2337
+ attr_accessor :qris
606
2338
  # Options to configure Radar. See [Radar Session](https://stripe.com/docs/radar/radar-session) for more information.
607
2339
  attr_accessor :radar_options
2340
+ # If this is a `rechnung` PaymentMethod, this hash contains details about the Rechnung payment method.
2341
+ attr_accessor :rechnung
608
2342
  # If this is a `revolut_pay` PaymentMethod, this hash contains details about the Revolut Pay payment method.
609
2343
  attr_accessor :revolut_pay
610
2344
  # If this is a `samsung_pay` PaymentMethod, this hash contains details about the SamsungPay payment method.
@@ -613,8 +2347,12 @@ module Stripe
613
2347
  attr_accessor :satispay
614
2348
  # If this is a `sepa_debit` PaymentMethod, this hash contains details about the SEPA debit bank account.
615
2349
  attr_accessor :sepa_debit
2350
+ # If this is a Shopeepay PaymentMethod, this hash contains details about the Shopeepay payment method.
2351
+ attr_accessor :shopeepay
616
2352
  # If this is a `sofort` PaymentMethod, this hash contains details about the SOFORT payment method.
617
2353
  attr_accessor :sofort
2354
+ # This hash contains details about the Stripe balance payment method.
2355
+ attr_accessor :stripe_balance
618
2356
  # If this is a `swish` PaymentMethod, this hash contains details about the Swish payment method.
619
2357
  attr_accessor :swish
620
2358
  # If this is a TWINT PaymentMethod, this hash contains details about the TWINT payment method.
@@ -649,7 +2387,9 @@ module Stripe
649
2387
  eps: nil,
650
2388
  fpx: nil,
651
2389
  giropay: nil,
2390
+ gopay: nil,
652
2391
  grabpay: nil,
2392
+ id_bank_transfer: nil,
653
2393
  ideal: nil,
654
2394
  interac_present: nil,
655
2395
  kakao_pay: nil,
@@ -669,14 +2409,20 @@ module Stripe
669
2409
  payco: nil,
670
2410
  paynow: nil,
671
2411
  paypal: nil,
2412
+ paypay: nil,
2413
+ payto: nil,
672
2414
  pix: nil,
673
2415
  promptpay: nil,
2416
+ qris: nil,
674
2417
  radar_options: nil,
2418
+ rechnung: nil,
675
2419
  revolut_pay: nil,
676
2420
  samsung_pay: nil,
677
2421
  satispay: nil,
678
2422
  sepa_debit: nil,
2423
+ shopeepay: nil,
679
2424
  sofort: nil,
2425
+ stripe_balance: nil,
680
2426
  swish: nil,
681
2427
  twint: nil,
682
2428
  type: nil,
@@ -704,7 +2450,9 @@ module Stripe
704
2450
  @eps = eps
705
2451
  @fpx = fpx
706
2452
  @giropay = giropay
2453
+ @gopay = gopay
707
2454
  @grabpay = grabpay
2455
+ @id_bank_transfer = id_bank_transfer
708
2456
  @ideal = ideal
709
2457
  @interac_present = interac_present
710
2458
  @kakao_pay = kakao_pay
@@ -724,14 +2472,20 @@ module Stripe
724
2472
  @payco = payco
725
2473
  @paynow = paynow
726
2474
  @paypal = paypal
2475
+ @paypay = paypay
2476
+ @payto = payto
727
2477
  @pix = pix
728
2478
  @promptpay = promptpay
2479
+ @qris = qris
729
2480
  @radar_options = radar_options
2481
+ @rechnung = rechnung
730
2482
  @revolut_pay = revolut_pay
731
2483
  @samsung_pay = samsung_pay
732
2484
  @satispay = satispay
733
2485
  @sepa_debit = sepa_debit
2486
+ @shopeepay = shopeepay
734
2487
  @sofort = sofort
2488
+ @stripe_balance = stripe_balance
735
2489
  @swish = swish
736
2490
  @twint = twint
737
2491
  @type = type
@@ -1102,6 +2856,48 @@ module Stripe
1102
2856
  end
1103
2857
  end
1104
2858
 
2859
+ class StatementDetails < ::Stripe::RequestParams
2860
+ class Address < ::Stripe::RequestParams
2861
+ # City, district, suburb, town, or village.
2862
+ attr_accessor :city
2863
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
2864
+ attr_accessor :country
2865
+ # Address line 1, such as the street, PO Box, or company name.
2866
+ attr_accessor :line1
2867
+ # Address line 2, such as the apartment, suite, unit, or building.
2868
+ attr_accessor :line2
2869
+ # ZIP or postal code.
2870
+ attr_accessor :postal_code
2871
+ # State, county, province, or region.
2872
+ attr_accessor :state
2873
+
2874
+ def initialize(
2875
+ city: nil,
2876
+ country: nil,
2877
+ line1: nil,
2878
+ line2: nil,
2879
+ postal_code: nil,
2880
+ state: nil
2881
+ )
2882
+ @city = city
2883
+ @country = country
2884
+ @line1 = line1
2885
+ @line2 = line2
2886
+ @postal_code = postal_code
2887
+ @state = state
2888
+ end
2889
+ end
2890
+ # Please pass in an address that is within your Stripe user account country
2891
+ attr_accessor :address
2892
+ # Phone number (e.g., a toll-free number that customers can call)
2893
+ attr_accessor :phone
2894
+
2895
+ def initialize(address: nil, phone: nil)
2896
+ @address = address
2897
+ @phone = phone
2898
+ end
2899
+ end
2900
+
1105
2901
  class ThreeDSecure < ::Stripe::RequestParams
1106
2902
  class NetworkOptions < ::Stripe::RequestParams
1107
2903
  class CartesBancaires < ::Stripe::RequestParams
@@ -1196,6 +2992,8 @@ module Stripe
1196
2992
  attr_accessor :moto
1197
2993
  # Selected network to process this PaymentIntent on. Depends on the available networks of the card attached to the PaymentIntent. Can be only set confirm-time.
1198
2994
  attr_accessor :network
2995
+ # Request ability to [decrement the authorization](https://stripe.com/docs/payments/decremental-authorization) for this PaymentIntent.
2996
+ attr_accessor :request_decremental_authorization
1199
2997
  # Request ability to [capture beyond the standard authorization validity window](https://stripe.com/docs/payments/extended-authorization) for this PaymentIntent.
1200
2998
  attr_accessor :request_extended_authorization
1201
2999
  # Request ability to [increment the authorization](https://stripe.com/docs/payments/incremental-authorization) for this PaymentIntent.
@@ -1204,6 +3002,8 @@ module Stripe
1204
3002
  attr_accessor :request_multicapture
1205
3003
  # Request ability to [overcapture](https://stripe.com/docs/payments/overcapture) for this PaymentIntent.
1206
3004
  attr_accessor :request_overcapture
3005
+ # Request partial authorization on this PaymentIntent.
3006
+ attr_accessor :request_partial_authorization
1207
3007
  # We strongly recommend that you rely on our SCA Engine to automatically prompt your customers for authentication based on risk level and [other requirements](https://stripe.com/docs/strong-customer-authentication). However, if you wish to request 3D Secure based on logic from your own fraud engine, provide this option. If not provided, this value defaults to `automatic`. Read our guide on [manually requesting 3D Secure](https://stripe.com/docs/payments/3d-secure/authentication-flow#manual-three-ds) for more information on how this configuration interacts with Radar and our SCA Engine.
1208
3008
  attr_accessor :request_three_d_secure
1209
3009
  # When enabled, using a card that is attached to a customer will require the CVC to be provided again (i.e. using the cvc_token parameter).
@@ -1222,6 +3022,8 @@ module Stripe
1222
3022
  attr_accessor :statement_descriptor_suffix_kana
1223
3023
  # Provides information about a card payment that customers see on their statements. Concatenated with the Kanji prefix (shortened Kanji descriptor) or Kanji statement descriptor that’s set on the account to form the complete statement descriptor. Maximum 17 characters. On card statements, the *concatenation* of both prefix and suffix (including separators) will appear truncated to 17 characters.
1224
3024
  attr_accessor :statement_descriptor_suffix_kanji
3025
+ # Statement details for this payment intent. You can use this to override the merchant details shown on your customers' statements.
3026
+ attr_accessor :statement_details
1225
3027
  # If 3D Secure authentication was performed with a third-party provider,
1226
3028
  # the authentication details to use for this payment.
1227
3029
  attr_accessor :three_d_secure
@@ -1233,15 +3035,18 @@ module Stripe
1233
3035
  mandate_options: nil,
1234
3036
  moto: nil,
1235
3037
  network: nil,
3038
+ request_decremental_authorization: nil,
1236
3039
  request_extended_authorization: nil,
1237
3040
  request_incremental_authorization: nil,
1238
3041
  request_multicapture: nil,
1239
3042
  request_overcapture: nil,
3043
+ request_partial_authorization: nil,
1240
3044
  request_three_d_secure: nil,
1241
3045
  require_cvc_recollection: nil,
1242
3046
  setup_future_usage: nil,
1243
3047
  statement_descriptor_suffix_kana: nil,
1244
3048
  statement_descriptor_suffix_kanji: nil,
3049
+ statement_details: nil,
1245
3050
  three_d_secure: nil
1246
3051
  )
1247
3052
  @capture_method = capture_method
@@ -1250,15 +3055,18 @@ module Stripe
1250
3055
  @mandate_options = mandate_options
1251
3056
  @moto = moto
1252
3057
  @network = network
3058
+ @request_decremental_authorization = request_decremental_authorization
1253
3059
  @request_extended_authorization = request_extended_authorization
1254
3060
  @request_incremental_authorization = request_incremental_authorization
1255
3061
  @request_multicapture = request_multicapture
1256
3062
  @request_overcapture = request_overcapture
3063
+ @request_partial_authorization = request_partial_authorization
1257
3064
  @request_three_d_secure = request_three_d_secure
1258
3065
  @require_cvc_recollection = require_cvc_recollection
1259
3066
  @setup_future_usage = setup_future_usage
1260
3067
  @statement_descriptor_suffix_kana = statement_descriptor_suffix_kana
1261
3068
  @statement_descriptor_suffix_kanji = statement_descriptor_suffix_kanji
3069
+ @statement_details = statement_details
1262
3070
  @three_d_secure = three_d_secure
1263
3071
  end
1264
3072
  end
@@ -1437,6 +3245,23 @@ module Stripe
1437
3245
  end
1438
3246
  end
1439
3247
 
3248
+ class Gopay < ::Stripe::RequestParams
3249
+ # Indicates that you intend to make future payments with this PaymentIntent's payment method.
3250
+ #
3251
+ # If you provide a Customer with the PaymentIntent, you can use this parameter to [attach the payment method](/payments/save-during-payment) to the Customer after the PaymentIntent is confirmed and the customer completes any required actions. If you don't provide a Customer, you can still [attach](/api/payment_methods/attach) the payment method to a Customer after the transaction completes.
3252
+ #
3253
+ # If the payment method is `card_present` and isn't a digital wallet, Stripe creates and attaches a [generated_card](/api/charges/object#charge_object-payment_method_details-card_present-generated_card) payment method representing the card to the Customer instead.
3254
+ #
3255
+ # When processing card payments, Stripe uses `setup_future_usage` to help you comply with regional legislation and network rules, such as [SCA](/strong-customer-authentication).
3256
+ #
3257
+ # If you've already set `setup_future_usage` and you're performing a request using a publishable key, you can only update the value from `on_session` to `off_session`.
3258
+ attr_accessor :setup_future_usage
3259
+
3260
+ def initialize(setup_future_usage: nil)
3261
+ @setup_future_usage = setup_future_usage
3262
+ end
3263
+ end
3264
+
1440
3265
  class Grabpay < ::Stripe::RequestParams
1441
3266
  # Indicates that you intend to make future payments with this PaymentIntent's payment method.
1442
3267
  #
@@ -1454,6 +3279,29 @@ module Stripe
1454
3279
  end
1455
3280
  end
1456
3281
 
3282
+ class IdBankTransfer < ::Stripe::RequestParams
3283
+ # The UNIX timestamp until which the virtual bank account is valid. Permitted range is from 5 minutes from now until 31 days from now. If unset, it defaults to 3 days from now.
3284
+ attr_accessor :expires_after
3285
+ # The UNIX timestamp until which the virtual bank account is valid. Permitted range is from now until 30 days from now. If unset, it defaults to 1 days from now.
3286
+ attr_accessor :expires_at
3287
+ # Indicates that you intend to make future payments with this PaymentIntent's payment method.
3288
+ #
3289
+ # If you provide a Customer with the PaymentIntent, you can use this parameter to [attach the payment method](/payments/save-during-payment) to the Customer after the PaymentIntent is confirmed and the customer completes any required actions. If you don't provide a Customer, you can still [attach](/api/payment_methods/attach) the payment method to a Customer after the transaction completes.
3290
+ #
3291
+ # If the payment method is `card_present` and isn't a digital wallet, Stripe creates and attaches a [generated_card](/api/charges/object#charge_object-payment_method_details-card_present-generated_card) payment method representing the card to the Customer instead.
3292
+ #
3293
+ # When processing card payments, Stripe uses `setup_future_usage` to help you comply with regional legislation and network rules, such as [SCA](/strong-customer-authentication).
3294
+ #
3295
+ # If you've already set `setup_future_usage` and you're performing a request using a publishable key, you can only update the value from `on_session` to `off_session`.
3296
+ attr_accessor :setup_future_usage
3297
+
3298
+ def initialize(expires_after: nil, expires_at: nil, setup_future_usage: nil)
3299
+ @expires_after = expires_after
3300
+ @expires_at = expires_at
3301
+ @setup_future_usage = setup_future_usage
3302
+ end
3303
+ end
3304
+
1457
3305
  class Ideal < ::Stripe::RequestParams
1458
3306
  # Indicates that you intend to make future payments with this PaymentIntent's payment method.
1459
3307
  #
@@ -1466,98 +3314,1031 @@ module Stripe
1466
3314
  # If you've already set `setup_future_usage` and you're performing a request using a publishable key, you can only update the value from `on_session` to `off_session`.
1467
3315
  attr_accessor :setup_future_usage
1468
3316
 
1469
- def initialize(setup_future_usage: nil)
1470
- @setup_future_usage = setup_future_usage
1471
- end
1472
- end
3317
+ def initialize(setup_future_usage: nil)
3318
+ @setup_future_usage = setup_future_usage
3319
+ end
3320
+ end
3321
+
3322
+ class InteracPresent < ::Stripe::RequestParams; end
3323
+
3324
+ class KakaoPay < ::Stripe::RequestParams
3325
+ # Controls when the funds are captured from the customer's account.
3326
+ #
3327
+ # If provided, this parameter overrides the behavior of the top-level [capture_method](/api/payment_intents/update#update_payment_intent-capture_method) for this payment method type when finalizing the payment with this payment method type.
3328
+ #
3329
+ # If `capture_method` is already set on the PaymentIntent, providing an empty value for this parameter unsets the stored value for this payment method type.
3330
+ attr_accessor :capture_method
3331
+ # Indicates that you intend to make future payments with this PaymentIntent's payment method.
3332
+ #
3333
+ # If you provide a Customer with the PaymentIntent, you can use this parameter to [attach the payment method](/payments/save-during-payment) to the Customer after the PaymentIntent is confirmed and the customer completes any required actions. If you don't provide a Customer, you can still [attach](/api/payment_methods/attach) the payment method to a Customer after the transaction completes.
3334
+ #
3335
+ # If the payment method is `card_present` and isn't a digital wallet, Stripe creates and attaches a [generated_card](/api/charges/object#charge_object-payment_method_details-card_present-generated_card) payment method representing the card to the Customer instead.
3336
+ #
3337
+ # When processing card payments, Stripe uses `setup_future_usage` to help you comply with regional legislation and network rules, such as [SCA](/strong-customer-authentication).
3338
+ attr_accessor :setup_future_usage
3339
+
3340
+ def initialize(capture_method: nil, setup_future_usage: nil)
3341
+ @capture_method = capture_method
3342
+ @setup_future_usage = setup_future_usage
3343
+ end
3344
+ end
3345
+
3346
+ class Klarna < ::Stripe::RequestParams
3347
+ class OnDemand < ::Stripe::RequestParams
3348
+ # Your average amount value. You can use a value across your customer base, or segment based on customer type, country, etc.
3349
+ attr_accessor :average_amount
3350
+ # The maximum value you may charge a customer per purchase. You can use a value across your customer base, or segment based on customer type, country, etc.
3351
+ attr_accessor :maximum_amount
3352
+ # The lowest or minimum value you may charge a customer per purchase. You can use a value across your customer base, or segment based on customer type, country, etc.
3353
+ attr_accessor :minimum_amount
3354
+ # Interval at which the customer is making purchases
3355
+ attr_accessor :purchase_interval
3356
+ # The number of `purchase_interval` between charges
3357
+ attr_accessor :purchase_interval_count
3358
+
3359
+ def initialize(
3360
+ average_amount: nil,
3361
+ maximum_amount: nil,
3362
+ minimum_amount: nil,
3363
+ purchase_interval: nil,
3364
+ purchase_interval_count: nil
3365
+ )
3366
+ @average_amount = average_amount
3367
+ @maximum_amount = maximum_amount
3368
+ @minimum_amount = minimum_amount
3369
+ @purchase_interval = purchase_interval
3370
+ @purchase_interval_count = purchase_interval_count
3371
+ end
3372
+ end
3373
+
3374
+ class Subscription < ::Stripe::RequestParams
3375
+ class NextBilling < ::Stripe::RequestParams
3376
+ # The amount of the next charge for the subscription.
3377
+ attr_accessor :amount
3378
+ # The date of the next charge for the subscription in YYYY-MM-DD format.
3379
+ attr_accessor :date
3380
+
3381
+ def initialize(amount: nil, date: nil)
3382
+ @amount = amount
3383
+ @date = date
3384
+ end
3385
+ end
3386
+ # Unit of time between subscription charges.
3387
+ attr_accessor :interval
3388
+ # The number of intervals (specified in the `interval` attribute) between subscription charges. For example, `interval=month` and `interval_count=3` charges every 3 months.
3389
+ attr_accessor :interval_count
3390
+ # Name for subscription.
3391
+ attr_accessor :name
3392
+ # Describes the upcoming charge for this subscription.
3393
+ attr_accessor :next_billing
3394
+ # A non-customer-facing reference to correlate subscription charges in the Klarna app. Use a value that persists across subscription charges.
3395
+ attr_accessor :reference
3396
+
3397
+ def initialize(
3398
+ interval: nil,
3399
+ interval_count: nil,
3400
+ name: nil,
3401
+ next_billing: nil,
3402
+ reference: nil
3403
+ )
3404
+ @interval = interval
3405
+ @interval_count = interval_count
3406
+ @name = name
3407
+ @next_billing = next_billing
3408
+ @reference = reference
3409
+ end
3410
+ end
3411
+
3412
+ class SupplementaryPurchaseData < ::Stripe::RequestParams
3413
+ class BusReservationDetail < ::Stripe::RequestParams
3414
+ class Arrival < ::Stripe::RequestParams
3415
+ class Address < ::Stripe::RequestParams
3416
+ # The city or town.
3417
+ attr_accessor :city
3418
+ # The country in ISO 3166-1 alpha-2 format.
3419
+ attr_accessor :country
3420
+ # The postal code formatted according to country.
3421
+ attr_accessor :postal_code
3422
+ # The state, county, province, or region formatted according to country.
3423
+ attr_accessor :region
3424
+ # Line 1 of the street address.
3425
+ attr_accessor :street_address
3426
+ # Line 2 of the street address.
3427
+ attr_accessor :street_address2
3428
+
3429
+ def initialize(
3430
+ city: nil,
3431
+ country: nil,
3432
+ postal_code: nil,
3433
+ region: nil,
3434
+ street_address: nil,
3435
+ street_address2: nil
3436
+ )
3437
+ @city = city
3438
+ @country = country
3439
+ @postal_code = postal_code
3440
+ @region = region
3441
+ @street_address = street_address
3442
+ @street_address2 = street_address2
3443
+ end
3444
+ end
3445
+ # Address of the arrival location.
3446
+ attr_accessor :address
3447
+ # Identifier name or reference for the arrival location.
3448
+ attr_accessor :arrival_location
3449
+
3450
+ def initialize(address: nil, arrival_location: nil)
3451
+ @address = address
3452
+ @arrival_location = arrival_location
3453
+ end
3454
+ end
3455
+
3456
+ class Departure < ::Stripe::RequestParams
3457
+ class Address < ::Stripe::RequestParams
3458
+ # The city or town.
3459
+ attr_accessor :city
3460
+ # The country in ISO 3166-1 alpha-2 format.
3461
+ attr_accessor :country
3462
+ # The postal code formatted according to country.
3463
+ attr_accessor :postal_code
3464
+ # The state, county, province, or region formatted according to country.
3465
+ attr_accessor :region
3466
+ # Line 1 of the street address.
3467
+ attr_accessor :street_address
3468
+ # Line 2 of the street address.
3469
+ attr_accessor :street_address2
3470
+
3471
+ def initialize(
3472
+ city: nil,
3473
+ country: nil,
3474
+ postal_code: nil,
3475
+ region: nil,
3476
+ street_address: nil,
3477
+ street_address2: nil
3478
+ )
3479
+ @city = city
3480
+ @country = country
3481
+ @postal_code = postal_code
3482
+ @region = region
3483
+ @street_address = street_address
3484
+ @street_address2 = street_address2
3485
+ end
3486
+ end
3487
+ # Address of the departure location.
3488
+ attr_accessor :address
3489
+ # Timestamp of departure.
3490
+ attr_accessor :departs_at
3491
+ # Identifier name or reference for the origin location.
3492
+ attr_accessor :departure_location
3493
+
3494
+ def initialize(address: nil, departs_at: nil, departure_location: nil)
3495
+ @address = address
3496
+ @departs_at = departs_at
3497
+ @departure_location = departure_location
3498
+ end
3499
+ end
3500
+
3501
+ class Insurance < ::Stripe::RequestParams
3502
+ # Insurance currency.
3503
+ attr_accessor :currency
3504
+ # Name of the company providing the insurance.
3505
+ attr_accessor :insurance_company_name
3506
+ # Type of insurance.
3507
+ attr_accessor :insurance_type
3508
+ # Price of insurance in cents.
3509
+ attr_accessor :price
3510
+
3511
+ def initialize(
3512
+ currency: nil,
3513
+ insurance_company_name: nil,
3514
+ insurance_type: nil,
3515
+ price: nil
3516
+ )
3517
+ @currency = currency
3518
+ @insurance_company_name = insurance_company_name
3519
+ @insurance_type = insurance_type
3520
+ @price = price
3521
+ end
3522
+ end
3523
+
3524
+ class Passenger < ::Stripe::RequestParams
3525
+ # The family name of the person.
3526
+ attr_accessor :family_name
3527
+ # The given name of the person.
3528
+ attr_accessor :given_name
3529
+
3530
+ def initialize(family_name: nil, given_name: nil)
3531
+ @family_name = family_name
3532
+ @given_name = given_name
3533
+ end
3534
+ end
3535
+ # Name of associated or partner company for the service.
3536
+ attr_accessor :affiliate_name
3537
+ # Arrival details.
3538
+ attr_accessor :arrival
3539
+ # Name of transportation company.
3540
+ attr_accessor :carrier_name
3541
+ # Currency.
3542
+ attr_accessor :currency
3543
+ # Departure details.
3544
+ attr_accessor :departure
3545
+ # List of insurances for this reservation.
3546
+ attr_accessor :insurances
3547
+ # List of passengers that this reservation applies to.
3548
+ attr_accessor :passengers
3549
+ # Price in cents.
3550
+ attr_accessor :price
3551
+ # Ticket class.
3552
+ attr_accessor :ticket_class
3553
+
3554
+ def initialize(
3555
+ affiliate_name: nil,
3556
+ arrival: nil,
3557
+ carrier_name: nil,
3558
+ currency: nil,
3559
+ departure: nil,
3560
+ insurances: nil,
3561
+ passengers: nil,
3562
+ price: nil,
3563
+ ticket_class: nil
3564
+ )
3565
+ @affiliate_name = affiliate_name
3566
+ @arrival = arrival
3567
+ @carrier_name = carrier_name
3568
+ @currency = currency
3569
+ @departure = departure
3570
+ @insurances = insurances
3571
+ @passengers = passengers
3572
+ @price = price
3573
+ @ticket_class = ticket_class
3574
+ end
3575
+ end
3576
+
3577
+ class EventReservationDetail < ::Stripe::RequestParams
3578
+ class Address < ::Stripe::RequestParams
3579
+ # The city or town.
3580
+ attr_accessor :city
3581
+ # The country in ISO 3166-1 alpha-2 format.
3582
+ attr_accessor :country
3583
+ # The postal code formatted according to country.
3584
+ attr_accessor :postal_code
3585
+ # The state, county, province, or region formatted according to country.
3586
+ attr_accessor :region
3587
+ # Line 1 of the street address.
3588
+ attr_accessor :street_address
3589
+ # Line 2 of the street address.
3590
+ attr_accessor :street_address2
3591
+
3592
+ def initialize(
3593
+ city: nil,
3594
+ country: nil,
3595
+ postal_code: nil,
3596
+ region: nil,
3597
+ street_address: nil,
3598
+ street_address2: nil
3599
+ )
3600
+ @city = city
3601
+ @country = country
3602
+ @postal_code = postal_code
3603
+ @region = region
3604
+ @street_address = street_address
3605
+ @street_address2 = street_address2
3606
+ end
3607
+ end
3608
+
3609
+ class Insurance < ::Stripe::RequestParams
3610
+ # Insurance currency.
3611
+ attr_accessor :currency
3612
+ # Name of the company providing the insurance.
3613
+ attr_accessor :insurance_company_name
3614
+ # Type of insurance.
3615
+ attr_accessor :insurance_type
3616
+ # Price of insurance in cents.
3617
+ attr_accessor :price
3618
+
3619
+ def initialize(
3620
+ currency: nil,
3621
+ insurance_company_name: nil,
3622
+ insurance_type: nil,
3623
+ price: nil
3624
+ )
3625
+ @currency = currency
3626
+ @insurance_company_name = insurance_company_name
3627
+ @insurance_type = insurance_type
3628
+ @price = price
3629
+ end
3630
+ end
3631
+ # Indicates if the tickets are digitally checked when entering the venue.
3632
+ attr_accessor :access_controlled_venue
3633
+ # Address of the event.
3634
+ attr_accessor :address
3635
+ # Name of associated or partner company for the service.
3636
+ attr_accessor :affiliate_name
3637
+ # End timestamp of the event.
3638
+ attr_accessor :ends_at
3639
+ # Company selling the ticket.
3640
+ attr_accessor :event_company_name
3641
+ # Name of the event.
3642
+ attr_accessor :event_name
3643
+ # Type of the event.
3644
+ attr_accessor :event_type
3645
+ # List of insurances for this event.
3646
+ attr_accessor :insurances
3647
+ # Start timestamp of the event.
3648
+ attr_accessor :starts_at
3649
+ # Name of the venue where the event takes place.
3650
+ attr_accessor :venue_name
3651
+
3652
+ def initialize(
3653
+ access_controlled_venue: nil,
3654
+ address: nil,
3655
+ affiliate_name: nil,
3656
+ ends_at: nil,
3657
+ event_company_name: nil,
3658
+ event_name: nil,
3659
+ event_type: nil,
3660
+ insurances: nil,
3661
+ starts_at: nil,
3662
+ venue_name: nil
3663
+ )
3664
+ @access_controlled_venue = access_controlled_venue
3665
+ @address = address
3666
+ @affiliate_name = affiliate_name
3667
+ @ends_at = ends_at
3668
+ @event_company_name = event_company_name
3669
+ @event_name = event_name
3670
+ @event_type = event_type
3671
+ @insurances = insurances
3672
+ @starts_at = starts_at
3673
+ @venue_name = venue_name
3674
+ end
3675
+ end
3676
+
3677
+ class FerryReservationDetail < ::Stripe::RequestParams
3678
+ class Arrival < ::Stripe::RequestParams
3679
+ class Address < ::Stripe::RequestParams
3680
+ # The city or town.
3681
+ attr_accessor :city
3682
+ # The country in ISO 3166-1 alpha-2 format.
3683
+ attr_accessor :country
3684
+ # The postal code formatted according to country.
3685
+ attr_accessor :postal_code
3686
+ # The state, county, province, or region formatted according to country.
3687
+ attr_accessor :region
3688
+ # Line 1 of the street address.
3689
+ attr_accessor :street_address
3690
+ # Line 2 of the street address.
3691
+ attr_accessor :street_address2
3692
+
3693
+ def initialize(
3694
+ city: nil,
3695
+ country: nil,
3696
+ postal_code: nil,
3697
+ region: nil,
3698
+ street_address: nil,
3699
+ street_address2: nil
3700
+ )
3701
+ @city = city
3702
+ @country = country
3703
+ @postal_code = postal_code
3704
+ @region = region
3705
+ @street_address = street_address
3706
+ @street_address2 = street_address2
3707
+ end
3708
+ end
3709
+ # Address of the arrival location.
3710
+ attr_accessor :address
3711
+ # Identifier name or reference for the arrival location.
3712
+ attr_accessor :arrival_location
3713
+
3714
+ def initialize(address: nil, arrival_location: nil)
3715
+ @address = address
3716
+ @arrival_location = arrival_location
3717
+ end
3718
+ end
3719
+
3720
+ class Departure < ::Stripe::RequestParams
3721
+ class Address < ::Stripe::RequestParams
3722
+ # The city or town.
3723
+ attr_accessor :city
3724
+ # The country in ISO 3166-1 alpha-2 format.
3725
+ attr_accessor :country
3726
+ # The postal code formatted according to country.
3727
+ attr_accessor :postal_code
3728
+ # The state, county, province, or region formatted according to country.
3729
+ attr_accessor :region
3730
+ # Line 1 of the street address.
3731
+ attr_accessor :street_address
3732
+ # Line 2 of the street address.
3733
+ attr_accessor :street_address2
3734
+
3735
+ def initialize(
3736
+ city: nil,
3737
+ country: nil,
3738
+ postal_code: nil,
3739
+ region: nil,
3740
+ street_address: nil,
3741
+ street_address2: nil
3742
+ )
3743
+ @city = city
3744
+ @country = country
3745
+ @postal_code = postal_code
3746
+ @region = region
3747
+ @street_address = street_address
3748
+ @street_address2 = street_address2
3749
+ end
3750
+ end
3751
+ # Address of the departure location.
3752
+ attr_accessor :address
3753
+ # Timestamp of departure.
3754
+ attr_accessor :departs_at
3755
+ # Identifier name or reference for the origin location.
3756
+ attr_accessor :departure_location
3757
+
3758
+ def initialize(address: nil, departs_at: nil, departure_location: nil)
3759
+ @address = address
3760
+ @departs_at = departs_at
3761
+ @departure_location = departure_location
3762
+ end
3763
+ end
3764
+
3765
+ class Insurance < ::Stripe::RequestParams
3766
+ # Insurance currency.
3767
+ attr_accessor :currency
3768
+ # Name of the company providing the insurance.
3769
+ attr_accessor :insurance_company_name
3770
+ # Type of insurance.
3771
+ attr_accessor :insurance_type
3772
+ # Price of insurance in cents.
3773
+ attr_accessor :price
3774
+
3775
+ def initialize(
3776
+ currency: nil,
3777
+ insurance_company_name: nil,
3778
+ insurance_type: nil,
3779
+ price: nil
3780
+ )
3781
+ @currency = currency
3782
+ @insurance_company_name = insurance_company_name
3783
+ @insurance_type = insurance_type
3784
+ @price = price
3785
+ end
3786
+ end
3787
+
3788
+ class Passenger < ::Stripe::RequestParams
3789
+ # The family name of the person.
3790
+ attr_accessor :family_name
3791
+ # The given name of the person.
3792
+ attr_accessor :given_name
3793
+
3794
+ def initialize(family_name: nil, given_name: nil)
3795
+ @family_name = family_name
3796
+ @given_name = given_name
3797
+ end
3798
+ end
3799
+ # Name of associated or partner company for the service.
3800
+ attr_accessor :affiliate_name
3801
+ # Arrival details.
3802
+ attr_accessor :arrival
3803
+ # Name of transportation company.
3804
+ attr_accessor :carrier_name
3805
+ # Currency.
3806
+ attr_accessor :currency
3807
+ # Departure details.
3808
+ attr_accessor :departure
3809
+ # List of insurances for this reservation.
3810
+ attr_accessor :insurances
3811
+ # List of passengers that this reservation applies to.
3812
+ attr_accessor :passengers
3813
+ # Price in cents.
3814
+ attr_accessor :price
3815
+ # Ticket class.
3816
+ attr_accessor :ticket_class
3817
+
3818
+ def initialize(
3819
+ affiliate_name: nil,
3820
+ arrival: nil,
3821
+ carrier_name: nil,
3822
+ currency: nil,
3823
+ departure: nil,
3824
+ insurances: nil,
3825
+ passengers: nil,
3826
+ price: nil,
3827
+ ticket_class: nil
3828
+ )
3829
+ @affiliate_name = affiliate_name
3830
+ @arrival = arrival
3831
+ @carrier_name = carrier_name
3832
+ @currency = currency
3833
+ @departure = departure
3834
+ @insurances = insurances
3835
+ @passengers = passengers
3836
+ @price = price
3837
+ @ticket_class = ticket_class
3838
+ end
3839
+ end
3840
+
3841
+ class Insurance < ::Stripe::RequestParams
3842
+ # Insurance currency.
3843
+ attr_accessor :currency
3844
+ # Name of the company providing the insurance.
3845
+ attr_accessor :insurance_company_name
3846
+ # Type of insurance
3847
+ attr_accessor :insurance_type
3848
+ # Price of insurance in cents.
3849
+ attr_accessor :price
3850
+
3851
+ def initialize(
3852
+ currency: nil,
3853
+ insurance_company_name: nil,
3854
+ insurance_type: nil,
3855
+ price: nil
3856
+ )
3857
+ @currency = currency
3858
+ @insurance_company_name = insurance_company_name
3859
+ @insurance_type = insurance_type
3860
+ @price = price
3861
+ end
3862
+ end
3863
+
3864
+ class MarketplaceSeller < ::Stripe::RequestParams
3865
+ class MarketplaceSellerAddress < ::Stripe::RequestParams
3866
+ # The city or town.
3867
+ attr_accessor :city
3868
+ # The country in ISO 3166-1 alpha-2 format.
3869
+ attr_accessor :country
3870
+ # The postal code formatted according to country.
3871
+ attr_accessor :postal_code
3872
+ # The state, county, province, or region formatted according to country.
3873
+ attr_accessor :region
3874
+ # Line 1 of the street address.
3875
+ attr_accessor :street_address
3876
+ # Line 2 of the street address.
3877
+ attr_accessor :street_address2
3878
+
3879
+ def initialize(
3880
+ city: nil,
3881
+ country: nil,
3882
+ postal_code: nil,
3883
+ region: nil,
3884
+ street_address: nil,
3885
+ street_address2: nil
3886
+ )
3887
+ @city = city
3888
+ @country = country
3889
+ @postal_code = postal_code
3890
+ @region = region
3891
+ @street_address = street_address
3892
+ @street_address2 = street_address2
3893
+ end
3894
+ end
3895
+ # The references to line items for purchases with multiple associated sub-sellers.
3896
+ attr_accessor :line_item_references
3897
+ # The address of the selling or delivering merchant.
3898
+ attr_accessor :marketplace_seller_address
3899
+ # The name of the marketplace seller.
3900
+ attr_accessor :marketplace_seller_name
3901
+ # The unique identifier for the marketplace seller.
3902
+ attr_accessor :marketplace_seller_reference
3903
+ # The number of transactions the sub-seller completed in the last 12 months.
3904
+ attr_accessor :number_of_transactions
3905
+ # The category of the product.
3906
+ attr_accessor :product_category
3907
+ # The date when the seller's account with the marketplace was last logged in.
3908
+ attr_accessor :seller_last_login_at
3909
+ # The current rating of the marketplace seller. If the marketplace uses numeric ranking, map these to the enum values.
3910
+ attr_accessor :seller_rating
3911
+ # The date when the seller's account with the marketplace was created.
3912
+ attr_accessor :seller_registered_at
3913
+ # The date when the seller's account with the marketplace was last updated.
3914
+ attr_accessor :seller_updated_at
3915
+ # The references to shipping addresses for purchases with multiple associated sub-sellers.
3916
+ attr_accessor :shipping_references
3917
+ # The accumulated amount of sales transactions made by the sub-merchant or sub-seller within the past 12 months in the payment currency. These transactions are in minor currency units.
3918
+ attr_accessor :volume_of_transactions
3919
+
3920
+ def initialize(
3921
+ line_item_references: nil,
3922
+ marketplace_seller_address: nil,
3923
+ marketplace_seller_name: nil,
3924
+ marketplace_seller_reference: nil,
3925
+ number_of_transactions: nil,
3926
+ product_category: nil,
3927
+ seller_last_login_at: nil,
3928
+ seller_rating: nil,
3929
+ seller_registered_at: nil,
3930
+ seller_updated_at: nil,
3931
+ shipping_references: nil,
3932
+ volume_of_transactions: nil
3933
+ )
3934
+ @line_item_references = line_item_references
3935
+ @marketplace_seller_address = marketplace_seller_address
3936
+ @marketplace_seller_name = marketplace_seller_name
3937
+ @marketplace_seller_reference = marketplace_seller_reference
3938
+ @number_of_transactions = number_of_transactions
3939
+ @product_category = product_category
3940
+ @seller_last_login_at = seller_last_login_at
3941
+ @seller_rating = seller_rating
3942
+ @seller_registered_at = seller_registered_at
3943
+ @seller_updated_at = seller_updated_at
3944
+ @shipping_references = shipping_references
3945
+ @volume_of_transactions = volume_of_transactions
3946
+ end
3947
+ end
3948
+
3949
+ class RoundTripReservationDetail < ::Stripe::RequestParams
3950
+ class Arrival < ::Stripe::RequestParams
3951
+ class Address < ::Stripe::RequestParams
3952
+ # The city or town.
3953
+ attr_accessor :city
3954
+ # The country in ISO 3166-1 alpha-2 format.
3955
+ attr_accessor :country
3956
+ # The postal code formatted according to country.
3957
+ attr_accessor :postal_code
3958
+ # The state, county, province, or region formatted according to country.
3959
+ attr_accessor :region
3960
+ # Line 1 of the street address.
3961
+ attr_accessor :street_address
3962
+ # Line 2 of the street address.
3963
+ attr_accessor :street_address2
3964
+
3965
+ def initialize(
3966
+ city: nil,
3967
+ country: nil,
3968
+ postal_code: nil,
3969
+ region: nil,
3970
+ street_address: nil,
3971
+ street_address2: nil
3972
+ )
3973
+ @city = city
3974
+ @country = country
3975
+ @postal_code = postal_code
3976
+ @region = region
3977
+ @street_address = street_address
3978
+ @street_address2 = street_address2
3979
+ end
3980
+ end
3981
+ # Address of the arrival location.
3982
+ attr_accessor :address
3983
+ # Identifier name or reference for the arrival location.
3984
+ attr_accessor :arrival_location
3985
+
3986
+ def initialize(address: nil, arrival_location: nil)
3987
+ @address = address
3988
+ @arrival_location = arrival_location
3989
+ end
3990
+ end
3991
+
3992
+ class Departure < ::Stripe::RequestParams
3993
+ class Address < ::Stripe::RequestParams
3994
+ # The city or town.
3995
+ attr_accessor :city
3996
+ # The country in ISO 3166-1 alpha-2 format.
3997
+ attr_accessor :country
3998
+ # The postal code formatted according to country.
3999
+ attr_accessor :postal_code
4000
+ # The state, county, province, or region formatted according to country.
4001
+ attr_accessor :region
4002
+ # Line 1 of the street address.
4003
+ attr_accessor :street_address
4004
+ # Line 2 of the street address.
4005
+ attr_accessor :street_address2
4006
+
4007
+ def initialize(
4008
+ city: nil,
4009
+ country: nil,
4010
+ postal_code: nil,
4011
+ region: nil,
4012
+ street_address: nil,
4013
+ street_address2: nil
4014
+ )
4015
+ @city = city
4016
+ @country = country
4017
+ @postal_code = postal_code
4018
+ @region = region
4019
+ @street_address = street_address
4020
+ @street_address2 = street_address2
4021
+ end
4022
+ end
4023
+ # Address of the departure location.
4024
+ attr_accessor :address
4025
+ # Timestamp of departure.
4026
+ attr_accessor :departs_at
4027
+ # Identifier name or reference for the origin location.
4028
+ attr_accessor :departure_location
4029
+
4030
+ def initialize(address: nil, departs_at: nil, departure_location: nil)
4031
+ @address = address
4032
+ @departs_at = departs_at
4033
+ @departure_location = departure_location
4034
+ end
4035
+ end
4036
+
4037
+ class Insurance < ::Stripe::RequestParams
4038
+ # Insurance currency.
4039
+ attr_accessor :currency
4040
+ # Name of the company providing the insurance.
4041
+ attr_accessor :insurance_company_name
4042
+ # Type of insurance.
4043
+ attr_accessor :insurance_type
4044
+ # Price of insurance in cents.
4045
+ attr_accessor :price
4046
+
4047
+ def initialize(
4048
+ currency: nil,
4049
+ insurance_company_name: nil,
4050
+ insurance_type: nil,
4051
+ price: nil
4052
+ )
4053
+ @currency = currency
4054
+ @insurance_company_name = insurance_company_name
4055
+ @insurance_type = insurance_type
4056
+ @price = price
4057
+ end
4058
+ end
1473
4059
 
1474
- class InteracPresent < ::Stripe::RequestParams; end
4060
+ class Passenger < ::Stripe::RequestParams
4061
+ # The family name of the person.
4062
+ attr_accessor :family_name
4063
+ # The given name of the person.
4064
+ attr_accessor :given_name
1475
4065
 
1476
- class KakaoPay < ::Stripe::RequestParams
1477
- # Controls when the funds are captured from the customer's account.
1478
- #
1479
- # If provided, this parameter overrides the behavior of the top-level [capture_method](/api/payment_intents/update#update_payment_intent-capture_method) for this payment method type when finalizing the payment with this payment method type.
1480
- #
1481
- # If `capture_method` is already set on the PaymentIntent, providing an empty value for this parameter unsets the stored value for this payment method type.
1482
- attr_accessor :capture_method
1483
- # Indicates that you intend to make future payments with this PaymentIntent's payment method.
1484
- #
1485
- # If you provide a Customer with the PaymentIntent, you can use this parameter to [attach the payment method](/payments/save-during-payment) to the Customer after the PaymentIntent is confirmed and the customer completes any required actions. If you don't provide a Customer, you can still [attach](/api/payment_methods/attach) the payment method to a Customer after the transaction completes.
1486
- #
1487
- # If the payment method is `card_present` and isn't a digital wallet, Stripe creates and attaches a [generated_card](/api/charges/object#charge_object-payment_method_details-card_present-generated_card) payment method representing the card to the Customer instead.
1488
- #
1489
- # When processing card payments, Stripe uses `setup_future_usage` to help you comply with regional legislation and network rules, such as [SCA](/strong-customer-authentication).
1490
- attr_accessor :setup_future_usage
4066
+ def initialize(family_name: nil, given_name: nil)
4067
+ @family_name = family_name
4068
+ @given_name = given_name
4069
+ end
4070
+ end
4071
+ # Name of associated or partner company for the service.
4072
+ attr_accessor :affiliate_name
4073
+ # Arrival details.
4074
+ attr_accessor :arrival
4075
+ # Name of transportation company.
4076
+ attr_accessor :carrier_name
4077
+ # Currency.
4078
+ attr_accessor :currency
4079
+ # Departure details.
4080
+ attr_accessor :departure
4081
+ # List of insurances for this reservation.
4082
+ attr_accessor :insurances
4083
+ # List of passengers that this reservation applies to.
4084
+ attr_accessor :passengers
4085
+ # Price in cents.
4086
+ attr_accessor :price
4087
+ # Ticket class.
4088
+ attr_accessor :ticket_class
1491
4089
 
1492
- def initialize(capture_method: nil, setup_future_usage: nil)
1493
- @capture_method = capture_method
1494
- @setup_future_usage = setup_future_usage
1495
- end
1496
- end
4090
+ def initialize(
4091
+ affiliate_name: nil,
4092
+ arrival: nil,
4093
+ carrier_name: nil,
4094
+ currency: nil,
4095
+ departure: nil,
4096
+ insurances: nil,
4097
+ passengers: nil,
4098
+ price: nil,
4099
+ ticket_class: nil
4100
+ )
4101
+ @affiliate_name = affiliate_name
4102
+ @arrival = arrival
4103
+ @carrier_name = carrier_name
4104
+ @currency = currency
4105
+ @departure = departure
4106
+ @insurances = insurances
4107
+ @passengers = passengers
4108
+ @price = price
4109
+ @ticket_class = ticket_class
4110
+ end
4111
+ end
1497
4112
 
1498
- class Klarna < ::Stripe::RequestParams
1499
- class OnDemand < ::Stripe::RequestParams
1500
- # Your average amount value. You can use a value across your customer base, or segment based on customer type, country, etc.
1501
- attr_accessor :average_amount
1502
- # The maximum value you may charge a customer per purchase. You can use a value across your customer base, or segment based on customer type, country, etc.
1503
- attr_accessor :maximum_amount
1504
- # The lowest or minimum value you may charge a customer per purchase. You can use a value across your customer base, or segment based on customer type, country, etc.
1505
- attr_accessor :minimum_amount
1506
- # Interval at which the customer is making purchases
1507
- attr_accessor :purchase_interval
1508
- # The number of `purchase_interval` between charges
1509
- attr_accessor :purchase_interval_count
4113
+ class TrainReservationDetail < ::Stripe::RequestParams
4114
+ class Arrival < ::Stripe::RequestParams
4115
+ class Address < ::Stripe::RequestParams
4116
+ # The city or town.
4117
+ attr_accessor :city
4118
+ # The country in ISO 3166-1 alpha-2 format.
4119
+ attr_accessor :country
4120
+ # The postal code formatted according to country.
4121
+ attr_accessor :postal_code
4122
+ # The state, county, province, or region formatted according to country.
4123
+ attr_accessor :region
4124
+ # Line 1 of the street address.
4125
+ attr_accessor :street_address
4126
+ # Line 2 of the street address.
4127
+ attr_accessor :street_address2
4128
+
4129
+ def initialize(
4130
+ city: nil,
4131
+ country: nil,
4132
+ postal_code: nil,
4133
+ region: nil,
4134
+ street_address: nil,
4135
+ street_address2: nil
4136
+ )
4137
+ @city = city
4138
+ @country = country
4139
+ @postal_code = postal_code
4140
+ @region = region
4141
+ @street_address = street_address
4142
+ @street_address2 = street_address2
4143
+ end
4144
+ end
4145
+ # Address of the arrival location.
4146
+ attr_accessor :address
4147
+ # Identifier name or reference for the arrival location.
4148
+ attr_accessor :arrival_location
4149
+
4150
+ def initialize(address: nil, arrival_location: nil)
4151
+ @address = address
4152
+ @arrival_location = arrival_location
4153
+ end
4154
+ end
1510
4155
 
1511
- def initialize(
1512
- average_amount: nil,
1513
- maximum_amount: nil,
1514
- minimum_amount: nil,
1515
- purchase_interval: nil,
1516
- purchase_interval_count: nil
1517
- )
1518
- @average_amount = average_amount
1519
- @maximum_amount = maximum_amount
1520
- @minimum_amount = minimum_amount
1521
- @purchase_interval = purchase_interval
1522
- @purchase_interval_count = purchase_interval_count
4156
+ class Departure < ::Stripe::RequestParams
4157
+ class Address < ::Stripe::RequestParams
4158
+ # The city or town.
4159
+ attr_accessor :city
4160
+ # The country in ISO 3166-1 alpha-2 format.
4161
+ attr_accessor :country
4162
+ # The postal code formatted according to country.
4163
+ attr_accessor :postal_code
4164
+ # The state, county, province, or region formatted according to country.
4165
+ attr_accessor :region
4166
+ # Line 1 of the street address.
4167
+ attr_accessor :street_address
4168
+ # Line 2 of the street address.
4169
+ attr_accessor :street_address2
4170
+
4171
+ def initialize(
4172
+ city: nil,
4173
+ country: nil,
4174
+ postal_code: nil,
4175
+ region: nil,
4176
+ street_address: nil,
4177
+ street_address2: nil
4178
+ )
4179
+ @city = city
4180
+ @country = country
4181
+ @postal_code = postal_code
4182
+ @region = region
4183
+ @street_address = street_address
4184
+ @street_address2 = street_address2
4185
+ end
4186
+ end
4187
+ # Address of the departure location.
4188
+ attr_accessor :address
4189
+ # Timestamp of departure.
4190
+ attr_accessor :departs_at
4191
+ # Identifier name or reference for the origin location.
4192
+ attr_accessor :departure_location
4193
+
4194
+ def initialize(address: nil, departs_at: nil, departure_location: nil)
4195
+ @address = address
4196
+ @departs_at = departs_at
4197
+ @departure_location = departure_location
4198
+ end
4199
+ end
4200
+
4201
+ class Insurance < ::Stripe::RequestParams
4202
+ # Insurance currency.
4203
+ attr_accessor :currency
4204
+ # Name of the company providing the insurance.
4205
+ attr_accessor :insurance_company_name
4206
+ # Type of insurance.
4207
+ attr_accessor :insurance_type
4208
+ # Price of insurance in cents.
4209
+ attr_accessor :price
4210
+
4211
+ def initialize(
4212
+ currency: nil,
4213
+ insurance_company_name: nil,
4214
+ insurance_type: nil,
4215
+ price: nil
4216
+ )
4217
+ @currency = currency
4218
+ @insurance_company_name = insurance_company_name
4219
+ @insurance_type = insurance_type
4220
+ @price = price
4221
+ end
4222
+ end
4223
+
4224
+ class Passenger < ::Stripe::RequestParams
4225
+ # The family name of the person.
4226
+ attr_accessor :family_name
4227
+ # The given name of the person.
4228
+ attr_accessor :given_name
4229
+
4230
+ def initialize(family_name: nil, given_name: nil)
4231
+ @family_name = family_name
4232
+ @given_name = given_name
4233
+ end
4234
+ end
4235
+ # Name of associated or partner company for the service.
4236
+ attr_accessor :affiliate_name
4237
+ # Arrival details.
4238
+ attr_accessor :arrival
4239
+ # Name of transportation company.
4240
+ attr_accessor :carrier_name
4241
+ # Currency.
4242
+ attr_accessor :currency
4243
+ # Departure details.
4244
+ attr_accessor :departure
4245
+ # List of insurances for this reservation.
4246
+ attr_accessor :insurances
4247
+ # List of passengers that this reservation applies to.
4248
+ attr_accessor :passengers
4249
+ # Price in cents.
4250
+ attr_accessor :price
4251
+ # Ticket class.
4252
+ attr_accessor :ticket_class
4253
+
4254
+ def initialize(
4255
+ affiliate_name: nil,
4256
+ arrival: nil,
4257
+ carrier_name: nil,
4258
+ currency: nil,
4259
+ departure: nil,
4260
+ insurances: nil,
4261
+ passengers: nil,
4262
+ price: nil,
4263
+ ticket_class: nil
4264
+ )
4265
+ @affiliate_name = affiliate_name
4266
+ @arrival = arrival
4267
+ @carrier_name = carrier_name
4268
+ @currency = currency
4269
+ @departure = departure
4270
+ @insurances = insurances
4271
+ @passengers = passengers
4272
+ @price = price
4273
+ @ticket_class = ticket_class
4274
+ end
1523
4275
  end
1524
- end
1525
4276
 
1526
- class Subscription < ::Stripe::RequestParams
1527
- class NextBilling < ::Stripe::RequestParams
1528
- # The amount of the next charge for the subscription.
1529
- attr_accessor :amount
1530
- # The date of the next charge for the subscription in YYYY-MM-DD format.
1531
- attr_accessor :date
4277
+ class Voucher < ::Stripe::RequestParams
4278
+ # Name of associated or partner company for this voucher.
4279
+ attr_accessor :affiliate_name
4280
+ # The voucher validity end time.
4281
+ attr_accessor :ends_at
4282
+ # The voucher validity start time.
4283
+ attr_accessor :starts_at
4284
+ # The issuer or provider of this voucher.
4285
+ attr_accessor :voucher_company
4286
+ # The name or reference to identify the voucher.
4287
+ attr_accessor :voucher_name
4288
+ # The type of this voucher.
4289
+ attr_accessor :voucher_type
1532
4290
 
1533
- def initialize(amount: nil, date: nil)
1534
- @amount = amount
1535
- @date = date
4291
+ def initialize(
4292
+ affiliate_name: nil,
4293
+ ends_at: nil,
4294
+ starts_at: nil,
4295
+ voucher_company: nil,
4296
+ voucher_name: nil,
4297
+ voucher_type: nil
4298
+ )
4299
+ @affiliate_name = affiliate_name
4300
+ @ends_at = ends_at
4301
+ @starts_at = starts_at
4302
+ @voucher_company = voucher_company
4303
+ @voucher_name = voucher_name
4304
+ @voucher_type = voucher_type
1536
4305
  end
1537
4306
  end
1538
- # Unit of time between subscription charges.
1539
- attr_accessor :interval
1540
- # The number of intervals (specified in the `interval` attribute) between subscription charges. For example, `interval=month` and `interval_count=3` charges every 3 months.
1541
- attr_accessor :interval_count
1542
- # Name for subscription.
1543
- attr_accessor :name
1544
- # Describes the upcoming charge for this subscription.
1545
- attr_accessor :next_billing
1546
- # A non-customer-facing reference to correlate subscription charges in the Klarna app. Use a value that persists across subscription charges.
1547
- attr_accessor :reference
4307
+ # Supplementary bus reservation details.
4308
+ attr_accessor :bus_reservation_details
4309
+ # Supplementary event reservation details.
4310
+ attr_accessor :event_reservation_details
4311
+ # Supplementary ferry reservation details.
4312
+ attr_accessor :ferry_reservation_details
4313
+ # Supplementary insurance details.
4314
+ attr_accessor :insurances
4315
+ # Supplementary marketplace seller details.
4316
+ attr_accessor :marketplace_sellers
4317
+ # Supplementary round trip reservation details.
4318
+ attr_accessor :round_trip_reservation_details
4319
+ # Supplementary train reservation details.
4320
+ attr_accessor :train_reservation_details
4321
+ # Voucher details, such as a gift card or discount code.
4322
+ attr_accessor :vouchers
1548
4323
 
1549
4324
  def initialize(
1550
- interval: nil,
1551
- interval_count: nil,
1552
- name: nil,
1553
- next_billing: nil,
1554
- reference: nil
4325
+ bus_reservation_details: nil,
4326
+ event_reservation_details: nil,
4327
+ ferry_reservation_details: nil,
4328
+ insurances: nil,
4329
+ marketplace_sellers: nil,
4330
+ round_trip_reservation_details: nil,
4331
+ train_reservation_details: nil,
4332
+ vouchers: nil
1555
4333
  )
1556
- @interval = interval
1557
- @interval_count = interval_count
1558
- @name = name
1559
- @next_billing = next_billing
1560
- @reference = reference
4334
+ @bus_reservation_details = bus_reservation_details
4335
+ @event_reservation_details = event_reservation_details
4336
+ @ferry_reservation_details = ferry_reservation_details
4337
+ @insurances = insurances
4338
+ @marketplace_sellers = marketplace_sellers
4339
+ @round_trip_reservation_details = round_trip_reservation_details
4340
+ @train_reservation_details = train_reservation_details
4341
+ @vouchers = vouchers
1561
4342
  end
1562
4343
  end
1563
4344
  # Controls when the funds are captured from the customer's account.
@@ -1582,19 +4363,23 @@ module Stripe
1582
4363
  attr_accessor :setup_future_usage
1583
4364
  # Subscription details if setting up or charging a subscription.
1584
4365
  attr_accessor :subscriptions
4366
+ # Supplementary Purchase Data for the corresponding Klarna payment
4367
+ attr_accessor :supplementary_purchase_data
1585
4368
 
1586
4369
  def initialize(
1587
4370
  capture_method: nil,
1588
4371
  on_demand: nil,
1589
4372
  preferred_locale: nil,
1590
4373
  setup_future_usage: nil,
1591
- subscriptions: nil
4374
+ subscriptions: nil,
4375
+ supplementary_purchase_data: nil
1592
4376
  )
1593
4377
  @capture_method = capture_method
1594
4378
  @on_demand = on_demand
1595
4379
  @preferred_locale = preferred_locale
1596
4380
  @setup_future_usage = setup_future_usage
1597
4381
  @subscriptions = subscriptions
4382
+ @supplementary_purchase_data = supplementary_purchase_data
1598
4383
  end
1599
4384
  end
1600
4385
 
@@ -1855,12 +4640,65 @@ module Stripe
1855
4640
  end
1856
4641
 
1857
4642
  class Paypal < ::Stripe::RequestParams
4643
+ class LineItem < ::Stripe::RequestParams
4644
+ class Tax < ::Stripe::RequestParams
4645
+ # The tax for a single unit of the line item in minor units. Cannot be a negative number.
4646
+ attr_accessor :amount
4647
+ # The tax behavior for the line item.
4648
+ attr_accessor :behavior
4649
+
4650
+ def initialize(amount: nil, behavior: nil)
4651
+ @amount = amount
4652
+ @behavior = behavior
4653
+ end
4654
+ end
4655
+ # Type of the line item.
4656
+ attr_accessor :category
4657
+ # Description of the line item.
4658
+ attr_accessor :description
4659
+ # Descriptive name of the line item.
4660
+ attr_accessor :name
4661
+ # Quantity of the line item. Must be a positive number.
4662
+ attr_accessor :quantity
4663
+ # Client facing stock keeping unit, article number or similar.
4664
+ attr_accessor :sku
4665
+ # The Stripe account ID of the connected account that sells the item.
4666
+ attr_accessor :sold_by
4667
+ # The tax information for the line item.
4668
+ attr_accessor :tax
4669
+ # Price for a single unit of the line item in minor units. Cannot be a negative number.
4670
+ attr_accessor :unit_amount
4671
+
4672
+ def initialize(
4673
+ category: nil,
4674
+ description: nil,
4675
+ name: nil,
4676
+ quantity: nil,
4677
+ sku: nil,
4678
+ sold_by: nil,
4679
+ tax: nil,
4680
+ unit_amount: nil
4681
+ )
4682
+ @category = category
4683
+ @description = description
4684
+ @name = name
4685
+ @quantity = quantity
4686
+ @sku = sku
4687
+ @sold_by = sold_by
4688
+ @tax = tax
4689
+ @unit_amount = unit_amount
4690
+ end
4691
+ end
1858
4692
  # Controls when the funds will be captured from the customer's account.
1859
4693
  attr_accessor :capture_method
4694
+ # The line items purchased by the customer.
4695
+ attr_accessor :line_items
1860
4696
  # [Preferred locale](https://stripe.com/docs/payments/paypal/supported-locales) of the PayPal checkout page that the customer is redirected to.
1861
4697
  attr_accessor :preferred_locale
1862
4698
  # A reference of the PayPal transaction visible to customer which is mapped to PayPal's invoice ID. This must be a globally unique ID if you have configured in your PayPal settings to block multiple payments per invoice ID.
1863
4699
  attr_accessor :reference
4700
+ # A reference of the PayPal transaction visible to customer which is mapped to PayPal's invoice ID. This must be a globally unique ID if you have configured in your PayPal settings to block multiple payments per invoice ID.
4701
+ attr_accessor :reference_id
1864
4702
  # The risk correlation ID for an on-session payment using a saved PayPal payment method.
1865
4703
  attr_accessor :risk_correlation_id
1866
4704
  # Indicates that you intend to make future payments with this PaymentIntent's payment method.
@@ -1873,29 +4711,140 @@ module Stripe
1873
4711
  #
1874
4712
  # If you've already set `setup_future_usage` and you're performing a request using a publishable key, you can only update the value from `on_session` to `off_session`.
1875
4713
  attr_accessor :setup_future_usage
4714
+ # The Stripe connected account IDs of the sellers on the platform for this transaction (optional). Only allowed when [separate charges and transfers](https://stripe.com/docs/connect/separate-charges-and-transfers) are used.
4715
+ attr_accessor :subsellers
1876
4716
 
1877
4717
  def initialize(
1878
4718
  capture_method: nil,
4719
+ line_items: nil,
1879
4720
  preferred_locale: nil,
1880
4721
  reference: nil,
4722
+ reference_id: nil,
1881
4723
  risk_correlation_id: nil,
1882
- setup_future_usage: nil
4724
+ setup_future_usage: nil,
4725
+ subsellers: nil
1883
4726
  )
1884
4727
  @capture_method = capture_method
4728
+ @line_items = line_items
1885
4729
  @preferred_locale = preferred_locale
1886
4730
  @reference = reference
4731
+ @reference_id = reference_id
1887
4732
  @risk_correlation_id = risk_correlation_id
1888
4733
  @setup_future_usage = setup_future_usage
4734
+ @subsellers = subsellers
4735
+ end
4736
+ end
4737
+
4738
+ class Paypay < ::Stripe::RequestParams
4739
+ # Controls when the funds are captured from the customer's account.
4740
+ #
4741
+ # If provided, this parameter overrides the behavior of the top-level [capture_method](/api/payment_intents/update#update_payment_intent-capture_method) for this payment method type when finalizing the payment with this payment method type.
4742
+ #
4743
+ # If `capture_method` is already set on the PaymentIntent, providing an empty value for this parameter unsets the stored value for this payment method type.
4744
+ attr_accessor :capture_method
4745
+
4746
+ def initialize(capture_method: nil)
4747
+ @capture_method = capture_method
4748
+ end
4749
+ end
4750
+
4751
+ class Payto < ::Stripe::RequestParams
4752
+ class MandateOptions < ::Stripe::RequestParams
4753
+ # Amount that will be collected. It is required when `amount_type` is `fixed`.
4754
+ attr_accessor :amount
4755
+ # The type of amount that will be collected. The amount charged must be exact or up to the value of `amount` param for `fixed` or `maximum` type respectively. Defaults to `maximum`.
4756
+ attr_accessor :amount_type
4757
+ # Date, in YYYY-MM-DD format, after which payments will not be collected. Defaults to no end date.
4758
+ attr_accessor :end_date
4759
+ # The periodicity at which payments will be collected. Defaults to `adhoc`.
4760
+ attr_accessor :payment_schedule
4761
+ # The number of payments that will be made during a payment period. Defaults to 1 except for when `payment_schedule` is `adhoc`. In that case, it defaults to no limit.
4762
+ attr_accessor :payments_per_period
4763
+ # The purpose for which payments are made. Has a default value based on your merchant category code.
4764
+ attr_accessor :purpose
4765
+
4766
+ def initialize(
4767
+ amount: nil,
4768
+ amount_type: nil,
4769
+ end_date: nil,
4770
+ payment_schedule: nil,
4771
+ payments_per_period: nil,
4772
+ purpose: nil
4773
+ )
4774
+ @amount = amount
4775
+ @amount_type = amount_type
4776
+ @end_date = end_date
4777
+ @payment_schedule = payment_schedule
4778
+ @payments_per_period = payments_per_period
4779
+ @purpose = purpose
4780
+ end
4781
+ end
4782
+ # Additional fields for Mandate creation. Only `purpose` field is configurable for PayTo PaymentIntent with `setup_future_usage=none`. Other fields are only applicable to PayTo PaymentIntent with `setup_future_usage=off_session`
4783
+ attr_accessor :mandate_options
4784
+ # Indicates that you intend to make future payments with this PaymentIntent's payment method.
4785
+ #
4786
+ # If you provide a Customer with the PaymentIntent, you can use this parameter to [attach the payment method](/payments/save-during-payment) to the Customer after the PaymentIntent is confirmed and the customer completes any required actions. If you don't provide a Customer, you can still [attach](/api/payment_methods/attach) the payment method to a Customer after the transaction completes.
4787
+ #
4788
+ # If the payment method is `card_present` and isn't a digital wallet, Stripe creates and attaches a [generated_card](/api/charges/object#charge_object-payment_method_details-card_present-generated_card) payment method representing the card to the Customer instead.
4789
+ #
4790
+ # When processing card payments, Stripe uses `setup_future_usage` to help you comply with regional legislation and network rules, such as [SCA](/strong-customer-authentication).
4791
+ #
4792
+ # If you've already set `setup_future_usage` and you're performing a request using a publishable key, you can only update the value from `on_session` to `off_session`.
4793
+ attr_accessor :setup_future_usage
4794
+
4795
+ def initialize(mandate_options: nil, setup_future_usage: nil)
4796
+ @mandate_options = mandate_options
4797
+ @setup_future_usage = setup_future_usage
1889
4798
  end
1890
4799
  end
1891
4800
 
1892
4801
  class Pix < ::Stripe::RequestParams
4802
+ class MandateOptions < ::Stripe::RequestParams
4803
+ # Amount to be charged for future payments. Required when `amount_type=fixed`. If not provided for `amount_type=maximum`, defaults to 40000.
4804
+ attr_accessor :amount
4805
+ # Determines if the amount includes the IOF tax. Defaults to `never`.
4806
+ attr_accessor :amount_includes_iof
4807
+ # Type of amount. Defaults to `maximum`.
4808
+ attr_accessor :amount_type
4809
+ # Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Only `brl` is supported currently.
4810
+ attr_accessor :currency
4811
+ # Date when the mandate expires and no further payments will be charged, in `YYYY-MM-DD`. If not provided, the mandate will be active until canceled. If provided, end date should be after start date.
4812
+ attr_accessor :end_date
4813
+ # Schedule at which the future payments will be charged. Defaults to `weekly`.
4814
+ attr_accessor :payment_schedule
4815
+ # Subscription name displayed to buyers in their bank app. Defaults to the displayable business name.
4816
+ attr_accessor :reference
4817
+ # Start date of the mandate, in `YYYY-MM-DD`. Start date should be at least 3 days in the future. Defaults to 3 days after the current date.
4818
+ attr_accessor :start_date
4819
+
4820
+ def initialize(
4821
+ amount: nil,
4822
+ amount_includes_iof: nil,
4823
+ amount_type: nil,
4824
+ currency: nil,
4825
+ end_date: nil,
4826
+ payment_schedule: nil,
4827
+ reference: nil,
4828
+ start_date: nil
4829
+ )
4830
+ @amount = amount
4831
+ @amount_includes_iof = amount_includes_iof
4832
+ @amount_type = amount_type
4833
+ @currency = currency
4834
+ @end_date = end_date
4835
+ @payment_schedule = payment_schedule
4836
+ @reference = reference
4837
+ @start_date = start_date
4838
+ end
4839
+ end
1893
4840
  # Determines if the amount includes the IOF tax. Defaults to `never`.
1894
4841
  attr_accessor :amount_includes_iof
1895
4842
  # The number of seconds (between 10 and 1209600) after which Pix payment will expire. Defaults to 86400 seconds.
1896
4843
  attr_accessor :expires_after_seconds
1897
4844
  # The timestamp at which the Pix expires (between 10 and 1209600 seconds in the future). Defaults to 1 day in the future.
1898
4845
  attr_accessor :expires_at
4846
+ # Additional fields for mandate creation. Only applicable when `setup_future_usage=off_session`.
4847
+ attr_accessor :mandate_options
1899
4848
  # Indicates that you intend to make future payments with this PaymentIntent's payment method.
1900
4849
  #
1901
4850
  # If you provide a Customer with the PaymentIntent, you can use this parameter to [attach the payment method](/payments/save-during-payment) to the Customer after the PaymentIntent is confirmed and the customer completes any required actions. If you don't provide a Customer, you can still [attach](/api/payment_methods/attach) the payment method to a Customer after the transaction completes.
@@ -1911,11 +4860,13 @@ module Stripe
1911
4860
  amount_includes_iof: nil,
1912
4861
  expires_after_seconds: nil,
1913
4862
  expires_at: nil,
4863
+ mandate_options: nil,
1914
4864
  setup_future_usage: nil
1915
4865
  )
1916
4866
  @amount_includes_iof = amount_includes_iof
1917
4867
  @expires_after_seconds = expires_after_seconds
1918
4868
  @expires_at = expires_at
4869
+ @mandate_options = mandate_options
1919
4870
  @setup_future_usage = setup_future_usage
1920
4871
  end
1921
4872
  end
@@ -1937,6 +4888,25 @@ module Stripe
1937
4888
  end
1938
4889
  end
1939
4890
 
4891
+ class Qris < ::Stripe::RequestParams
4892
+ # Indicates that you intend to make future payments with this PaymentIntent's payment method.
4893
+ #
4894
+ # If you provide a Customer with the PaymentIntent, you can use this parameter to [attach the payment method](/payments/save-during-payment) to the Customer after the PaymentIntent is confirmed and the customer completes any required actions. If you don't provide a Customer, you can still [attach](/api/payment_methods/attach) the payment method to a Customer after the transaction completes.
4895
+ #
4896
+ # If the payment method is `card_present` and isn't a digital wallet, Stripe creates and attaches a [generated_card](/api/charges/object#charge_object-payment_method_details-card_present-generated_card) payment method representing the card to the Customer instead.
4897
+ #
4898
+ # When processing card payments, Stripe uses `setup_future_usage` to help you comply with regional legislation and network rules, such as [SCA](/strong-customer-authentication).
4899
+ #
4900
+ # If you've already set `setup_future_usage` and you're performing a request using a publishable key, you can only update the value from `on_session` to `off_session`.
4901
+ attr_accessor :setup_future_usage
4902
+
4903
+ def initialize(setup_future_usage: nil)
4904
+ @setup_future_usage = setup_future_usage
4905
+ end
4906
+ end
4907
+
4908
+ class Rechnung < ::Stripe::RequestParams; end
4909
+
1940
4910
  class RevolutPay < ::Stripe::RequestParams
1941
4911
  # Controls when the funds are captured from the customer's account.
1942
4912
  #
@@ -2016,6 +4986,23 @@ module Stripe
2016
4986
  end
2017
4987
  end
2018
4988
 
4989
+ class Shopeepay < ::Stripe::RequestParams
4990
+ # Indicates that you intend to make future payments with this PaymentIntent's payment method.
4991
+ #
4992
+ # If you provide a Customer with the PaymentIntent, you can use this parameter to [attach the payment method](/payments/save-during-payment) to the Customer after the PaymentIntent is confirmed and the customer completes any required actions. If you don't provide a Customer, you can still [attach](/api/payment_methods/attach) the payment method to a Customer after the transaction completes.
4993
+ #
4994
+ # If the payment method is `card_present` and isn't a digital wallet, Stripe creates and attaches a [generated_card](/api/charges/object#charge_object-payment_method_details-card_present-generated_card) payment method representing the card to the Customer instead.
4995
+ #
4996
+ # When processing card payments, Stripe uses `setup_future_usage` to help you comply with regional legislation and network rules, such as [SCA](/strong-customer-authentication).
4997
+ #
4998
+ # If you've already set `setup_future_usage` and you're performing a request using a publishable key, you can only update the value from `on_session` to `off_session`.
4999
+ attr_accessor :setup_future_usage
5000
+
5001
+ def initialize(setup_future_usage: nil)
5002
+ @setup_future_usage = setup_future_usage
5003
+ end
5004
+ end
5005
+
2019
5006
  class Sofort < ::Stripe::RequestParams
2020
5007
  # Language shown to the payer on redirect.
2021
5008
  attr_accessor :preferred_language
@@ -2036,6 +5023,23 @@ module Stripe
2036
5023
  end
2037
5024
  end
2038
5025
 
5026
+ class StripeBalance < ::Stripe::RequestParams
5027
+ # Indicates that you intend to make future payments with this PaymentIntent's payment method.
5028
+ #
5029
+ # If you provide a Customer with the PaymentIntent, you can use this parameter to [attach the payment method](/payments/save-during-payment) to the Customer after the PaymentIntent is confirmed and the customer completes any required actions. If you don't provide a Customer, you can still [attach](/api/payment_methods/attach) the payment method to a Customer after the transaction completes.
5030
+ #
5031
+ # If the payment method is `card_present` and isn't a digital wallet, Stripe creates and attaches a [generated_card](/api/charges/object#charge_object-payment_method_details-card_present-generated_card) payment method representing the card to the Customer instead.
5032
+ #
5033
+ # When processing card payments, Stripe uses `setup_future_usage` to help you comply with regional legislation and network rules, such as [SCA](/strong-customer-authentication).
5034
+ #
5035
+ # If you've already set `setup_future_usage` and you're performing a request using a publishable key, you can only update the value from `on_session` to `off_session`.
5036
+ attr_accessor :setup_future_usage
5037
+
5038
+ def initialize(setup_future_usage: nil)
5039
+ @setup_future_usage = setup_future_usage
5040
+ end
5041
+ end
5042
+
2039
5043
  class Swish < ::Stripe::RequestParams
2040
5044
  # A reference for this payment to be displayed in the Swish app.
2041
5045
  attr_accessor :reference
@@ -2078,13 +5082,27 @@ module Stripe
2078
5082
  class Filters < ::Stripe::RequestParams
2079
5083
  # The account subcategories to use to filter for selectable accounts. Valid subcategories are `checking` and `savings`.
2080
5084
  attr_accessor :account_subcategories
5085
+ # ID of the institution to use to filter for selectable accounts.
5086
+ attr_accessor :institution
2081
5087
 
2082
- def initialize(account_subcategories: nil)
5088
+ def initialize(account_subcategories: nil, institution: nil)
2083
5089
  @account_subcategories = account_subcategories
5090
+ @institution = institution
5091
+ end
5092
+ end
5093
+
5094
+ class ManualEntry < ::Stripe::RequestParams
5095
+ # Settings for configuring manual entry of account details.
5096
+ attr_accessor :mode
5097
+
5098
+ def initialize(mode: nil)
5099
+ @mode = mode
2084
5100
  end
2085
5101
  end
2086
5102
  # Provide filters for the linked accounts that the customer can select for the payment method.
2087
5103
  attr_accessor :filters
5104
+ # Customize manual entry behavior
5105
+ attr_accessor :manual_entry
2088
5106
  # The list of permissions to request. If this parameter is passed, the `payment_method` permission must be included. Valid permissions include: `balances`, `ownership`, `payment_method`, and `transactions`.
2089
5107
  attr_accessor :permissions
2090
5108
  # List of data features that you would like to retrieve upon account creation.
@@ -2092,8 +5110,15 @@ module Stripe
2092
5110
  # For webview integrations only. Upon completing OAuth login in the native browser, the user will be redirected to this URL to return to your app.
2093
5111
  attr_accessor :return_url
2094
5112
 
2095
- def initialize(filters: nil, permissions: nil, prefetch: nil, return_url: nil)
5113
+ def initialize(
5114
+ filters: nil,
5115
+ manual_entry: nil,
5116
+ permissions: nil,
5117
+ prefetch: nil,
5118
+ return_url: nil
5119
+ )
2096
5120
  @filters = filters
5121
+ @manual_entry = manual_entry
2097
5122
  @permissions = permissions
2098
5123
  @prefetch = prefetch
2099
5124
  @return_url = return_url
@@ -2238,8 +5263,12 @@ module Stripe
2238
5263
  attr_accessor :fpx
2239
5264
  # If this is a `giropay` PaymentMethod, this sub-hash contains details about the Giropay payment method options.
2240
5265
  attr_accessor :giropay
5266
+ # If this is a `gopay` PaymentMethod, this sub-hash contains details about the Gopay payment method options.
5267
+ attr_accessor :gopay
2241
5268
  # If this is a `grabpay` PaymentMethod, this sub-hash contains details about the Grabpay payment method options.
2242
5269
  attr_accessor :grabpay
5270
+ # If this is a `id_bank_transfer` PaymentMethod, this sub-hash contains details about the Indonesia Bank Transfer payment method options.
5271
+ attr_accessor :id_bank_transfer
2243
5272
  # If this is a `ideal` PaymentMethod, this sub-hash contains details about the Ideal payment method options.
2244
5273
  attr_accessor :ideal
2245
5274
  # If this is a `interac_present` PaymentMethod, this sub-hash contains details about the Card Present payment method options.
@@ -2276,10 +5305,18 @@ module Stripe
2276
5305
  attr_accessor :paynow
2277
5306
  # If this is a `paypal` PaymentMethod, this sub-hash contains details about the PayPal payment method options.
2278
5307
  attr_accessor :paypal
5308
+ # If this is a `paypay` PaymentMethod, this sub-hash contains details about the PayPay payment method options.
5309
+ attr_accessor :paypay
5310
+ # If this is a `payto` PaymentMethod, this sub-hash contains details about the PayTo payment method options.
5311
+ attr_accessor :payto
2279
5312
  # If this is a `pix` PaymentMethod, this sub-hash contains details about the Pix payment method options.
2280
5313
  attr_accessor :pix
2281
5314
  # If this is a `promptpay` PaymentMethod, this sub-hash contains details about the PromptPay payment method options.
2282
5315
  attr_accessor :promptpay
5316
+ # If this is a `qris` PaymentMethod, this sub-hash contains details about the QRIS payment method options.
5317
+ attr_accessor :qris
5318
+ # If this is a `rechnung` PaymentMethod, this sub-hash contains details about the Rechnung payment method options.
5319
+ attr_accessor :rechnung
2283
5320
  # If this is a `revolut_pay` PaymentMethod, this sub-hash contains details about the Revolut Pay payment method options.
2284
5321
  attr_accessor :revolut_pay
2285
5322
  # If this is a `samsung_pay` PaymentMethod, this sub-hash contains details about the Samsung Pay payment method options.
@@ -2288,8 +5325,12 @@ module Stripe
2288
5325
  attr_accessor :satispay
2289
5326
  # If this is a `sepa_debit` PaymentIntent, this sub-hash contains details about the SEPA Debit payment method options.
2290
5327
  attr_accessor :sepa_debit
5328
+ # If this is a `shopeepay` PaymentMethod, this sub-hash contains details about the ShopeePay payment method options.
5329
+ attr_accessor :shopeepay
2291
5330
  # If this is a `sofort` PaymentMethod, this sub-hash contains details about the SOFORT payment method options.
2292
5331
  attr_accessor :sofort
5332
+ # If this is a `stripe_balance` PaymentMethod, this sub-hash contains details about the Stripe Balance payment method options.
5333
+ attr_accessor :stripe_balance
2293
5334
  # If this is a `Swish` PaymentMethod, this sub-hash contains details about the Swish payment method options.
2294
5335
  attr_accessor :swish
2295
5336
  # If this is a `twint` PaymentMethod, this sub-hash contains details about the TWINT payment method options.
@@ -2322,7 +5363,9 @@ module Stripe
2322
5363
  eps: nil,
2323
5364
  fpx: nil,
2324
5365
  giropay: nil,
5366
+ gopay: nil,
2325
5367
  grabpay: nil,
5368
+ id_bank_transfer: nil,
2326
5369
  ideal: nil,
2327
5370
  interac_present: nil,
2328
5371
  kakao_pay: nil,
@@ -2341,13 +5384,19 @@ module Stripe
2341
5384
  payco: nil,
2342
5385
  paynow: nil,
2343
5386
  paypal: nil,
5387
+ paypay: nil,
5388
+ payto: nil,
2344
5389
  pix: nil,
2345
5390
  promptpay: nil,
5391
+ qris: nil,
5392
+ rechnung: nil,
2346
5393
  revolut_pay: nil,
2347
5394
  samsung_pay: nil,
2348
5395
  satispay: nil,
2349
5396
  sepa_debit: nil,
5397
+ shopeepay: nil,
2350
5398
  sofort: nil,
5399
+ stripe_balance: nil,
2351
5400
  swish: nil,
2352
5401
  twint: nil,
2353
5402
  us_bank_account: nil,
@@ -2374,7 +5423,9 @@ module Stripe
2374
5423
  @eps = eps
2375
5424
  @fpx = fpx
2376
5425
  @giropay = giropay
5426
+ @gopay = gopay
2377
5427
  @grabpay = grabpay
5428
+ @id_bank_transfer = id_bank_transfer
2378
5429
  @ideal = ideal
2379
5430
  @interac_present = interac_present
2380
5431
  @kakao_pay = kakao_pay
@@ -2393,13 +5444,19 @@ module Stripe
2393
5444
  @payco = payco
2394
5445
  @paynow = paynow
2395
5446
  @paypal = paypal
5447
+ @paypay = paypay
5448
+ @payto = payto
2396
5449
  @pix = pix
2397
5450
  @promptpay = promptpay
5451
+ @qris = qris
5452
+ @rechnung = rechnung
2398
5453
  @revolut_pay = revolut_pay
2399
5454
  @samsung_pay = samsung_pay
2400
5455
  @satispay = satispay
2401
5456
  @sepa_debit = sepa_debit
5457
+ @shopeepay = shopeepay
2402
5458
  @sofort = sofort
5459
+ @stripe_balance = stripe_balance
2403
5460
  @swish = swish
2404
5461
  @twint = twint
2405
5462
  @us_bank_account = us_bank_account
@@ -2483,19 +5540,29 @@ module Stripe
2483
5540
  #
2484
5541
  # If [setup_future_usage](https://stripe.com/docs/api#payment_intent_object-setup_future_usage) is set and this PaymentIntent's payment method is not `card_present`, then the payment method attaches to the Customer after the PaymentIntent has been confirmed and any required actions from the user are complete. If the payment method is `card_present` and isn't a digital wallet, then a [generated_card](https://docs.stripe.com/api/charges/object#charge_object-payment_method_details-card_present-generated_card) payment method representing the card is created and attached to the Customer instead.
2485
5542
  attr_accessor :customer
5543
+ # ID of the Account this PaymentIntent belongs to, if one exists.
5544
+ #
5545
+ # Payment methods attached to other Accounts cannot be used with this PaymentIntent.
5546
+ #
5547
+ # If [setup_future_usage](https://stripe.com/docs/api#payment_intent_object-setup_future_usage) is set and this PaymentIntent's payment method is not `card_present`, then the payment method attaches to the Account after the PaymentIntent has been confirmed and any required actions from the user are complete. If the payment method is `card_present` and isn't a digital wallet, then a [generated_card](https://docs.stripe.com/api/charges/object#charge_object-payment_method_details-card_present-generated_card) payment method representing the card is created and attached to the Account instead.
5548
+ attr_accessor :customer_account
2486
5549
  # An arbitrary string attached to the object. Often useful for displaying to users.
2487
5550
  attr_accessor :description
2488
5551
  # The list of payment method types to exclude from use with this payment.
2489
5552
  attr_accessor :excluded_payment_method_types
2490
5553
  # Specifies which fields in the response should be expanded.
2491
5554
  attr_accessor :expand
5555
+ # The FX rate in the quote is validated and used to convert the presentment amount to the settlement amount.
5556
+ attr_accessor :fx_quote
2492
5557
  # Automations to be run during the PaymentIntent lifecycle
2493
5558
  attr_accessor :hooks
5559
+ # This hash contains details about the Mandate to create.
5560
+ attr_accessor :mandate_data
2494
5561
  # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
2495
5562
  attr_accessor :metadata
2496
5563
  # Provides industry-specific information about the charge.
2497
5564
  attr_accessor :payment_details
2498
- # ID of the payment method (a PaymentMethod, Card, or [compatible Source](https://stripe.com/docs/payments/payment-methods/transitioning#compatibility) object) to attach to this PaymentIntent. To unset this field to null, pass in an empty string.
5565
+ # Attribute for param field payment_method
2499
5566
  attr_accessor :payment_method
2500
5567
  # The ID of the [payment method configuration](https://stripe.com/docs/api/payment_method_configurations) to use with this PaymentIntent.
2501
5568
  attr_accessor :payment_method_configuration
@@ -2539,10 +5606,13 @@ module Stripe
2539
5606
  capture_method: nil,
2540
5607
  currency: nil,
2541
5608
  customer: nil,
5609
+ customer_account: nil,
2542
5610
  description: nil,
2543
5611
  excluded_payment_method_types: nil,
2544
5612
  expand: nil,
5613
+ fx_quote: nil,
2545
5614
  hooks: nil,
5615
+ mandate_data: nil,
2546
5616
  metadata: nil,
2547
5617
  payment_details: nil,
2548
5618
  payment_method: nil,
@@ -2564,10 +5634,13 @@ module Stripe
2564
5634
  @capture_method = capture_method
2565
5635
  @currency = currency
2566
5636
  @customer = customer
5637
+ @customer_account = customer_account
2567
5638
  @description = description
2568
5639
  @excluded_payment_method_types = excluded_payment_method_types
2569
5640
  @expand = expand
5641
+ @fx_quote = fx_quote
2570
5642
  @hooks = hooks
5643
+ @mandate_data = mandate_data
2571
5644
  @metadata = metadata
2572
5645
  @payment_details = payment_details
2573
5646
  @payment_method = payment_method