stripe 16.0.0 → 16.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 (511) hide show
  1. checksums.yaml +4 -4
  2. data/lib/stripe/api_requestor.rb +35 -3
  3. data/lib/stripe/api_version.rb +1 -2
  4. data/lib/stripe/errors.rb +63 -0
  5. data/lib/stripe/event_types.rb +236 -0
  6. data/lib/stripe/events/v2_billing_bill_setting_updated_event.rb +61 -0
  7. data/lib/stripe/events/v2_core_account_closed_event.rb +44 -0
  8. data/lib/stripe/events/v2_core_account_created_event.rb +44 -0
  9. data/lib/stripe/events/v2_core_account_including_configuration_customer_capability_status_updated_event.rb +63 -0
  10. data/lib/stripe/events/v2_core_account_including_configuration_customer_updated_event.rb +44 -0
  11. data/lib/stripe/events/v2_core_account_including_configuration_merchant_capability_status_updated_event.rb +63 -0
  12. data/lib/stripe/events/v2_core_account_including_configuration_merchant_updated_event.rb +44 -0
  13. data/lib/stripe/events/v2_core_account_including_configuration_recipient_capability_status_updated_event.rb +63 -0
  14. data/lib/stripe/events/v2_core_account_including_configuration_recipient_updated_event.rb +44 -0
  15. data/lib/stripe/events/v2_core_account_including_configuration_storer_capability_status_updated_event.rb +63 -0
  16. data/lib/stripe/events/v2_core_account_including_configuration_storer_updated_event.rb +44 -0
  17. data/lib/stripe/events/v2_core_account_including_defaults_updated_event.rb +44 -0
  18. data/lib/stripe/events/v2_core_account_including_identity_updated_event.rb +44 -0
  19. data/lib/stripe/events/v2_core_account_including_requirements_updated_event.rb +44 -0
  20. data/lib/stripe/events/v2_core_account_link_returned_event.rb +42 -0
  21. data/lib/stripe/events/v2_core_account_person_created_event.rb +61 -0
  22. data/lib/stripe/events/v2_core_account_person_deleted_event.rb +61 -0
  23. data/lib/stripe/events/v2_core_account_person_updated_event.rb +61 -0
  24. data/lib/stripe/events/v2_core_account_updated_event.rb +44 -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 +44 -0
  59. data/lib/stripe/events/v2_money_management_transaction_updated_event.rb +44 -0
  60. data/lib/stripe/events/v2_payments_off_session_payment_authorization_attempt_failed_event.rb +44 -0
  61. data/lib/stripe/events/v2_payments_off_session_payment_authorization_attempt_started_event.rb +46 -0
  62. data/lib/stripe/events/v2_payments_off_session_payment_canceled_event.rb +44 -0
  63. data/lib/stripe/events/v2_payments_off_session_payment_created_event.rb +44 -0
  64. data/lib/stripe/events/v2_payments_off_session_payment_failed_event.rb +44 -0
  65. data/lib/stripe/events/v2_payments_off_session_payment_requires_capture_event.rb +44 -0
  66. data/lib/stripe/events/v2_payments_off_session_payment_succeeded_event.rb +44 -0
  67. data/lib/stripe/object_types.rb +58 -0
  68. data/lib/stripe/params/account_create_params.rb +300 -1
  69. data/lib/stripe/params/account_notice_list_params.rb +25 -0
  70. data/lib/stripe/params/account_notice_retrieve_params.rb +13 -0
  71. data/lib/stripe/params/account_notice_update_params.rb +36 -0
  72. data/lib/stripe/params/account_session_create_params.rb +226 -1
  73. data/lib/stripe/params/account_update_params.rb +262 -0
  74. data/lib/stripe/params/billing/analytics/meter_usage_retrieve_params.rb +65 -0
  75. data/lib/stripe/params/billing/credit_balance_summary_retrieve_params.rb +4 -1
  76. data/lib/stripe/params/billing/credit_balance_transaction_list_params.rb +4 -0
  77. data/lib/stripe/params/billing/credit_grant_create_params.rb +4 -0
  78. data/lib/stripe/params/billing/credit_grant_list_params.rb +4 -0
  79. data/lib/stripe/params/billing_portal/session_create_params.rb +4 -0
  80. data/lib/stripe/params/capital/financing_offer_list_params.rb +58 -0
  81. data/lib/stripe/params/capital/financing_offer_mark_delivered_params.rb +15 -0
  82. data/lib/stripe/params/capital/financing_offer_retrieve_params.rb +15 -0
  83. data/lib/stripe/params/capital/financing_summary_retrieve_params.rb +15 -0
  84. data/lib/stripe/params/capital/financing_transaction_list_params.rb +45 -0
  85. data/lib/stripe/params/capital/financing_transaction_retrieve_params.rb +15 -0
  86. data/lib/stripe/params/charge_capture_params.rb +709 -0
  87. data/lib/stripe/params/charge_update_params.rb +709 -0
  88. data/lib/stripe/params/checkout/session_create_params.rb +193 -3
  89. data/lib/stripe/params/checkout/session_list_params.rb +4 -0
  90. data/lib/stripe/params/checkout/session_update_params.rb +288 -1
  91. data/lib/stripe/params/confirmation_token_create_params.rb +97 -0
  92. data/lib/stripe/params/coupon_create_params.rb +17 -1
  93. data/lib/stripe/params/credit_note_list_params.rb +4 -0
  94. data/lib/stripe/params/customer_session_create_params.rb +4 -1
  95. data/lib/stripe/params/dispute_update_params.rb +10 -1
  96. data/lib/stripe/params/external_account_create_params.rb +134 -0
  97. data/lib/stripe/params/external_account_delete_params.rb +6 -0
  98. data/lib/stripe/params/external_account_list_params.rb +25 -0
  99. data/lib/stripe/params/external_account_retrieve_params.rb +13 -0
  100. data/lib/stripe/params/external_account_update_params.rb +91 -0
  101. data/lib/stripe/params/financial_connections/account_inferred_balance_list_params.rb +24 -0
  102. data/lib/stripe/params/financial_connections/account_list_params.rb +4 -1
  103. data/lib/stripe/params/financial_connections/institution_list_params.rb +24 -0
  104. data/lib/stripe/params/financial_connections/institution_retrieve_params.rb +15 -0
  105. data/lib/stripe/params/financial_connections/session_create_params.rb +34 -2
  106. data/lib/stripe/params/fx_quote_create_params.rb +73 -0
  107. data/lib/stripe/params/fx_quote_list_params.rb +22 -0
  108. data/lib/stripe/params/fx_quote_retrieve_params.rb +13 -0
  109. data/lib/stripe/params/identity/verification_session_create_params.rb +4 -0
  110. data/lib/stripe/params/identity/verification_session_list_params.rb +4 -0
  111. data/lib/stripe/params/invoice_add_lines_params.rb +33 -1
  112. data/lib/stripe/params/invoice_attach_payment_params.rb +46 -1
  113. data/lib/stripe/params/invoice_create_params.rb +112 -2
  114. data/lib/stripe/params/invoice_create_preview_params.rb +826 -9
  115. data/lib/stripe/params/invoice_item_create_params.rb +37 -1
  116. data/lib/stripe/params/invoice_item_list_params.rb +4 -0
  117. data/lib/stripe/params/invoice_item_update_params.rb +33 -1
  118. data/lib/stripe/params/invoice_line_item_update_params.rb +33 -1
  119. data/lib/stripe/params/invoice_list_params.rb +4 -0
  120. data/lib/stripe/params/invoice_payment_list_params.rb +4 -1
  121. data/lib/stripe/params/invoice_update_lines_params.rb +33 -1
  122. data/lib/stripe/params/invoice_update_params.rb +108 -2
  123. data/lib/stripe/params/issuing/cardholder_create_params.rb +2 -1
  124. data/lib/stripe/params/issuing/credit_underwriting_record_correct_params.rb +163 -0
  125. data/lib/stripe/params/issuing/credit_underwriting_record_create_from_application_params.rb +50 -0
  126. data/lib/stripe/params/issuing/credit_underwriting_record_create_from_proactive_review_params.rb +128 -0
  127. data/lib/stripe/params/issuing/credit_underwriting_record_list_params.rb +24 -0
  128. data/lib/stripe/params/issuing/credit_underwriting_record_report_decision_params.rb +86 -0
  129. data/lib/stripe/params/issuing/credit_underwriting_record_retrieve_params.rb +15 -0
  130. data/lib/stripe/params/issuing/dispute_settlement_detail_list_params.rb +33 -0
  131. data/lib/stripe/params/issuing/dispute_settlement_detail_retrieve_params.rb +15 -0
  132. data/lib/stripe/params/issuing/fraud_liability_debit_list_params.rb +44 -0
  133. data/lib/stripe/params/issuing/fraud_liability_debit_retrieve_params.rb +15 -0
  134. data/lib/stripe/params/issuing/transaction_list_params.rb +4 -0
  135. data/lib/stripe/params/mandate_list_params.rb +39 -0
  136. data/lib/stripe/params/margin_create_params.rb +25 -0
  137. data/lib/stripe/params/margin_list_params.rb +25 -0
  138. data/lib/stripe/params/margin_retrieve_params.rb +13 -0
  139. data/lib/stripe/params/margin_update_params.rb +22 -0
  140. data/lib/stripe/params/order_cancel_params.rb +13 -0
  141. data/lib/stripe/params/order_create_params.rb +1124 -0
  142. data/lib/stripe/params/order_line_item_list_params.rb +22 -0
  143. data/lib/stripe/params/order_list_line_items_params.rb +22 -0
  144. data/lib/stripe/params/order_list_params.rb +25 -0
  145. data/lib/stripe/params/order_reopen_params.rb +13 -0
  146. data/lib/stripe/params/order_retrieve_params.rb +13 -0
  147. data/lib/stripe/params/order_submit_params.rb +16 -0
  148. data/lib/stripe/params/order_update_params.rb +1128 -0
  149. data/lib/stripe/params/payment_attempt_record_list_params.rb +19 -0
  150. data/lib/stripe/params/payment_attempt_record_retrieve_params.rb +13 -0
  151. data/lib/stripe/params/payment_intent_amount_details_line_item_list_params.rb +22 -0
  152. data/lib/stripe/params/payment_intent_capture_params.rb +895 -0
  153. data/lib/stripe/params/payment_intent_confirm_params.rb +1373 -7
  154. data/lib/stripe/params/payment_intent_create_params.rb +1387 -13
  155. data/lib/stripe/params/payment_intent_decrement_authorization_params.rb +73 -0
  156. data/lib/stripe/params/payment_intent_increment_authorization_params.rb +223 -0
  157. data/lib/stripe/params/payment_intent_list_params.rb +4 -0
  158. data/lib/stripe/params/payment_intent_trigger_action_params.rb +27 -0
  159. data/lib/stripe/params/payment_intent_update_params.rb +1409 -4
  160. data/lib/stripe/params/payment_method_attach_params.rb +4 -1
  161. data/lib/stripe/params/payment_method_configuration_create_params.rb +126 -0
  162. data/lib/stripe/params/payment_method_configuration_update_params.rb +126 -0
  163. data/lib/stripe/params/payment_method_create_params.rb +97 -0
  164. data/lib/stripe/params/payment_method_update_params.rb +19 -0
  165. data/lib/stripe/params/payment_record_report_payment_attempt_canceled_params.rb +19 -0
  166. data/lib/stripe/params/payment_record_report_payment_attempt_failed_params.rb +19 -0
  167. data/lib/stripe/params/payment_record_report_payment_attempt_guaranteed_params.rb +19 -0
  168. data/lib/stripe/params/payment_record_report_payment_attempt_informational_params.rb +93 -0
  169. data/lib/stripe/params/payment_record_report_payment_attempt_params.rb +186 -0
  170. data/lib/stripe/params/payment_record_report_payment_params.rb +252 -0
  171. data/lib/stripe/params/payment_record_retrieve_params.rb +13 -0
  172. data/lib/stripe/params/price_update_params.rb +19 -0
  173. data/lib/stripe/params/privacy/redaction_job_cancel_params.rb +15 -0
  174. data/lib/stripe/params/privacy/redaction_job_create_params.rb +67 -0
  175. data/lib/stripe/params/privacy/redaction_job_list_params.rb +27 -0
  176. data/lib/stripe/params/privacy/redaction_job_retrieve_params.rb +15 -0
  177. data/lib/stripe/params/privacy/redaction_job_run_params.rb +15 -0
  178. data/lib/stripe/params/privacy/redaction_job_update_params.rb +18 -0
  179. data/lib/stripe/params/privacy/redaction_job_validate_params.rb +15 -0
  180. data/lib/stripe/params/privacy/redaction_job_validation_error_list_params.rb +24 -0
  181. data/lib/stripe/params/promotion_code_create_params.rb +4 -0
  182. data/lib/stripe/params/promotion_code_list_params.rb +4 -0
  183. data/lib/stripe/params/quote_create_params.rb +805 -3
  184. data/lib/stripe/params/quote_line_list_params.rb +22 -0
  185. data/lib/stripe/params/quote_list_lines_params.rb +22 -0
  186. data/lib/stripe/params/quote_list_params.rb +8 -0
  187. data/lib/stripe/params/quote_list_preview_invoice_lines_params.rb +22 -0
  188. data/lib/stripe/params/quote_mark_draft_params.rb +13 -0
  189. data/lib/stripe/params/quote_mark_stale_params.rb +16 -0
  190. data/lib/stripe/params/quote_preview_invoice_list_params.rb +22 -0
  191. data/lib/stripe/params/quote_preview_subscription_schedule_list_params.rb +22 -0
  192. data/lib/stripe/params/quote_reestimate_params.rb +13 -0
  193. data/lib/stripe/params/quote_update_params.rb +813 -4
  194. data/lib/stripe/params/setup_intent_confirm_params.rb +225 -3
  195. data/lib/stripe/params/setup_intent_create_params.rb +231 -3
  196. data/lib/stripe/params/setup_intent_list_params.rb +4 -0
  197. data/lib/stripe/params/setup_intent_update_params.rb +231 -3
  198. data/lib/stripe/params/subscription_attach_cadence_params.rb +16 -0
  199. data/lib/stripe/params/subscription_create_params.rb +259 -5
  200. data/lib/stripe/params/subscription_item_create_params.rb +46 -2
  201. data/lib/stripe/params/subscription_item_update_params.rb +29 -1
  202. data/lib/stripe/params/subscription_list_params.rb +4 -0
  203. data/lib/stripe/params/subscription_schedule_amend_params.rb +570 -0
  204. data/lib/stripe/params/subscription_schedule_create_params.rb +167 -5
  205. data/lib/stripe/params/subscription_schedule_list_params.rb +4 -0
  206. data/lib/stripe/params/subscription_schedule_update_params.rb +163 -5
  207. data/lib/stripe/params/subscription_update_params.rb +238 -4
  208. data/lib/stripe/params/tax/association_find_params.rb +18 -0
  209. data/lib/stripe/params/tax/form_list_params.rb +51 -0
  210. data/lib/stripe/params/tax/form_pdf_params.rb +15 -0
  211. data/lib/stripe/params/tax/form_retrieve_params.rb +15 -0
  212. data/lib/stripe/params/tax_id_create_params.rb +4 -1
  213. data/lib/stripe/params/tax_id_list_params.rb +4 -1
  214. data/lib/stripe/params/terminal/configuration_create_params.rb +13 -0
  215. data/lib/stripe/params/terminal/configuration_update_params.rb +13 -0
  216. data/lib/stripe/params/terminal/onboarding_link_create_params.rb +43 -0
  217. data/lib/stripe/params/terminal/reader_collected_data_retrieve_params.rb +15 -0
  218. data/lib/stripe/params/test_helpers/confirmation_token_create_params.rb +97 -0
  219. data/lib/stripe/params/test_helpers/treasury/received_credit_create_params.rb +25 -1
  220. data/lib/stripe/params/test_helpers/treasury/received_debit_create_params.rb +25 -1
  221. data/lib/stripe/params/transfer_create_params.rb +4 -0
  222. data/lib/stripe/params/treasury/financial_account_create_params.rb +8 -1
  223. data/lib/stripe/params/treasury/financial_account_features_update_params.rb +4 -1
  224. data/lib/stripe/params/treasury/financial_account_update_features_params.rb +4 -1
  225. data/lib/stripe/params/treasury/financial_account_update_params.rb +8 -1
  226. data/lib/stripe/params/treasury/outbound_transfer_create_params.rb +24 -0
  227. data/lib/stripe/params/treasury/received_credit_create_params.rb +25 -1
  228. data/lib/stripe/params/treasury/received_debit_create_params.rb +25 -1
  229. data/lib/stripe/params/v2/billing/bill_setting_create_params.rb +74 -0
  230. data/lib/stripe/params/v2/billing/bill_setting_list_params.rb +21 -0
  231. data/lib/stripe/params/v2/billing/bill_setting_retrieve_params.rb +10 -0
  232. data/lib/stripe/params/v2/billing/bill_setting_update_params.rb +80 -0
  233. data/lib/stripe/params/v2/billing/bill_settings/version_list_params.rb +19 -0
  234. data/lib/stripe/params/v2/billing/bill_settings/version_retrieve_params.rb +12 -0
  235. data/lib/stripe/params/v2/billing/cadence_cancel_params.rb +10 -0
  236. data/lib/stripe/params/v2/billing/cadence_create_params.rb +253 -0
  237. data/lib/stripe/params/v2/billing/cadence_list_params.rb +43 -0
  238. data/lib/stripe/params/v2/billing/cadence_retrieve_params.rb +17 -0
  239. data/lib/stripe/params/v2/billing/cadence_update_params.rb +75 -0
  240. data/lib/stripe/params/v2/billing/collection_setting_create_params.rb +223 -0
  241. data/lib/stripe/params/v2/billing/collection_setting_list_params.rb +21 -0
  242. data/lib/stripe/params/v2/billing/collection_setting_retrieve_params.rb +10 -0
  243. data/lib/stripe/params/v2/billing/collection_setting_update_params.rb +229 -0
  244. data/lib/stripe/params/v2/billing/collection_settings/version_list_params.rb +19 -0
  245. data/lib/stripe/params/v2/billing/collection_settings/version_retrieve_params.rb +12 -0
  246. data/lib/stripe/params/v2/billing/profile_create_params.rb +37 -0
  247. data/lib/stripe/params/v2/billing/profile_list_params.rb +40 -0
  248. data/lib/stripe/params/v2/billing/profile_retrieve_params.rb +10 -0
  249. data/lib/stripe/params/v2/billing/profile_update_params.rb +35 -0
  250. data/lib/stripe/params/v2/core/account_close_params.rb +17 -0
  251. data/lib/stripe/params/v2/core/account_create_params.rb +2217 -0
  252. data/lib/stripe/params/v2/core/account_link_create_params.rb +101 -0
  253. data/lib/stripe/params/v2/core/account_list_params.rb +20 -0
  254. data/lib/stripe/params/v2/core/account_retrieve_params.rb +17 -0
  255. data/lib/stripe/params/v2/core/account_update_params.rb +2245 -0
  256. data/lib/stripe/params/v2/core/accounts/person_create_params.rb +493 -0
  257. data/lib/stripe/params/v2/core/accounts/person_delete_params.rb +12 -0
  258. data/lib/stripe/params/v2/core/accounts/person_list_params.rb +19 -0
  259. data/lib/stripe/params/v2/core/accounts/person_retrieve_params.rb +12 -0
  260. data/lib/stripe/params/v2/core/accounts/person_update_params.rb +493 -0
  261. data/lib/stripe/params/v2/core/vault/gb_bank_account_acknowledge_confirmation_of_payee_params.rb +12 -0
  262. data/lib/stripe/params/v2/core/vault/gb_bank_account_archive_params.rb +12 -0
  263. data/lib/stripe/params/v2/core/vault/gb_bank_account_create_params.rb +50 -0
  264. data/lib/stripe/params/v2/core/vault/gb_bank_account_initiate_confirmation_of_payee_params.rb +22 -0
  265. data/lib/stripe/params/v2/core/vault/gb_bank_account_retrieve_params.rb +12 -0
  266. data/lib/stripe/params/v2/core/vault/us_bank_account_archive_params.rb +12 -0
  267. data/lib/stripe/params/v2/core/vault/us_bank_account_create_params.rb +33 -0
  268. data/lib/stripe/params/v2/core/vault/us_bank_account_retrieve_params.rb +12 -0
  269. data/lib/stripe/params/v2/core/vault/us_bank_account_update_params.rb +22 -0
  270. data/lib/stripe/params/v2/money_management/adjustment_list_params.rb +48 -0
  271. data/lib/stripe/params/v2/money_management/adjustment_retrieve_params.rb +10 -0
  272. data/lib/stripe/params/v2/money_management/financial_account_close_params.rb +28 -0
  273. data/lib/stripe/params/v2/money_management/financial_account_create_params.rb +34 -0
  274. data/lib/stripe/params/v2/money_management/financial_account_list_params.rb +20 -0
  275. data/lib/stripe/params/v2/money_management/financial_account_retrieve_params.rb +10 -0
  276. data/lib/stripe/params/v2/money_management/financial_address_create_params.rb +20 -0
  277. data/lib/stripe/params/v2/money_management/financial_address_list_params.rb +23 -0
  278. data/lib/stripe/params/v2/money_management/financial_address_retrieve_params.rb +17 -0
  279. data/lib/stripe/params/v2/money_management/inbound_transfer_create_params.rb +50 -0
  280. data/lib/stripe/params/v2/money_management/inbound_transfer_list_params.rb +44 -0
  281. data/lib/stripe/params/v2/money_management/inbound_transfer_retrieve_params.rb +10 -0
  282. data/lib/stripe/params/v2/money_management/outbound_payment_cancel_params.rb +10 -0
  283. data/lib/stripe/params/v2/money_management/outbound_payment_create_params.rb +98 -0
  284. data/lib/stripe/params/v2/money_management/outbound_payment_list_params.rb +52 -0
  285. data/lib/stripe/params/v2/money_management/outbound_payment_quote_create_params.rb +67 -0
  286. data/lib/stripe/params/v2/money_management/outbound_payment_quote_retrieve_params.rb +10 -0
  287. data/lib/stripe/params/v2/money_management/outbound_payment_retrieve_params.rb +10 -0
  288. data/lib/stripe/params/v2/money_management/outbound_setup_intent_cancel_params.rb +10 -0
  289. data/lib/stripe/params/v2/money_management/outbound_setup_intent_create_params.rb +85 -0
  290. data/lib/stripe/params/v2/money_management/outbound_setup_intent_list_params.rb +17 -0
  291. data/lib/stripe/params/v2/money_management/outbound_setup_intent_retrieve_params.rb +10 -0
  292. data/lib/stripe/params/v2/money_management/outbound_setup_intent_update_params.rb +80 -0
  293. data/lib/stripe/params/v2/money_management/outbound_transfer_cancel_params.rb +10 -0
  294. data/lib/stripe/params/v2/money_management/outbound_transfer_create_params.rb +77 -0
  295. data/lib/stripe/params/v2/money_management/outbound_transfer_list_params.rb +48 -0
  296. data/lib/stripe/params/v2/money_management/outbound_transfer_retrieve_params.rb +10 -0
  297. data/lib/stripe/params/v2/money_management/payout_method_archive_params.rb +10 -0
  298. data/lib/stripe/params/v2/money_management/payout_method_list_params.rb +31 -0
  299. data/lib/stripe/params/v2/money_management/payout_method_retrieve_params.rb +10 -0
  300. data/lib/stripe/params/v2/money_management/payout_method_unarchive_params.rb +10 -0
  301. data/lib/stripe/params/v2/money_management/payout_methods_bank_account_spec_retrieve_params.rb +17 -0
  302. data/lib/stripe/params/v2/money_management/received_credit_list_params.rb +44 -0
  303. data/lib/stripe/params/v2/money_management/received_credit_retrieve_params.rb +10 -0
  304. data/lib/stripe/params/v2/money_management/received_debit_list_params.rb +17 -0
  305. data/lib/stripe/params/v2/money_management/received_debit_retrieve_params.rb +10 -0
  306. data/lib/stripe/params/v2/money_management/transaction_entry_list_params.rb +43 -0
  307. data/lib/stripe/params/v2/money_management/transaction_entry_retrieve_params.rb +10 -0
  308. data/lib/stripe/params/v2/money_management/transaction_list_params.rb +47 -0
  309. data/lib/stripe/params/v2/money_management/transaction_retrieve_params.rb +10 -0
  310. data/lib/stripe/params/v2/payments/off_session_payment_cancel_params.rb +10 -0
  311. data/lib/stripe/params/v2/payments/off_session_payment_capture_params.rb +61 -0
  312. data/lib/stripe/params/v2/payments/off_session_payment_create_params.rb +237 -0
  313. data/lib/stripe/params/v2/payments/off_session_payment_list_params.rb +17 -0
  314. data/lib/stripe/params/v2/payments/off_session_payment_retrieve_params.rb +10 -0
  315. data/lib/stripe/params/v2/test_helpers/financial_address_credit_params.rb +23 -0
  316. data/lib/stripe/params/v2/test_helpers/financial_address_generate_microdeposits_params.rb +10 -0
  317. data/lib/stripe/params.rb +169 -0
  318. data/lib/stripe/request_options.rb +3 -1
  319. data/lib/stripe/resources/account.rb +166 -1
  320. data/lib/stripe/resources/account_notice.rb +94 -0
  321. data/lib/stripe/resources/account_session.rb +81 -0
  322. data/lib/stripe/resources/billing/analytics/meter_usage.rb +33 -0
  323. data/lib/stripe/resources/billing/analytics/meter_usage_row.rb +38 -0
  324. data/lib/stripe/resources/billing/credit_balance_summary.rb +2 -0
  325. data/lib/stripe/resources/billing/credit_grant.rb +2 -0
  326. data/lib/stripe/resources/billing_portal/session.rb +2 -0
  327. data/lib/stripe/resources/capital/financing_offer.rb +142 -0
  328. data/lib/stripe/resources/capital/financing_summary.rb +79 -0
  329. data/lib/stripe/resources/capital/financing_transaction.rb +99 -0
  330. data/lib/stripe/resources/card.rb +2 -0
  331. data/lib/stripe/resources/cash_balance.rb +2 -0
  332. data/lib/stripe/resources/charge.rb +234 -1
  333. data/lib/stripe/resources/checkout/session.rb +154 -4
  334. data/lib/stripe/resources/confirmation_token.rb +155 -0
  335. data/lib/stripe/resources/coupon.rb +26 -1
  336. data/lib/stripe/resources/credit_note.rb +2 -0
  337. data/lib/stripe/resources/credit_note_line_item.rb +18 -0
  338. data/lib/stripe/resources/customer.rb +2 -0
  339. data/lib/stripe/resources/customer_balance_transaction.rb +2 -0
  340. data/lib/stripe/resources/customer_cash_balance_transaction.rb +2 -0
  341. data/lib/stripe/resources/customer_session.rb +2 -0
  342. data/lib/stripe/resources/discount.rb +2 -0
  343. data/lib/stripe/resources/dispute.rb +22 -0
  344. data/lib/stripe/resources/event.rb +64 -1
  345. data/lib/stripe/resources/financial_connections/account.rb +27 -0
  346. data/lib/stripe/resources/financial_connections/account_inferred_balance.rb +35 -0
  347. data/lib/stripe/resources/financial_connections/institution.rb +127 -0
  348. data/lib/stripe/resources/financial_connections/session.rb +67 -1
  349. data/lib/stripe/resources/fx_quote.rb +147 -0
  350. data/lib/stripe/resources/identity/verification_session.rb +2 -0
  351. data/lib/stripe/resources/invoice.rb +152 -1
  352. data/lib/stripe/resources/invoice_item.rb +4 -0
  353. data/lib/stripe/resources/invoice_line_item.rb +40 -0
  354. data/lib/stripe/resources/invoice_payment.rb +2 -0
  355. data/lib/stripe/resources/issuing/credit_underwriting_record.rb +263 -0
  356. data/lib/stripe/resources/issuing/dispute_settlement_detail.rb +71 -0
  357. data/lib/stripe/resources/issuing/fraud_liability_debit.rb +51 -0
  358. data/lib/stripe/resources/issuing/settlement.rb +61 -0
  359. data/lib/stripe/resources/issuing/transaction.rb +2 -0
  360. data/lib/stripe/resources/line_item.rb +68 -1
  361. data/lib/stripe/resources/mandate.rb +71 -0
  362. data/lib/stripe/resources/margin.rb +64 -0
  363. data/lib/stripe/resources/order.rb +987 -0
  364. data/lib/stripe/resources/payment_attempt_record.rb +2102 -0
  365. data/lib/stripe/resources/payment_intent.rb +848 -4
  366. data/lib/stripe/resources/payment_intent_amount_details_line_item.rb +128 -0
  367. data/lib/stripe/resources/payment_method.rb +157 -0
  368. data/lib/stripe/resources/payment_method_configuration.rb +204 -0
  369. data/lib/stripe/resources/payment_record.rb +2208 -0
  370. data/lib/stripe/resources/price.rb +20 -0
  371. data/lib/stripe/resources/privacy/redaction_job.rb +187 -0
  372. data/lib/stripe/resources/privacy/redaction_job_validation_error.rb +49 -0
  373. data/lib/stripe/resources/promotion_code.rb +2 -0
  374. data/lib/stripe/resources/quote.rb +571 -2
  375. data/lib/stripe/resources/quote_line.rb +521 -0
  376. data/lib/stripe/resources/quote_preview_invoice.rb +1150 -0
  377. data/lib/stripe/resources/quote_preview_subscription_schedule.rb +732 -0
  378. data/lib/stripe/resources/refund.rb +18 -0
  379. data/lib/stripe/resources/setup_attempt.rb +63 -0
  380. data/lib/stripe/resources/setup_intent.rb +132 -1
  381. data/lib/stripe/resources/source.rb +38 -0
  382. data/lib/stripe/resources/subscription.rb +232 -0
  383. data/lib/stripe/resources/subscription_item.rb +20 -1
  384. data/lib/stripe/resources/subscription_schedule.rb +198 -3
  385. data/lib/stripe/resources/tax/association.rb +86 -0
  386. data/lib/stripe/resources/tax/form.rb +264 -0
  387. data/lib/stripe/resources/tax_id.rb +4 -0
  388. data/lib/stripe/resources/terminal/configuration.rb +16 -0
  389. data/lib/stripe/resources/terminal/onboarding_link.rb +71 -0
  390. data/lib/stripe/resources/terminal/reader.rb +8 -0
  391. data/lib/stripe/resources/terminal/reader_collected_data.rb +47 -0
  392. data/lib/stripe/resources/transfer.rb +2 -0
  393. data/lib/stripe/resources/treasury/financial_account.rb +2 -0
  394. data/lib/stripe/resources/treasury/financial_account_features.rb +2 -0
  395. data/lib/stripe/resources/treasury/outbound_transfer.rb +30 -0
  396. data/lib/stripe/resources/treasury/received_credit.rb +30 -0
  397. data/lib/stripe/resources/treasury/received_debit.rb +32 -0
  398. data/lib/stripe/resources/v2/billing/bill_setting.rb +102 -0
  399. data/lib/stripe/resources/v2/billing/bill_setting_version.rb +90 -0
  400. data/lib/stripe/resources/v2/billing/cadence.rb +609 -0
  401. data/lib/stripe/resources/v2/billing/collection_setting.rb +274 -0
  402. data/lib/stripe/resources/v2/billing/collection_setting_version.rb +262 -0
  403. data/lib/stripe/resources/v2/billing/profile.rb +46 -0
  404. data/lib/stripe/resources/v2/core/account.rb +3851 -0
  405. data/lib/stripe/resources/v2/core/account_link.rb +123 -0
  406. data/lib/stripe/resources/v2/core/account_person.rb +477 -0
  407. data/lib/stripe/resources/v2/core/vault/gb_bank_account.rb +114 -0
  408. data/lib/stripe/resources/v2/core/vault/us_bank_account.rb +47 -0
  409. data/lib/stripe/resources/v2/financial_address_credit_simulation.rb +28 -0
  410. data/lib/stripe/resources/v2/financial_address_generated_microdeposits.rb +30 -0
  411. data/lib/stripe/resources/v2/money_management/adjustment.rb +67 -0
  412. data/lib/stripe/resources/v2/money_management/financial_account.rb +140 -0
  413. data/lib/stripe/resources/v2/money_management/financial_address.rb +132 -0
  414. data/lib/stripe/resources/v2/money_management/inbound_transfer.rb +148 -0
  415. data/lib/stripe/resources/v2/money_management/outbound_payment.rb +217 -0
  416. data/lib/stripe/resources/v2/money_management/outbound_payment_quote.rb +144 -0
  417. data/lib/stripe/resources/v2/money_management/outbound_setup_intent.rb +69 -0
  418. data/lib/stripe/resources/v2/money_management/outbound_transfer.rb +196 -0
  419. data/lib/stripe/resources/v2/money_management/payout_method.rb +109 -0
  420. data/lib/stripe/resources/v2/money_management/payout_methods_bank_account_spec.rb +81 -0
  421. data/lib/stripe/resources/v2/money_management/received_credit.rb +228 -0
  422. data/lib/stripe/resources/v2/money_management/received_debit.rb +136 -0
  423. data/lib/stripe/resources/v2/money_management/transaction.rb +116 -0
  424. data/lib/stripe/resources/v2/money_management/transaction_entry.rb +105 -0
  425. data/lib/stripe/resources/v2/payments/off_session_payment.rb +242 -0
  426. data/lib/stripe/resources.rb +116 -0
  427. data/lib/stripe/services/account_notice_service.rb +39 -0
  428. data/lib/stripe/services/billing/analytics/meter_usage_service.rb +21 -0
  429. data/lib/stripe/services/billing/analytics_service.rb +15 -0
  430. data/lib/stripe/services/billing_service.rb +2 -1
  431. data/lib/stripe/services/capital/financing_offer_service.rb +42 -0
  432. data/lib/stripe/services/capital/financing_summary_service.rb +19 -0
  433. data/lib/stripe/services/capital/financing_transaction_service.rb +31 -0
  434. data/lib/stripe/services/capital_service.rb +15 -0
  435. data/lib/stripe/services/external_account_service.rb +68 -0
  436. data/lib/stripe/services/financial_connections/account_inferred_balance_service.rb +19 -0
  437. data/lib/stripe/services/financial_connections/account_service.rb +3 -1
  438. data/lib/stripe/services/financial_connections/institution_service.rb +30 -0
  439. data/lib/stripe/services/financial_connections_service.rb +2 -1
  440. data/lib/stripe/services/fx_quote_service.rb +27 -0
  441. data/lib/stripe/services/issuing/credit_underwriting_record_service.rb +74 -0
  442. data/lib/stripe/services/issuing/dispute_settlement_detail_service.rb +30 -0
  443. data/lib/stripe/services/issuing/fraud_liability_debit_service.rb +30 -0
  444. data/lib/stripe/services/issuing_service.rb +5 -1
  445. data/lib/stripe/services/mandate_service.rb +5 -0
  446. data/lib/stripe/services/margin_service.rb +50 -0
  447. data/lib/stripe/services/order_line_item_service.rb +17 -0
  448. data/lib/stripe/services/order_service.rb +78 -0
  449. data/lib/stripe/services/payment_attempt_record_service.rb +28 -0
  450. data/lib/stripe/services/payment_intent_amount_details_line_item_service.rb +17 -0
  451. data/lib/stripe/services/payment_intent_service.rb +44 -0
  452. data/lib/stripe/services/payment_record_service.rb +89 -0
  453. data/lib/stripe/services/privacy/redaction_job_service.rb +104 -0
  454. data/lib/stripe/services/privacy/redaction_job_validation_error_service.rb +19 -0
  455. data/lib/stripe/services/privacy_service.rb +13 -0
  456. data/lib/stripe/services/quote_line_service.rb +17 -0
  457. data/lib/stripe/services/quote_preview_invoice_service.rb +17 -0
  458. data/lib/stripe/services/quote_preview_subscription_schedule_service.rb +17 -0
  459. data/lib/stripe/services/quote_service.rb +49 -1
  460. data/lib/stripe/services/subscription_schedule_service.rb +11 -0
  461. data/lib/stripe/services/subscription_service.rb +11 -0
  462. data/lib/stripe/services/tax/association_service.rb +19 -0
  463. data/lib/stripe/services/tax/form_service.rb +37 -0
  464. data/lib/stripe/services/tax_service.rb +3 -1
  465. data/lib/stripe/services/terminal/onboarding_link_service.rb +19 -0
  466. data/lib/stripe/services/terminal/reader_collected_data_service.rb +19 -0
  467. data/lib/stripe/services/terminal_service.rb +3 -1
  468. data/lib/stripe/services/v1_services.rb +10 -1
  469. data/lib/stripe/services/v2/billing/bill_setting_service.rb +61 -0
  470. data/lib/stripe/services/v2/billing/bill_settings/version_service.rb +34 -0
  471. data/lib/stripe/services/v2/billing/cadence_service.rb +65 -0
  472. data/lib/stripe/services/v2/billing/collection_setting_service.rb +61 -0
  473. data/lib/stripe/services/v2/billing/collection_settings/version_service.rb +34 -0
  474. data/lib/stripe/services/v2/billing/profile_service.rb +54 -0
  475. data/lib/stripe/services/v2/billing_service.rb +5 -1
  476. data/lib/stripe/services/v2/core/account_link_service.rb +21 -0
  477. data/lib/stripe/services/v2/core/account_service.rb +76 -0
  478. data/lib/stripe/services/v2/core/accounts/person_service.rb +67 -0
  479. data/lib/stripe/services/v2/core/vault/gb_bank_account_service.rb +74 -0
  480. data/lib/stripe/services/v2/core/vault/us_bank_account_service.rb +68 -0
  481. data/lib/stripe/services/v2/core/vault_service.rb +18 -0
  482. data/lib/stripe/services/v2/core_service.rb +4 -1
  483. data/lib/stripe/services/v2/money_management/adjustment_service.rb +32 -0
  484. data/lib/stripe/services/v2/money_management/financial_account_service.rb +59 -0
  485. data/lib/stripe/services/v2/money_management/financial_address_service.rb +46 -0
  486. data/lib/stripe/services/v2/money_management/inbound_transfer_service.rb +45 -0
  487. data/lib/stripe/services/v2/money_management/outbound_payment_quote_service.rb +34 -0
  488. data/lib/stripe/services/v2/money_management/outbound_payment_service.rb +62 -0
  489. data/lib/stripe/services/v2/money_management/outbound_setup_intent_service.rb +73 -0
  490. data/lib/stripe/services/v2/money_management/outbound_transfer_service.rb +60 -0
  491. data/lib/stripe/services/v2/money_management/payout_method_service.rb +63 -0
  492. data/lib/stripe/services/v2/money_management/payout_methods_bank_account_spec_service.rb +23 -0
  493. data/lib/stripe/services/v2/money_management/received_credit_service.rb +32 -0
  494. data/lib/stripe/services/v2/money_management/received_debit_service.rb +32 -0
  495. data/lib/stripe/services/v2/money_management/transaction_entry_service.rb +32 -0
  496. data/lib/stripe/services/v2/money_management/transaction_service.rb +32 -0
  497. data/lib/stripe/services/v2/money_management_service.rb +31 -0
  498. data/lib/stripe/services/v2/payment_service.rb +15 -0
  499. data/lib/stripe/services/v2/payments/off_session_payment_service.rb +65 -0
  500. data/lib/stripe/services/v2/test_helper_service.rb +15 -0
  501. data/lib/stripe/services/v2/test_helpers/financial_address_service.rb +36 -0
  502. data/lib/stripe/services/v2_services.rb +4 -1
  503. data/lib/stripe/services.rb +61 -0
  504. data/lib/stripe/stripe_client.rb +1 -1
  505. data/lib/stripe/stripe_configuration.rb +9 -2
  506. data/lib/stripe/stripe_object.rb +9 -9
  507. data/lib/stripe/util.rb +9 -3
  508. data/lib/stripe/version.rb +1 -1
  509. data/lib/stripe.rb +53 -0
  510. data/rbi/stripe.rbi +155102 -90522
  511. metadata +351 -5
@@ -0,0 +1,987 @@
1
+ # File generated from our OpenAPI spec
2
+ # frozen_string_literal: true
3
+
4
+ module Stripe
5
+ # An Order describes a purchase being made by a customer, including the
6
+ # products & quantities being purchased, the order status, the payment information,
7
+ # and the billing/shipping details.
8
+ #
9
+ # Related guide: [Orders overview](https://stripe.com/docs/orders)
10
+ class Order < APIResource
11
+ extend Stripe::APIOperations::Create
12
+ extend Stripe::APIOperations::List
13
+ include Stripe::APIOperations::Save
14
+
15
+ OBJECT_NAME = "order"
16
+ def self.object_name
17
+ "order"
18
+ end
19
+
20
+ class AutomaticTax < Stripe::StripeObject
21
+ # Whether Stripe automatically computes tax on this Order.
22
+ attr_reader :enabled
23
+ # The status of the most recent automated tax calculation for this Order.
24
+ attr_reader :status
25
+
26
+ def self.inner_class_types
27
+ @inner_class_types = {}
28
+ end
29
+
30
+ def self.field_remappings
31
+ @field_remappings = {}
32
+ end
33
+ end
34
+
35
+ class BillingDetails < Stripe::StripeObject
36
+ class Address < Stripe::StripeObject
37
+ # City, district, suburb, town, or village.
38
+ attr_reader :city
39
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
40
+ attr_reader :country
41
+ # Address line 1, such as the street, PO Box, or company name.
42
+ attr_reader :line1
43
+ # Address line 2, such as the apartment, suite, unit, or building.
44
+ attr_reader :line2
45
+ # ZIP or postal code.
46
+ attr_reader :postal_code
47
+ # State, county, province, or region.
48
+ attr_reader :state
49
+
50
+ def self.inner_class_types
51
+ @inner_class_types = {}
52
+ end
53
+
54
+ def self.field_remappings
55
+ @field_remappings = {}
56
+ end
57
+ end
58
+ # Billing address for the order.
59
+ attr_reader :address
60
+ # Email address for the order.
61
+ attr_reader :email
62
+ # Full name for the order.
63
+ attr_reader :name
64
+ # Billing phone number for the order (including extension).
65
+ attr_reader :phone
66
+
67
+ def self.inner_class_types
68
+ @inner_class_types = { address: Address }
69
+ end
70
+
71
+ def self.field_remappings
72
+ @field_remappings = {}
73
+ end
74
+ end
75
+
76
+ class Payment < Stripe::StripeObject
77
+ class Settings < Stripe::StripeObject
78
+ class AutomaticPaymentMethods < Stripe::StripeObject
79
+ # Whether this Order has been opted into managing payment method types via the [Stripe Dashboard](https://dashboard.stripe.com/settings/payment_methods).
80
+ attr_reader :enabled
81
+
82
+ def self.inner_class_types
83
+ @inner_class_types = {}
84
+ end
85
+
86
+ def self.field_remappings
87
+ @field_remappings = {}
88
+ end
89
+ end
90
+
91
+ class PaymentMethodOptions < Stripe::StripeObject
92
+ class AcssDebit < Stripe::StripeObject
93
+ class MandateOptions < Stripe::StripeObject
94
+ # A URL for custom mandate text
95
+ attr_reader :custom_mandate_url
96
+ # Description of the interval. Only required if the 'payment_schedule' parameter is 'interval' or 'combined'.
97
+ attr_reader :interval_description
98
+ # Payment schedule for the mandate.
99
+ attr_reader :payment_schedule
100
+ # Transaction type of the mandate.
101
+ attr_reader :transaction_type
102
+
103
+ def self.inner_class_types
104
+ @inner_class_types = {}
105
+ end
106
+
107
+ def self.field_remappings
108
+ @field_remappings = {}
109
+ end
110
+ end
111
+ # Attribute for field mandate_options
112
+ attr_reader :mandate_options
113
+ # Indicates that you intend to make future payments with this PaymentIntent's payment method.
114
+ #
115
+ # 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.
116
+ #
117
+ # 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.
118
+ #
119
+ # 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).
120
+ attr_reader :setup_future_usage
121
+ # Controls when Stripe will attempt to debit the funds from the customer's account. The date must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15 calendar days from now.
122
+ attr_reader :target_date
123
+ # Bank account verification method.
124
+ attr_reader :verification_method
125
+
126
+ def self.inner_class_types
127
+ @inner_class_types = { mandate_options: MandateOptions }
128
+ end
129
+
130
+ def self.field_remappings
131
+ @field_remappings = {}
132
+ end
133
+ end
134
+
135
+ class AfterpayClearpay < Stripe::StripeObject
136
+ # Controls when the funds will be captured from the customer's account.
137
+ attr_reader :capture_method
138
+ # Order identifier shown to the user in Afterpay's online portal. We recommend using a value that helps you answer any questions a customer might have about the payment. The identifier is limited to 128 characters and may contain only letters, digits, underscores, backslashes and dashes.
139
+ attr_reader :reference
140
+ # Indicates that you intend to make future payments with the payment method.
141
+ #
142
+ # Providing this parameter will [attach the payment method](https://stripe.com/docs/payments/save-during-payment) to the order's Customer, if present, after the order's PaymentIntent is confirmed and any required actions from the user are complete. If no Customer was provided, the payment method can still be [attached](https://stripe.com/docs/api/payment_methods/attach) to a Customer after the transaction completes.
143
+ #
144
+ # When processing card payments, Stripe also uses `setup_future_usage` to dynamically optimize your payment flow and comply with regional legislation and network rules, such as [SCA](https://stripe.com/docs/strong-customer-authentication).
145
+ #
146
+ # If `setup_future_usage` is already set and you are performing a request using a publishable key, you may only update the value from `on_session` to `off_session`.
147
+ attr_reader :setup_future_usage
148
+
149
+ def self.inner_class_types
150
+ @inner_class_types = {}
151
+ end
152
+
153
+ def self.field_remappings
154
+ @field_remappings = {}
155
+ end
156
+ end
157
+
158
+ class Alipay < Stripe::StripeObject
159
+ # Indicates that you intend to make future payments with this PaymentIntent's payment method.
160
+ #
161
+ # 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.
162
+ #
163
+ # 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.
164
+ #
165
+ # 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).
166
+ attr_reader :setup_future_usage
167
+
168
+ def self.inner_class_types
169
+ @inner_class_types = {}
170
+ end
171
+
172
+ def self.field_remappings
173
+ @field_remappings = {}
174
+ end
175
+ end
176
+
177
+ class Bancontact < Stripe::StripeObject
178
+ # Preferred language of the Bancontact authorization page that the customer is redirected to.
179
+ attr_reader :preferred_language
180
+ # Indicates that you intend to make future payments with this PaymentIntent's payment method.
181
+ #
182
+ # 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.
183
+ #
184
+ # 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.
185
+ #
186
+ # 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).
187
+ attr_reader :setup_future_usage
188
+
189
+ def self.inner_class_types
190
+ @inner_class_types = {}
191
+ end
192
+
193
+ def self.field_remappings
194
+ @field_remappings = {}
195
+ end
196
+ end
197
+
198
+ class Card < Stripe::StripeObject
199
+ # Controls when the funds will be captured from the customer's account.
200
+ attr_reader :capture_method
201
+ # Indicates that you intend to make future payments with the payment method.
202
+ #
203
+ # Providing this parameter will [attach the payment method](https://stripe.com/docs/payments/save-during-payment) to the order's Customer, if present, after the order's PaymentIntent is confirmed and any required actions from the user are complete. If no Customer was provided, the payment method can still be [attached](https://stripe.com/docs/api/payment_methods/attach) to a Customer after the transaction completes.
204
+ #
205
+ # When processing card payments, Stripe also uses `setup_future_usage` to dynamically optimize your payment flow and comply with regional legislation and network rules, such as [SCA](https://stripe.com/docs/strong-customer-authentication).
206
+ #
207
+ # If `setup_future_usage` is already set and you are performing a request using a publishable key, you may only update the value from `on_session` to `off_session`.
208
+ attr_reader :setup_future_usage
209
+
210
+ def self.inner_class_types
211
+ @inner_class_types = {}
212
+ end
213
+
214
+ def self.field_remappings
215
+ @field_remappings = {}
216
+ end
217
+ end
218
+
219
+ class CustomerBalance < Stripe::StripeObject
220
+ class BankTransfer < Stripe::StripeObject
221
+ class EuBankTransfer < Stripe::StripeObject
222
+ # The desired country code of the bank account information. Permitted values include: `BE`, `DE`, `ES`, `FR`, `IE`, or `NL`.
223
+ attr_reader :country
224
+
225
+ def self.inner_class_types
226
+ @inner_class_types = {}
227
+ end
228
+
229
+ def self.field_remappings
230
+ @field_remappings = {}
231
+ end
232
+ end
233
+ # Attribute for field eu_bank_transfer
234
+ attr_reader :eu_bank_transfer
235
+ # List of address types that should be returned in the financial_addresses response. If not specified, all valid types will be returned.
236
+ #
237
+ # Permitted values include: `sort_code`, `zengin`, `iban`, or `spei`.
238
+ attr_reader :requested_address_types
239
+ # The bank transfer type that this PaymentIntent is allowed to use for funding Permitted values include: `eu_bank_transfer`, `gb_bank_transfer`, `jp_bank_transfer`, `mx_bank_transfer`, or `us_bank_transfer`.
240
+ attr_reader :type
241
+
242
+ def self.inner_class_types
243
+ @inner_class_types = { eu_bank_transfer: EuBankTransfer }
244
+ end
245
+
246
+ def self.field_remappings
247
+ @field_remappings = {}
248
+ end
249
+ end
250
+ # Attribute for field bank_transfer
251
+ attr_reader :bank_transfer
252
+ # The funding method type to be used when there are not enough funds in the customer balance. Permitted values include: `bank_transfer`.
253
+ attr_reader :funding_type
254
+ # Indicates that you intend to make future payments with this PaymentIntent's payment method.
255
+ #
256
+ # 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.
257
+ #
258
+ # 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.
259
+ #
260
+ # 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).
261
+ attr_reader :setup_future_usage
262
+
263
+ def self.inner_class_types
264
+ @inner_class_types = { bank_transfer: BankTransfer }
265
+ end
266
+
267
+ def self.field_remappings
268
+ @field_remappings = {}
269
+ end
270
+ end
271
+
272
+ class Ideal < Stripe::StripeObject
273
+ # Indicates that you intend to make future payments with this PaymentIntent's payment method.
274
+ #
275
+ # 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.
276
+ #
277
+ # 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.
278
+ #
279
+ # 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).
280
+ attr_reader :setup_future_usage
281
+
282
+ def self.inner_class_types
283
+ @inner_class_types = {}
284
+ end
285
+
286
+ def self.field_remappings
287
+ @field_remappings = {}
288
+ end
289
+ end
290
+
291
+ class Klarna < Stripe::StripeObject
292
+ # Controls when the funds will be captured from the customer's account.
293
+ attr_reader :capture_method
294
+ # Preferred locale of the Klarna checkout page that the customer is redirected to.
295
+ attr_reader :preferred_locale
296
+ # Indicates that you intend to make future payments with this PaymentIntent's payment method.
297
+ #
298
+ # 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.
299
+ #
300
+ # 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.
301
+ #
302
+ # 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).
303
+ attr_reader :setup_future_usage
304
+
305
+ def self.inner_class_types
306
+ @inner_class_types = {}
307
+ end
308
+
309
+ def self.field_remappings
310
+ @field_remappings = {}
311
+ end
312
+ end
313
+
314
+ class Link < Stripe::StripeObject
315
+ # Controls when the funds will be captured from the customer's account.
316
+ attr_reader :capture_method
317
+ # [Deprecated] This is a legacy parameter that no longer has any function.
318
+ attr_reader :persistent_token
319
+ # Indicates that you intend to make future payments with this PaymentIntent's payment method.
320
+ #
321
+ # 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.
322
+ #
323
+ # 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.
324
+ #
325
+ # 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).
326
+ attr_reader :setup_future_usage
327
+
328
+ def self.inner_class_types
329
+ @inner_class_types = {}
330
+ end
331
+
332
+ def self.field_remappings
333
+ @field_remappings = {}
334
+ end
335
+ end
336
+
337
+ class Oxxo < Stripe::StripeObject
338
+ # The number of calendar days before an OXXO invoice expires. For example, if you create an OXXO invoice on Monday and you set expires_after_days to 2, the OXXO invoice will expire on Wednesday at 23:59 America/Mexico_City time.
339
+ attr_reader :expires_after_days
340
+ # Indicates that you intend to make future payments with this PaymentIntent's payment method.
341
+ #
342
+ # 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.
343
+ #
344
+ # 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.
345
+ #
346
+ # 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).
347
+ attr_reader :setup_future_usage
348
+
349
+ def self.inner_class_types
350
+ @inner_class_types = {}
351
+ end
352
+
353
+ def self.field_remappings
354
+ @field_remappings = {}
355
+ end
356
+ end
357
+
358
+ class P24 < Stripe::StripeObject
359
+ # Indicates that you intend to make future payments with this PaymentIntent's payment method.
360
+ #
361
+ # 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.
362
+ #
363
+ # 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.
364
+ #
365
+ # 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).
366
+ attr_reader :setup_future_usage
367
+
368
+ def self.inner_class_types
369
+ @inner_class_types = {}
370
+ end
371
+
372
+ def self.field_remappings
373
+ @field_remappings = {}
374
+ end
375
+ end
376
+
377
+ class Paypal < Stripe::StripeObject
378
+ class LineItem < Stripe::StripeObject
379
+ class Tax < Stripe::StripeObject
380
+ # The tax for a single unit of the line item in minor units. Cannot be a negative number.
381
+ attr_reader :amount
382
+ # The tax behavior for the line item.
383
+ attr_reader :behavior
384
+
385
+ def self.inner_class_types
386
+ @inner_class_types = {}
387
+ end
388
+
389
+ def self.field_remappings
390
+ @field_remappings = {}
391
+ end
392
+ end
393
+ # Type of the line item.
394
+ attr_reader :category
395
+ # Description of the line item.
396
+ attr_reader :description
397
+ # Descriptive name of the line item.
398
+ attr_reader :name
399
+ # Quantity of the line item. Cannot be a negative number.
400
+ attr_reader :quantity
401
+ # Client facing stock keeping unit, article number or similar.
402
+ attr_reader :sku
403
+ # The Stripe account ID of the connected account that sells the item. This is only needed when using [Separate Charges and Transfers](https://docs.stripe.com/connect/separate-charges-and-transfers).
404
+ attr_reader :sold_by
405
+ # Attribute for field tax
406
+ attr_reader :tax
407
+ # Price for a single unit of the line item in minor units. Cannot be a negative number.
408
+ attr_reader :unit_amount
409
+
410
+ def self.inner_class_types
411
+ @inner_class_types = { tax: Tax }
412
+ end
413
+
414
+ def self.field_remappings
415
+ @field_remappings = {}
416
+ end
417
+ end
418
+ # Controls when the funds will be captured from the customer's account.
419
+ attr_reader :capture_method
420
+ # The line items purchased by the customer.
421
+ attr_reader :line_items
422
+ # Preferred locale of the PayPal checkout page that the customer is redirected to.
423
+ attr_reader :preferred_locale
424
+ # 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.
425
+ attr_reader :reference
426
+ # 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.
427
+ attr_reader :reference_id
428
+ # Indicates that you intend to make future payments with this PaymentIntent's payment method.
429
+ #
430
+ # 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.
431
+ #
432
+ # 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.
433
+ #
434
+ # 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).
435
+ attr_reader :setup_future_usage
436
+ # 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.
437
+ attr_reader :subsellers
438
+
439
+ def self.inner_class_types
440
+ @inner_class_types = { line_items: LineItem }
441
+ end
442
+
443
+ def self.field_remappings
444
+ @field_remappings = {}
445
+ end
446
+ end
447
+
448
+ class SepaDebit < Stripe::StripeObject
449
+ class MandateOptions < Stripe::StripeObject
450
+ # Prefix used to generate the Mandate reference. Must be at most 12 characters long. Must consist of only uppercase letters, numbers, spaces, or the following special characters: '/', '_', '-', '&', '.'. Cannot begin with 'STRIPE'.
451
+ attr_reader :reference_prefix
452
+
453
+ def self.inner_class_types
454
+ @inner_class_types = {}
455
+ end
456
+
457
+ def self.field_remappings
458
+ @field_remappings = {}
459
+ end
460
+ end
461
+ # Attribute for field mandate_options
462
+ attr_reader :mandate_options
463
+ # Indicates that you intend to make future payments with this PaymentIntent's payment method.
464
+ #
465
+ # 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.
466
+ #
467
+ # 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.
468
+ #
469
+ # 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).
470
+ attr_reader :setup_future_usage
471
+ # Controls when Stripe will attempt to debit the funds from the customer's account. The date must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15 calendar days from now.
472
+ attr_reader :target_date
473
+
474
+ def self.inner_class_types
475
+ @inner_class_types = { mandate_options: MandateOptions }
476
+ end
477
+
478
+ def self.field_remappings
479
+ @field_remappings = {}
480
+ end
481
+ end
482
+
483
+ class Sofort < Stripe::StripeObject
484
+ # Preferred language of the SOFORT authorization page that the customer is redirected to.
485
+ attr_reader :preferred_language
486
+ # Indicates that you intend to make future payments with this PaymentIntent's payment method.
487
+ #
488
+ # 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.
489
+ #
490
+ # 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.
491
+ #
492
+ # 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).
493
+ attr_reader :setup_future_usage
494
+
495
+ def self.inner_class_types
496
+ @inner_class_types = {}
497
+ end
498
+
499
+ def self.field_remappings
500
+ @field_remappings = {}
501
+ end
502
+ end
503
+
504
+ class WechatPay < Stripe::StripeObject
505
+ # The app ID registered with WeChat Pay. Only required when client is ios or android.
506
+ attr_reader :app_id
507
+ # The client type that the end customer will pay from
508
+ attr_reader :client
509
+ # Indicates that you intend to make future payments with this PaymentIntent's payment method.
510
+ #
511
+ # 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.
512
+ #
513
+ # 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.
514
+ #
515
+ # 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).
516
+ attr_reader :setup_future_usage
517
+
518
+ def self.inner_class_types
519
+ @inner_class_types = {}
520
+ end
521
+
522
+ def self.field_remappings
523
+ @field_remappings = {}
524
+ end
525
+ end
526
+ # Attribute for field acss_debit
527
+ attr_reader :acss_debit
528
+ # Attribute for field afterpay_clearpay
529
+ attr_reader :afterpay_clearpay
530
+ # Attribute for field alipay
531
+ attr_reader :alipay
532
+ # Attribute for field bancontact
533
+ attr_reader :bancontact
534
+ # Attribute for field card
535
+ attr_reader :card
536
+ # Attribute for field customer_balance
537
+ attr_reader :customer_balance
538
+ # Attribute for field ideal
539
+ attr_reader :ideal
540
+ # Attribute for field klarna
541
+ attr_reader :klarna
542
+ # Attribute for field link
543
+ attr_reader :link
544
+ # Attribute for field oxxo
545
+ attr_reader :oxxo
546
+ # Attribute for field p24
547
+ attr_reader :p24
548
+ # Attribute for field paypal
549
+ attr_reader :paypal
550
+ # Attribute for field sepa_debit
551
+ attr_reader :sepa_debit
552
+ # Attribute for field sofort
553
+ attr_reader :sofort
554
+ # Attribute for field wechat_pay
555
+ attr_reader :wechat_pay
556
+
557
+ def self.inner_class_types
558
+ @inner_class_types = {
559
+ acss_debit: AcssDebit,
560
+ afterpay_clearpay: AfterpayClearpay,
561
+ alipay: Alipay,
562
+ bancontact: Bancontact,
563
+ card: Card,
564
+ customer_balance: CustomerBalance,
565
+ ideal: Ideal,
566
+ klarna: Klarna,
567
+ link: Link,
568
+ oxxo: Oxxo,
569
+ p24: P24,
570
+ paypal: Paypal,
571
+ sepa_debit: SepaDebit,
572
+ sofort: Sofort,
573
+ wechat_pay: WechatPay,
574
+ }
575
+ end
576
+
577
+ def self.field_remappings
578
+ @field_remappings = {}
579
+ end
580
+ end
581
+
582
+ class TransferData < Stripe::StripeObject
583
+ # The amount that will be transferred automatically when the order is paid. If no amount is set, the full amount is transferred. There cannot be any line items with recurring prices when using this field.
584
+ attr_reader :amount
585
+ # ID of the Connected account receiving the transfer.
586
+ attr_reader :destination
587
+
588
+ def self.inner_class_types
589
+ @inner_class_types = {}
590
+ end
591
+
592
+ def self.field_remappings
593
+ @field_remappings = {}
594
+ end
595
+ end
596
+ # The amount of the application fee (if any) that will be requested to be applied to the payment and transferred to the application owner's Stripe account.
597
+ attr_reader :application_fee_amount
598
+ # Indicates whether order has been opted into using [Stripe Dashboard](https://dashboard.stripe.com/settings/payment_methods) to manage payment method types.
599
+ attr_reader :automatic_payment_methods
600
+ # PaymentMethod-specific configuration to provide to the order's PaymentIntent.
601
+ attr_reader :payment_method_options
602
+ # The list of [payment method types](https://stripe.com/docs/payments/payment-methods/overview) to provide to the order's PaymentIntent. Do not include this attribute if you prefer to manage your payment methods from the [Stripe Dashboard](https://dashboard.stripe.com/settings/payment_methods).
603
+ attr_reader :payment_method_types
604
+ # The URL to redirect the customer to after they authenticate their payment.
605
+ attr_reader :return_url
606
+ # For non-card charges, you can use this value as the complete description that appears on your customers' statements. Must contain at least one letter, maximum 22 characters.
607
+ attr_reader :statement_descriptor
608
+ # Provides information about a card payment that customers see on their statements. Concatenated with the prefix (shortened descriptor) or statement descriptor that’s set on the account to form the complete statement descriptor. Maximum 22 characters for the concatenated descriptor.
609
+ attr_reader :statement_descriptor_suffix
610
+ # Provides configuration for completing a transfer for the order after it is paid.
611
+ attr_reader :transfer_data
612
+
613
+ def self.inner_class_types
614
+ @inner_class_types = {
615
+ automatic_payment_methods: AutomaticPaymentMethods,
616
+ payment_method_options: PaymentMethodOptions,
617
+ transfer_data: TransferData,
618
+ }
619
+ end
620
+
621
+ def self.field_remappings
622
+ @field_remappings = {}
623
+ end
624
+ end
625
+ # ID of the payment intent associated with this order. Null when the order is `open`.
626
+ attr_reader :payment_intent
627
+ # Settings describing how the order should configure generated PaymentIntents.
628
+ attr_reader :settings
629
+ # The status of the underlying payment associated with this order, if any. Null when the order is `open`.
630
+ attr_reader :status
631
+
632
+ def self.inner_class_types
633
+ @inner_class_types = { settings: Settings }
634
+ end
635
+
636
+ def self.field_remappings
637
+ @field_remappings = {}
638
+ end
639
+ end
640
+
641
+ class ShippingCost < Stripe::StripeObject
642
+ class Tax < Stripe::StripeObject
643
+ # Amount of tax applied for this rate.
644
+ attr_reader :amount
645
+ # Tax rates can be applied to [invoices](/invoicing/taxes/tax-rates), [subscriptions](/billing/taxes/tax-rates) and [Checkout Sessions](/payments/checkout/use-manual-tax-rates) to collect tax.
646
+ #
647
+ # Related guide: [Tax rates](/billing/taxes/tax-rates)
648
+ attr_reader :rate
649
+ # The reasoning behind this tax, for example, if the product is tax exempt. The possible values for this field may be extended as new tax rules are supported.
650
+ attr_reader :taxability_reason
651
+ # The amount on which tax is calculated, in cents (or local equivalent).
652
+ attr_reader :taxable_amount
653
+
654
+ def self.inner_class_types
655
+ @inner_class_types = {}
656
+ end
657
+
658
+ def self.field_remappings
659
+ @field_remappings = {}
660
+ end
661
+ end
662
+ # Total shipping cost before any discounts or taxes are applied.
663
+ attr_reader :amount_subtotal
664
+ # Total tax amount applied due to shipping costs. If no tax was applied, defaults to 0.
665
+ attr_reader :amount_tax
666
+ # Total shipping cost after discounts and taxes are applied.
667
+ attr_reader :amount_total
668
+ # The ID of the ShippingRate for this order.
669
+ attr_reader :shipping_rate
670
+ # The taxes applied to the shipping rate.
671
+ attr_reader :taxes
672
+
673
+ def self.inner_class_types
674
+ @inner_class_types = { taxes: Tax }
675
+ end
676
+
677
+ def self.field_remappings
678
+ @field_remappings = {}
679
+ end
680
+ end
681
+
682
+ class ShippingDetails < Stripe::StripeObject
683
+ class Address < Stripe::StripeObject
684
+ # City, district, suburb, town, or village.
685
+ attr_reader :city
686
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
687
+ attr_reader :country
688
+ # Address line 1, such as the street, PO Box, or company name.
689
+ attr_reader :line1
690
+ # Address line 2, such as the apartment, suite, unit, or building.
691
+ attr_reader :line2
692
+ # ZIP or postal code.
693
+ attr_reader :postal_code
694
+ # State, county, province, or region.
695
+ attr_reader :state
696
+
697
+ def self.inner_class_types
698
+ @inner_class_types = {}
699
+ end
700
+
701
+ def self.field_remappings
702
+ @field_remappings = {}
703
+ end
704
+ end
705
+ # Recipient shipping address. Required if the order includes products that are shippable.
706
+ attr_reader :address
707
+ # Recipient name.
708
+ attr_reader :name
709
+ # Recipient phone (including extension).
710
+ attr_reader :phone
711
+
712
+ def self.inner_class_types
713
+ @inner_class_types = { address: Address }
714
+ end
715
+
716
+ def self.field_remappings
717
+ @field_remappings = {}
718
+ end
719
+ end
720
+
721
+ class TaxDetails < Stripe::StripeObject
722
+ class TaxId < Stripe::StripeObject
723
+ # The type of the tax ID, one of `ad_nrt`, `ar_cuit`, `eu_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `cn_tin`, `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eu_oss_vat`, `hr_oib`, `pe_ruc`, `ro_tin`, `rs_pib`, `sv_nit`, `uy_ruc`, `ve_rif`, `vn_tin`, `gb_vat`, `nz_gst`, `au_abn`, `au_arn`, `in_gst`, `no_vat`, `no_voec`, `za_vat`, `ch_vat`, `mx_rfc`, `sg_uen`, `ru_inn`, `ru_kpp`, `ca_bn`, `hk_br`, `es_cif`, `tw_vat`, `th_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `li_uid`, `li_vat`, `my_itn`, `us_ein`, `kr_brn`, `ca_qst`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `my_sst`, `sg_gst`, `ae_trn`, `cl_tin`, `sa_vat`, `id_npwp`, `my_frp`, `il_vat`, `ge_vat`, `ua_vat`, `is_vat`, `bg_uic`, `hu_tin`, `si_tin`, `ke_pin`, `tr_tin`, `eg_tin`, `ph_tin`, `al_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`, `de_stn`, `ch_uid`, `tz_vat`, `uz_vat`, `uz_tin`, `md_vat`, `ma_vat`, `by_tin`, `ao_tin`, `bs_tin`, `bb_tin`, `cd_nif`, `mr_nif`, `me_pib`, `zw_tin`, `ba_tin`, `gn_nif`, `mk_vat`, `sr_fin`, `sn_ninea`, `am_tin`, `np_pan`, `tj_tin`, `ug_tin`, `zm_tin`, `kh_tin`, `aw_tin`, `az_tin`, `bd_bin`, `bj_ifu`, `et_tin`, `kg_tin`, `la_tin`, `cm_niu`, `cv_nif`, `bf_ifu`, or `unknown`
724
+ attr_reader :type
725
+ # The value of the tax ID.
726
+ attr_reader :value
727
+
728
+ def self.inner_class_types
729
+ @inner_class_types = {}
730
+ end
731
+
732
+ def self.field_remappings
733
+ @field_remappings = {}
734
+ end
735
+ end
736
+ # Describes the purchaser's tax exemption status. One of `none`, `exempt`, or `reverse`.
737
+ attr_reader :tax_exempt
738
+ # The purchaser's tax IDs to be used in calculation of tax for this Order.
739
+ attr_reader :tax_ids
740
+
741
+ def self.inner_class_types
742
+ @inner_class_types = { tax_ids: TaxId }
743
+ end
744
+
745
+ def self.field_remappings
746
+ @field_remappings = {}
747
+ end
748
+ end
749
+
750
+ class TotalDetails < Stripe::StripeObject
751
+ class Breakdown < Stripe::StripeObject
752
+ class Discount < Stripe::StripeObject
753
+ # The amount discounted.
754
+ attr_reader :amount
755
+ # A discount represents the actual application of a [coupon](https://stripe.com/docs/api#coupons) or [promotion code](https://stripe.com/docs/api#promotion_codes).
756
+ # It contains information about when the discount began, when it will end, and what it is applied to.
757
+ #
758
+ # Related guide: [Applying discounts to subscriptions](https://stripe.com/docs/billing/subscriptions/discounts)
759
+ attr_reader :discount
760
+
761
+ def self.inner_class_types
762
+ @inner_class_types = {}
763
+ end
764
+
765
+ def self.field_remappings
766
+ @field_remappings = {}
767
+ end
768
+ end
769
+
770
+ class Tax < Stripe::StripeObject
771
+ # Amount of tax applied for this rate.
772
+ attr_reader :amount
773
+ # Tax rates can be applied to [invoices](/invoicing/taxes/tax-rates), [subscriptions](/billing/taxes/tax-rates) and [Checkout Sessions](/payments/checkout/use-manual-tax-rates) to collect tax.
774
+ #
775
+ # Related guide: [Tax rates](/billing/taxes/tax-rates)
776
+ attr_reader :rate
777
+ # The reasoning behind this tax, for example, if the product is tax exempt. The possible values for this field may be extended as new tax rules are supported.
778
+ attr_reader :taxability_reason
779
+ # The amount on which tax is calculated, in cents (or local equivalent).
780
+ attr_reader :taxable_amount
781
+
782
+ def self.inner_class_types
783
+ @inner_class_types = {}
784
+ end
785
+
786
+ def self.field_remappings
787
+ @field_remappings = {}
788
+ end
789
+ end
790
+ # The aggregated discounts.
791
+ attr_reader :discounts
792
+ # The aggregated tax amounts by rate.
793
+ attr_reader :taxes
794
+
795
+ def self.inner_class_types
796
+ @inner_class_types = { discounts: Discount, taxes: Tax }
797
+ end
798
+
799
+ def self.field_remappings
800
+ @field_remappings = {}
801
+ end
802
+ end
803
+ # This is the sum of all the discounts.
804
+ attr_reader :amount_discount
805
+ # This is the sum of all the shipping amounts.
806
+ attr_reader :amount_shipping
807
+ # This is the sum of all the tax amounts.
808
+ attr_reader :amount_tax
809
+ # Attribute for field breakdown
810
+ attr_reader :breakdown
811
+
812
+ def self.inner_class_types
813
+ @inner_class_types = { breakdown: Breakdown }
814
+ end
815
+
816
+ def self.field_remappings
817
+ @field_remappings = {}
818
+ end
819
+ end
820
+ # Order cost before any discounts or taxes are applied. A positive integer representing the subtotal of the order in the [smallest currency unit](https://stripe.com/docs/currencies#zero-decimal) (e.g., 100 cents to charge $1.00 or 100 to charge ¥100, a zero-decimal currency).
821
+ attr_reader :amount_subtotal
822
+ # Total order cost after discounts and taxes are applied. A positive integer representing the cost of the order in the [smallest currency unit](https://stripe.com/docs/currencies#zero-decimal) (e.g., 100 cents to charge $1.00 or 100 to charge ¥100, a zero-decimal currency). To submit an order, the total must be either 0 or at least $0.50 USD or [equivalent in charge currency](https://stripe.com/docs/currencies#minimum-and-maximum-charge-amounts).
823
+ attr_reader :amount_total
824
+ # ID of the Connect application that created the Order, if any.
825
+ attr_reader :application
826
+ # Attribute for field automatic_tax
827
+ attr_reader :automatic_tax
828
+ # Customer billing details associated with the order.
829
+ attr_reader :billing_details
830
+ # The client secret of this Order. Used for client-side retrieval using a publishable key.
831
+ #
832
+ # The client secret can be used to complete a payment for an Order from your frontend. It should not be stored, logged, embedded in URLs, or exposed to anyone other than the customer. Make sure that you have TLS enabled on any page that includes the client secret.
833
+ #
834
+ # Refer to our docs for [creating and processing an order](https://stripe.com/docs/orders-beta/create-and-process) to learn about how client_secret should be handled.
835
+ attr_reader :client_secret
836
+ # Time at which the object was created. Measured in seconds since the Unix epoch.
837
+ attr_reader :created
838
+ # Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
839
+ attr_reader :currency
840
+ # The customer which this orders belongs to.
841
+ attr_reader :customer
842
+ # An arbitrary string attached to the object. Often useful for displaying to users.
843
+ attr_reader :description
844
+ # The discounts applied to the order. Use `expand[]=discounts` to expand each discount.
845
+ attr_reader :discounts
846
+ # Unique identifier for the object.
847
+ attr_reader :id
848
+ # A recent IP address of the purchaser used for tax reporting and tax location inference.
849
+ attr_reader :ip_address
850
+ # A list of line items the customer is ordering. Each line item includes information about the product, the quantity, and the resulting cost. There is a maximum of 100 line items.
851
+ attr_reader :line_items
852
+ # Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
853
+ attr_reader :livemode
854
+ # 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.
855
+ attr_reader :metadata
856
+ # String representing the object's type. Objects of the same type share the same value.
857
+ attr_reader :object
858
+ # Attribute for field payment
859
+ attr_reader :payment
860
+ # The details of the customer cost of shipping, including the customer chosen ShippingRate.
861
+ attr_reader :shipping_cost
862
+ # Customer shipping information associated with the order.
863
+ attr_reader :shipping_details
864
+ # The overall status of the order.
865
+ attr_reader :status
866
+ # Attribute for field tax_details
867
+ attr_reader :tax_details
868
+ # Attribute for field total_details
869
+ attr_reader :total_details
870
+
871
+ # Cancels the order as well as the payment intent if one is attached.
872
+ def cancel(params = {}, opts = {})
873
+ request_stripe_object(
874
+ method: :post,
875
+ path: format("/v1/orders/%<id>s/cancel", { id: CGI.escape(self["id"]) }),
876
+ params: params,
877
+ opts: opts
878
+ )
879
+ end
880
+
881
+ # Cancels the order as well as the payment intent if one is attached.
882
+ def self.cancel(id, params = {}, opts = {})
883
+ request_stripe_object(
884
+ method: :post,
885
+ path: format("/v1/orders/%<id>s/cancel", { id: CGI.escape(id) }),
886
+ params: params,
887
+ opts: opts
888
+ )
889
+ end
890
+
891
+ # Creates a new open order object.
892
+ def self.create(params = {}, opts = {})
893
+ request_stripe_object(method: :post, path: "/v1/orders", params: params, opts: opts)
894
+ end
895
+
896
+ # Returns a list of your orders. The orders are returned sorted by creation date, with the most recently created orders appearing first.
897
+ def self.list(params = {}, opts = {})
898
+ request_stripe_object(method: :get, path: "/v1/orders", params: params, opts: opts)
899
+ end
900
+
901
+ # When retrieving an order, there is an includable line_items property containing the first handful of those items. There is also a URL where you can retrieve the full (paginated) list of line items.
902
+ def list_line_items(params = {}, opts = {})
903
+ request_stripe_object(
904
+ method: :get,
905
+ path: format("/v1/orders/%<id>s/line_items", { id: CGI.escape(self["id"]) }),
906
+ params: params,
907
+ opts: opts
908
+ )
909
+ end
910
+
911
+ # When retrieving an order, there is an includable line_items property containing the first handful of those items. There is also a URL where you can retrieve the full (paginated) list of line items.
912
+ def self.list_line_items(id, params = {}, opts = {})
913
+ request_stripe_object(
914
+ method: :get,
915
+ path: format("/v1/orders/%<id>s/line_items", { id: CGI.escape(id) }),
916
+ params: params,
917
+ opts: opts
918
+ )
919
+ end
920
+
921
+ # Reopens a submitted order.
922
+ def reopen(params = {}, opts = {})
923
+ request_stripe_object(
924
+ method: :post,
925
+ path: format("/v1/orders/%<id>s/reopen", { id: CGI.escape(self["id"]) }),
926
+ params: params,
927
+ opts: opts
928
+ )
929
+ end
930
+
931
+ # Reopens a submitted order.
932
+ def self.reopen(id, params = {}, opts = {})
933
+ request_stripe_object(
934
+ method: :post,
935
+ path: format("/v1/orders/%<id>s/reopen", { id: CGI.escape(id) }),
936
+ params: params,
937
+ opts: opts
938
+ )
939
+ end
940
+
941
+ # Submitting an Order transitions the status to processing and creates a PaymentIntent object so the order can be paid. If the Order has an amount_total of 0, no PaymentIntent object will be created. Once the order is submitted, its contents cannot be changed, unless the [reopen](https://docs.stripe.com/api#reopen_order) method is called.
942
+ def submit(params = {}, opts = {})
943
+ request_stripe_object(
944
+ method: :post,
945
+ path: format("/v1/orders/%<id>s/submit", { id: CGI.escape(self["id"]) }),
946
+ params: params,
947
+ opts: opts
948
+ )
949
+ end
950
+
951
+ # Submitting an Order transitions the status to processing and creates a PaymentIntent object so the order can be paid. If the Order has an amount_total of 0, no PaymentIntent object will be created. Once the order is submitted, its contents cannot be changed, unless the [reopen](https://docs.stripe.com/api#reopen_order) method is called.
952
+ def self.submit(id, params = {}, opts = {})
953
+ request_stripe_object(
954
+ method: :post,
955
+ path: format("/v1/orders/%<id>s/submit", { id: CGI.escape(id) }),
956
+ params: params,
957
+ opts: opts
958
+ )
959
+ end
960
+
961
+ # Updates the specific order by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
962
+ def self.update(id, params = {}, opts = {})
963
+ request_stripe_object(
964
+ method: :post,
965
+ path: format("/v1/orders/%<id>s", { id: CGI.escape(id) }),
966
+ params: params,
967
+ opts: opts
968
+ )
969
+ end
970
+
971
+ def self.inner_class_types
972
+ @inner_class_types = {
973
+ automatic_tax: AutomaticTax,
974
+ billing_details: BillingDetails,
975
+ payment: Payment,
976
+ shipping_cost: ShippingCost,
977
+ shipping_details: ShippingDetails,
978
+ tax_details: TaxDetails,
979
+ total_details: TotalDetails,
980
+ }
981
+ end
982
+
983
+ def self.field_remappings
984
+ @field_remappings = {}
985
+ end
986
+ end
987
+ end