stripe 15.0.0 → 15.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (320) hide show
  1. checksums.yaml +4 -4
  2. data/API_VERSION +1 -0
  3. data/CHANGELOG.md +129 -44
  4. data/CONTRIBUTING.md +25 -0
  5. data/Gemfile +1 -1
  6. data/OPENAPI_VERSION +1 -1
  7. data/README.md +28 -55
  8. data/VERSION +1 -1
  9. data/lib/stripe/api_operations/nested_resource.rb +35 -35
  10. data/lib/stripe/api_requestor.rb +1 -1
  11. data/lib/stripe/api_version.rb +2 -1
  12. data/lib/stripe/connection_manager.rb +1 -3
  13. data/lib/stripe/event_types.rb +1 -0
  14. data/lib/stripe/events/v1_billing_meter_error_report_triggered_event.rb +1 -1
  15. data/lib/stripe/events/v1_billing_meter_no_meter_found_event.rb +1 -1
  16. data/lib/stripe/events/v2_core_event_destination_ping_event.rb +21 -0
  17. data/lib/stripe/oauth.rb +1 -1
  18. data/lib/stripe/resources/account.rb +198 -28
  19. data/lib/stripe/resources/account_session.rb +176 -72
  20. data/lib/stripe/resources/apple_pay_domain.rb +1 -2
  21. data/lib/stripe/resources/balance.rb +42 -0
  22. data/lib/stripe/resources/balance_transaction.rb +2 -0
  23. data/lib/stripe/resources/bank_account.rb +2 -2
  24. data/lib/stripe/resources/billing_portal/session.rb +3 -3
  25. data/lib/stripe/resources/capability.rb +1 -1
  26. data/lib/stripe/resources/charge.rb +43 -20
  27. data/lib/stripe/resources/checkout/session.rb +120 -19
  28. data/lib/stripe/resources/confirmation_token.rb +119 -100
  29. data/lib/stripe/resources/country_spec.rb +1 -1
  30. data/lib/stripe/resources/coupon.rb +2 -3
  31. data/lib/stripe/resources/credit_note.rb +21 -18
  32. data/lib/stripe/resources/customer.rb +4 -6
  33. data/lib/stripe/resources/customer_session.rb +5 -5
  34. data/lib/stripe/resources/dispute.rb +2 -2
  35. data/lib/stripe/resources/event.rb +3 -1
  36. data/lib/stripe/resources/file.rb +1 -1
  37. data/lib/stripe/resources/funding_instructions.rb +1 -1
  38. data/lib/stripe/resources/identity/verification_report.rb +6 -0
  39. data/lib/stripe/resources/identity/verification_session.rb +51 -11
  40. data/lib/stripe/resources/invoice.rb +146 -32
  41. data/lib/stripe/resources/invoice_item.rb +3 -7
  42. data/lib/stripe/resources/invoice_line_item.rb +1 -1
  43. data/lib/stripe/resources/invoice_payment.rb +9 -2
  44. data/lib/stripe/resources/issuing/authorization.rb +8 -8
  45. data/lib/stripe/resources/issuing/card.rb +1 -1
  46. data/lib/stripe/resources/issuing/dispute.rb +3 -3
  47. data/lib/stripe/resources/login_link.rb +2 -1
  48. data/lib/stripe/resources/mandate.rb +3 -0
  49. data/lib/stripe/resources/payment_intent.rb +602 -325
  50. data/lib/stripe/resources/payment_method.rb +76 -117
  51. data/lib/stripe/resources/payment_method_configuration.rb +356 -2
  52. data/lib/stripe/resources/payment_method_domain.rb +15 -2
  53. data/lib/stripe/resources/payout.rb +4 -4
  54. data/lib/stripe/resources/person.rb +27 -3
  55. data/lib/stripe/resources/plan.rb +2 -3
  56. data/lib/stripe/resources/price.rb +1 -1
  57. data/lib/stripe/resources/product.rb +1 -2
  58. data/lib/stripe/resources/quote.rb +28 -3
  59. data/lib/stripe/resources/radar/value_list.rb +1 -2
  60. data/lib/stripe/resources/radar/value_list_item.rb +1 -2
  61. data/lib/stripe/resources/refund.rb +8 -1
  62. data/lib/stripe/resources/reversal.rb +1 -1
  63. data/lib/stripe/resources/review.rb +1 -1
  64. data/lib/stripe/resources/setup_attempt.rb +1 -1
  65. data/lib/stripe/resources/setup_intent.rb +414 -293
  66. data/lib/stripe/resources/source.rb +1 -1
  67. data/lib/stripe/resources/subscription.rb +149 -27
  68. data/lib/stripe/resources/subscription_item.rb +33 -0
  69. data/lib/stripe/resources/subscription_schedule.rb +141 -4
  70. data/lib/stripe/resources/tax/calculation.rb +6 -2
  71. data/lib/stripe/resources/tax/calculation_line_item.rb +2 -0
  72. data/lib/stripe/resources/tax/registration.rb +261 -1
  73. data/lib/stripe/resources/tax/transaction.rb +1 -1
  74. data/lib/stripe/resources/tax_id.rb +3 -4
  75. data/lib/stripe/resources/tax_rate.rb +2 -2
  76. data/lib/stripe/resources/terminal/configuration.rb +2 -2
  77. data/lib/stripe/resources/terminal/location.rb +2 -3
  78. data/lib/stripe/resources/terminal/reader.rb +426 -6
  79. data/lib/stripe/resources/test_helpers/test_clock.rb +1 -2
  80. data/lib/stripe/resources/token.rb +63 -2
  81. data/lib/stripe/resources/transfer.rb +1 -1
  82. data/lib/stripe/resources/treasury/financial_account.rb +5 -1
  83. data/lib/stripe/resources/v2/billing/meter_event.rb +2 -2
  84. data/lib/stripe/resources/v2/billing/meter_event_adjustment.rb +2 -2
  85. data/lib/stripe/resources/v2/billing/meter_event_session.rb +2 -2
  86. data/lib/stripe/resources/v2/event.rb +2 -2
  87. data/lib/stripe/resources/v2/event_destination.rb +2 -2
  88. data/lib/stripe/resources/webhook_endpoint.rb +1 -2
  89. data/lib/stripe/resources.rb +1 -0
  90. data/lib/stripe/services/account_external_account_service.rb +3 -4
  91. data/lib/stripe/services/account_login_link_service.rb +1 -1
  92. data/lib/stripe/services/account_person_service.rb +85 -2
  93. data/lib/stripe/services/account_service.rb +169 -20
  94. data/lib/stripe/services/account_session_service.rb +115 -47
  95. data/lib/stripe/services/apple_pay_domain_service.rb +1 -2
  96. data/lib/stripe/services/application_fee_service.rb +1 -1
  97. data/lib/stripe/services/apps_service.rb +1 -1
  98. data/lib/stripe/services/balance_service.rb +1 -1
  99. data/lib/stripe/services/billing/meter_service.rb +1 -1
  100. data/lib/stripe/services/billing_portal/session_service.rb +1 -1
  101. data/lib/stripe/services/billing_portal_service.rb +1 -1
  102. data/lib/stripe/services/billing_service.rb +1 -1
  103. data/lib/stripe/services/charge_service.rb +4 -4
  104. data/lib/stripe/services/checkout/session_service.rb +94 -15
  105. data/lib/stripe/services/checkout_service.rb +1 -1
  106. data/lib/stripe/services/climate_service.rb +1 -1
  107. data/lib/stripe/services/coupon_service.rb +1 -2
  108. data/lib/stripe/services/credit_note_preview_lines_service.rb +3 -3
  109. data/lib/stripe/services/credit_note_service.rb +14 -15
  110. data/lib/stripe/services/customer_balance_transaction_service.rb +3 -3
  111. data/lib/stripe/services/customer_cash_balance_transaction_service.rb +2 -2
  112. data/lib/stripe/services/customer_payment_method_service.rb +1 -1
  113. data/lib/stripe/services/customer_payment_source_service.rb +1 -1
  114. data/lib/stripe/services/customer_service.rb +5 -7
  115. data/lib/stripe/services/customer_session_service.rb +1 -1
  116. data/lib/stripe/services/customer_tax_id_service.rb +2 -3
  117. data/lib/stripe/services/dispute_service.rb +1 -1
  118. data/lib/stripe/services/entitlements_service.rb +1 -1
  119. data/lib/stripe/services/file_service.rb +1 -1
  120. data/lib/stripe/services/financial_connections/account_service.rb +1 -1
  121. data/lib/stripe/services/financial_connections_service.rb +1 -1
  122. data/lib/stripe/services/forwarding_service.rb +1 -1
  123. data/lib/stripe/services/identity/verification_session_service.rb +21 -5
  124. data/lib/stripe/services/identity_service.rb +1 -1
  125. data/lib/stripe/services/invoice_item_service.rb +1 -2
  126. data/lib/stripe/services/invoice_service.rb +122 -28
  127. data/lib/stripe/services/issuing/authorization_service.rb +4 -4
  128. data/lib/stripe/services/issuing/card_service.rb +1 -1
  129. data/lib/stripe/services/issuing/dispute_service.rb +2 -2
  130. data/lib/stripe/services/issuing_service.rb +1 -1
  131. data/lib/stripe/services/payment_intent_service.rb +563 -313
  132. data/lib/stripe/services/payment_link_service.rb +1 -1
  133. data/lib/stripe/services/payment_method_configuration_service.rb +254 -2
  134. data/lib/stripe/services/payment_method_domain_service.rb +1 -1
  135. data/lib/stripe/services/payment_method_service.rb +59 -105
  136. data/lib/stripe/services/payout_service.rb +2 -2
  137. data/lib/stripe/services/plan_service.rb +2 -3
  138. data/lib/stripe/services/price_service.rb +2 -2
  139. data/lib/stripe/services/product_feature_service.rb +1 -2
  140. data/lib/stripe/services/product_service.rb +3 -4
  141. data/lib/stripe/services/promotion_code_service.rb +1 -1
  142. data/lib/stripe/services/quote_service.rb +21 -4
  143. data/lib/stripe/services/radar/early_fraud_warning_service.rb +1 -1
  144. data/lib/stripe/services/radar/value_list_item_service.rb +1 -2
  145. data/lib/stripe/services/radar/value_list_service.rb +1 -2
  146. data/lib/stripe/services/radar_service.rb +1 -1
  147. data/lib/stripe/services/reporting_service.rb +1 -1
  148. data/lib/stripe/services/setup_intent_service.rb +403 -291
  149. data/lib/stripe/services/sigma_service.rb +1 -1
  150. data/lib/stripe/services/source_service.rb +2 -2
  151. data/lib/stripe/services/subscription_item_service.rb +26 -0
  152. data/lib/stripe/services/subscription_schedule_service.rb +106 -3
  153. data/lib/stripe/services/subscription_service.rb +121 -26
  154. data/lib/stripe/services/tax/calculation_service.rb +6 -2
  155. data/lib/stripe/services/tax/registration_service.rb +170 -1
  156. data/lib/stripe/services/tax/transaction_service.rb +1 -1
  157. data/lib/stripe/services/tax_id_service.rb +2 -3
  158. data/lib/stripe/services/tax_service.rb +1 -1
  159. data/lib/stripe/services/terminal/configuration_service.rb +1 -2
  160. data/lib/stripe/services/terminal/location_service.rb +2 -3
  161. data/lib/stripe/services/terminal/reader_service.rb +196 -2
  162. data/lib/stripe/services/terminal_service.rb +1 -1
  163. data/lib/stripe/services/test_helpers/confirmation_token_service.rb +90 -91
  164. data/lib/stripe/services/test_helpers/issuing_service.rb +1 -1
  165. data/lib/stripe/services/test_helpers/terminal/reader_service.rb +43 -0
  166. data/lib/stripe/services/test_helpers/terminal_service.rb +1 -1
  167. data/lib/stripe/services/test_helpers/test_clock_service.rb +1 -2
  168. data/lib/stripe/services/test_helpers/treasury_service.rb +1 -1
  169. data/lib/stripe/services/test_helpers_service.rb +1 -1
  170. data/lib/stripe/services/token_service.rb +62 -1
  171. data/lib/stripe/services/transfer_service.rb +2 -2
  172. data/lib/stripe/services/treasury/financial_account_service.rb +6 -2
  173. data/lib/stripe/services/treasury_service.rb +1 -1
  174. data/lib/stripe/services/v1_services.rb +1 -1
  175. data/lib/stripe/services/v2/billing/meter_event_session_service.rb +1 -2
  176. data/lib/stripe/services/v2/billing_service.rb +3 -3
  177. data/lib/stripe/services/v2/core/event_destination_service.rb +17 -23
  178. data/lib/stripe/services/v2/core/event_service.rb +1 -2
  179. data/lib/stripe/services/v2/core_service.rb +1 -1
  180. data/lib/stripe/services/v2_services.rb +1 -1
  181. data/lib/stripe/services/webhook_endpoint_service.rb +1 -2
  182. data/lib/stripe/version.rb +1 -1
  183. data/lib/stripe/webhook.rb +1 -1
  184. data/rbi/stripe/resources/account.rbi +190 -35
  185. data/rbi/stripe/resources/account_session.rbi +196 -77
  186. data/rbi/stripe/resources/apple_pay_domain.rbi +1 -3
  187. data/rbi/stripe/resources/balance.rbi +55 -0
  188. data/rbi/stripe/resources/balance_transaction.rbi +3 -0
  189. data/rbi/stripe/resources/bank_account.rbi +2 -2
  190. data/rbi/stripe/resources/billing/alert.rbi +2 -2
  191. data/rbi/stripe/resources/billing_portal/session.rbi +3 -3
  192. data/rbi/stripe/resources/capability.rbi +1 -1
  193. data/rbi/stripe/resources/charge.rbi +52 -20
  194. data/rbi/stripe/resources/checkout/session.rbi +133 -24
  195. data/rbi/stripe/resources/confirmation_token.rbi +140 -115
  196. data/rbi/stripe/resources/country_spec.rbi +1 -1
  197. data/rbi/stripe/resources/coupon.rbi +2 -4
  198. data/rbi/stripe/resources/credit_note.rbi +23 -18
  199. data/rbi/stripe/resources/customer.rbi +4 -8
  200. data/rbi/stripe/resources/customer_session.rbi +5 -5
  201. data/rbi/stripe/resources/dispute.rbi +2 -2
  202. data/rbi/stripe/resources/event.rbi +4 -1
  203. data/rbi/stripe/resources/file.rbi +1 -1
  204. data/rbi/stripe/resources/identity/verification_report.rbi +9 -0
  205. data/rbi/stripe/resources/identity/verification_session.rbi +59 -12
  206. data/rbi/stripe/resources/invoice.rbi +149 -40
  207. data/rbi/stripe/resources/invoice_item.rbi +3 -8
  208. data/rbi/stripe/resources/invoice_line_item.rbi +2 -2
  209. data/rbi/stripe/resources/invoice_payment.rbi +9 -2
  210. data/rbi/stripe/resources/issuing/authorization.rbi +8 -8
  211. data/rbi/stripe/resources/issuing/card.rbi +1 -1
  212. data/rbi/stripe/resources/issuing/dispute.rbi +3 -3
  213. data/rbi/stripe/resources/login_link.rbi +2 -1
  214. data/rbi/stripe/resources/mandate.rbi +4 -0
  215. data/rbi/stripe/resources/payment_intent.rbi +637 -381
  216. data/rbi/stripe/resources/payment_method.rbi +81 -133
  217. data/rbi/stripe/resources/payment_method_configuration.rbi +400 -4
  218. data/rbi/stripe/resources/payment_method_domain.rbi +18 -2
  219. data/rbi/stripe/resources/payout.rbi +4 -4
  220. data/rbi/stripe/resources/person.rbi +33 -3
  221. data/rbi/stripe/resources/plan.rbi +2 -4
  222. data/rbi/stripe/resources/price.rbi +1 -1
  223. data/rbi/stripe/resources/product.rbi +1 -3
  224. data/rbi/stripe/resources/quote.rbi +25 -3
  225. data/rbi/stripe/resources/radar/value_list.rbi +1 -3
  226. data/rbi/stripe/resources/radar/value_list_item.rbi +1 -3
  227. data/rbi/stripe/resources/refund.rbi +8 -1
  228. data/rbi/stripe/resources/reversal.rbi +1 -1
  229. data/rbi/stripe/resources/review.rbi +1 -1
  230. data/rbi/stripe/resources/setup_attempt.rbi +1 -1
  231. data/rbi/stripe/resources/setup_intent.rbi +464 -346
  232. data/rbi/stripe/resources/source.rbi +1 -1
  233. data/rbi/stripe/resources/subscription.rbi +150 -34
  234. data/rbi/stripe/resources/subscription_item.rbi +36 -2
  235. data/rbi/stripe/resources/subscription_schedule.rbi +161 -11
  236. data/rbi/stripe/resources/tax/calculation.rbi +7 -3
  237. data/rbi/stripe/resources/tax/calculation_line_item.rbi +4 -1
  238. data/rbi/stripe/resources/tax/registration.rbi +249 -2
  239. data/rbi/stripe/resources/tax/transaction.rbi +1 -1
  240. data/rbi/stripe/resources/tax_id.rbi +3 -5
  241. data/rbi/stripe/resources/tax_rate.rbi +2 -2
  242. data/rbi/stripe/resources/terminal/configuration.rbi +2 -3
  243. data/rbi/stripe/resources/terminal/location.rbi +4 -6
  244. data/rbi/stripe/resources/terminal/reader.rbi +415 -8
  245. data/rbi/stripe/resources/test_helpers/test_clock.rbi +1 -3
  246. data/rbi/stripe/resources/token.rbi +70 -4
  247. data/rbi/stripe/resources/transfer.rbi +1 -1
  248. data/rbi/stripe/resources/treasury/financial_account.rbi +6 -2
  249. data/rbi/stripe/resources/v2/billing/meter_event.rbi +3 -3
  250. data/rbi/stripe/resources/v2/billing/meter_event_adjustment.rbi +3 -3
  251. data/rbi/stripe/resources/v2/billing/meter_event_session.rbi +3 -3
  252. data/rbi/stripe/resources/v2/event.rbi +3 -3
  253. data/rbi/stripe/resources/v2/event_destination.rbi +3 -3
  254. data/rbi/stripe/resources/webhook_endpoint.rbi +1 -3
  255. data/rbi/stripe/services/account_external_account_service.rbi +3 -5
  256. data/rbi/stripe/services/account_login_link_service.rbi +1 -1
  257. data/rbi/stripe/services/account_person_service.rbi +93 -5
  258. data/rbi/stripe/services/account_service.rbi +166 -28
  259. data/rbi/stripe/services/account_session_service.rbi +126 -52
  260. data/rbi/stripe/services/apple_pay_domain_service.rbi +1 -3
  261. data/rbi/stripe/services/balance_service.rbi +1 -1
  262. data/rbi/stripe/services/billing/alert_service.rbi +2 -2
  263. data/rbi/stripe/services/billing_portal/session_service.rbi +1 -1
  264. data/rbi/stripe/services/charge_service.rbi +4 -4
  265. data/rbi/stripe/services/checkout/session_service.rbi +104 -19
  266. data/rbi/stripe/services/coupon_service.rbi +1 -3
  267. data/rbi/stripe/services/credit_note_preview_lines_service.rbi +3 -3
  268. data/rbi/stripe/services/credit_note_service.rbi +13 -14
  269. data/rbi/stripe/services/customer_balance_transaction_service.rbi +3 -3
  270. data/rbi/stripe/services/customer_cash_balance_transaction_service.rbi +2 -2
  271. data/rbi/stripe/services/customer_payment_method_service.rbi +1 -1
  272. data/rbi/stripe/services/customer_payment_source_service.rbi +1 -1
  273. data/rbi/stripe/services/customer_service.rbi +4 -8
  274. data/rbi/stripe/services/customer_session_service.rbi +1 -1
  275. data/rbi/stripe/services/customer_tax_id_service.rbi +2 -4
  276. data/rbi/stripe/services/dispute_service.rbi +1 -1
  277. data/rbi/stripe/services/file_service.rbi +1 -1
  278. data/rbi/stripe/services/identity/verification_session_service.rbi +22 -6
  279. data/rbi/stripe/services/invoice_item_service.rbi +1 -3
  280. data/rbi/stripe/services/invoice_service.rbi +126 -35
  281. data/rbi/stripe/services/issuing/authorization_service.rbi +4 -4
  282. data/rbi/stripe/services/issuing/card_service.rbi +1 -1
  283. data/rbi/stripe/services/issuing/dispute_service.rbi +2 -2
  284. data/rbi/stripe/services/payment_intent_service.rbi +599 -369
  285. data/rbi/stripe/services/payment_method_configuration_service.rbi +280 -4
  286. data/rbi/stripe/services/payment_method_domain_service.rbi +1 -1
  287. data/rbi/stripe/services/payment_method_service.rbi +62 -121
  288. data/rbi/stripe/services/payout_service.rbi +2 -2
  289. data/rbi/stripe/services/plan_service.rbi +2 -4
  290. data/rbi/stripe/services/price_service.rbi +2 -2
  291. data/rbi/stripe/services/product_feature_service.rbi +1 -3
  292. data/rbi/stripe/services/product_service.rbi +2 -4
  293. data/rbi/stripe/services/promotion_code_service.rbi +1 -1
  294. data/rbi/stripe/services/quote_service.rbi +16 -3
  295. data/rbi/stripe/services/radar/early_fraud_warning_service.rbi +1 -1
  296. data/rbi/stripe/services/radar/value_list_item_service.rbi +1 -3
  297. data/rbi/stripe/services/radar/value_list_service.rbi +1 -3
  298. data/rbi/stripe/services/setup_intent_service.rbi +457 -344
  299. data/rbi/stripe/services/source_service.rbi +1 -1
  300. data/rbi/stripe/services/subscription_item_service.rbi +28 -2
  301. data/rbi/stripe/services/subscription_schedule_service.rbi +119 -10
  302. data/rbi/stripe/services/subscription_service.rbi +121 -33
  303. data/rbi/stripe/services/tax/calculation_service.rbi +6 -2
  304. data/rbi/stripe/services/tax/registration_service.rbi +171 -2
  305. data/rbi/stripe/services/tax_id_service.rbi +2 -4
  306. data/rbi/stripe/services/terminal/configuration_service.rbi +1 -3
  307. data/rbi/stripe/services/terminal/location_service.rbi +4 -6
  308. data/rbi/stripe/services/terminal/reader_service.rbi +200 -4
  309. data/rbi/stripe/services/test_helpers/confirmation_token_service.rbi +106 -106
  310. data/rbi/stripe/services/test_helpers/terminal/reader_service.rbi +31 -0
  311. data/rbi/stripe/services/test_helpers/test_clock_service.rbi +1 -3
  312. data/rbi/stripe/services/token_service.rbi +71 -3
  313. data/rbi/stripe/services/transfer_service.rbi +1 -1
  314. data/rbi/stripe/services/treasury/financial_account_service.rbi +6 -2
  315. data/rbi/stripe/services/v2/billing/meter_event_session_service.rbi +1 -3
  316. data/rbi/stripe/services/v2/billing_service.rbi +1 -1
  317. data/rbi/stripe/services/v2/core/event_destination_service.rbi +14 -22
  318. data/rbi/stripe/services/v2/core/event_service.rbi +1 -3
  319. data/rbi/stripe/services/webhook_endpoint_service.rbi +1 -3
  320. metadata +5 -2
@@ -34,8 +34,23 @@ module Stripe
34
34
 
35
35
  class PaymentMethodOptions < Stripe::StripeObject
36
36
  class Card < Stripe::StripeObject
37
+ class Installments < Stripe::StripeObject
38
+ class Plan < Stripe::StripeObject
39
+ # For `fixed_count` installment plans, this is the number of installment payments your customer will make to their credit card.
40
+ attr_reader :count
41
+ # For `fixed_count` installment plans, this is the interval between installment payments your customer will make to their credit card.
42
+ # One of `month`.
43
+ attr_reader :interval
44
+ # Type of installment plan, one of `fixed_count`, `bonus`, or `revolving`.
45
+ attr_reader :type
46
+ end
47
+ # Attribute for field plan
48
+ attr_reader :plan
49
+ end
37
50
  # The `cvc_update` Token collected from the Payment Element.
38
51
  attr_reader :cvc_token
52
+ # Installment configuration for payments.
53
+ attr_reader :installments
39
54
  end
40
55
  # This hash contains the card payment method options.
41
56
  attr_reader :card
@@ -105,6 +120,8 @@ module Stripe
105
120
  attr_reader :name
106
121
  # Billing phone number (including extension).
107
122
  attr_reader :phone
123
+ # Taxpayer identification number. Used only for transactions between LATAM buyers and non-LATAM sellers.
124
+ attr_reader :tax_id
108
125
  end
109
126
 
110
127
  class Blik < Stripe::StripeObject; end
@@ -137,9 +154,9 @@ module Stripe
137
154
  class Receipt < Stripe::StripeObject
138
155
  # The type of account being debited or credited
139
156
  attr_reader :account_type
140
- # EMV tag 9F26, cryptogram generated by the integrated circuit chip.
157
+ # The Application Cryptogram, a unique value generated by the card to authenticate the transaction with issuers.
141
158
  attr_reader :application_cryptogram
142
- # Mnenomic of the Application Identifier.
159
+ # The Application Identifier (AID) on the card used to determine which networks are eligible to process the transaction. Referenced from EMV tag 9F12, data encoded on the card's chip.
143
160
  attr_reader :application_preferred_name
144
161
  # Identifier for this transaction.
145
162
  attr_reader :authorization_code
@@ -147,11 +164,11 @@ module Stripe
147
164
  attr_reader :authorization_response_code
148
165
  # Describes the method used by the cardholder to verify ownership of the card. One of the following: `approval`, `failure`, `none`, `offline_pin`, `offline_pin_and_signature`, `online_pin`, or `signature`.
149
166
  attr_reader :cardholder_verification_method
150
- # EMV tag 84. Similar to the application identifier stored on the integrated circuit chip.
167
+ # Similar to the application_preferred_name, identifying the applications (AIDs) available on the card. Referenced from EMV tag 84.
151
168
  attr_reader :dedicated_file_name
152
- # The outcome of a series of EMV functions performed by the card reader.
169
+ # A 5-byte string that records the checks and validations that occur between the card and the terminal. These checks determine how the terminal processes the transaction and what risk tolerance is acceptable. Referenced from EMV Tag 95.
153
170
  attr_reader :terminal_verification_results
154
- # An indication of various EMV functions performed during the transaction.
171
+ # An indication of which steps were completed during the card read process. Referenced from EMV Tag 9B.
155
172
  attr_reader :transaction_status_information
156
173
  end
157
174
 
@@ -203,7 +220,7 @@ module Stripe
203
220
  attr_reader :offline
204
221
  # Defines whether the authorized amount can be over-captured or not
205
222
  attr_reader :overcapture_supported
206
- # EMV tag 5F2D. Preferred languages specified by the integrated circuit chip.
223
+ # The languages that the issuing bank recommends using for localizing any customer-facing text, as read from the card. Referenced from EMV tag 5F2D, data encoded on the card's chip.
207
224
  attr_reader :preferred_locales
208
225
  # How card details were read in this transaction.
209
226
  attr_reader :read_method
@@ -430,7 +447,7 @@ module Stripe
430
447
  attr_reader :networks
431
448
  # Details about payment methods collected offline.
432
449
  attr_reader :offline
433
- # EMV tag 5F2D. Preferred languages specified by the integrated circuit chip.
450
+ # The languages that the issuing bank recommends using for localizing any customer-facing text, as read from the card. Referenced from EMV tag 5F2D, data encoded on the card's chip.
434
451
  attr_reader :preferred_locales
435
452
  # How card details were read in this transaction.
436
453
  attr_reader :read_method
@@ -445,6 +462,7 @@ module Stripe
445
462
  attr_reader :cashtag
446
463
  end
447
464
 
465
+ class Crypto < Stripe::StripeObject; end
448
466
  class CustomerBalance < Stripe::StripeObject; end
449
467
 
450
468
  class Eps < Stripe::StripeObject
@@ -463,7 +481,7 @@ module Stripe
463
481
  class Grabpay < Stripe::StripeObject; end
464
482
 
465
483
  class Ideal < Stripe::StripeObject
466
- # The customer's bank, if provided. Can be one of `abn_amro`, `asn_bank`, `bunq`, `handelsbanken`, `ing`, `knab`, `moneyou`, `n26`, `nn`, `rabobank`, `regiobank`, `revolut`, `sns_bank`, `triodos_bank`, `van_lanschot`, or `yoursafe`.
484
+ # The customer's bank, if provided. Can be one of `abn_amro`, `asn_bank`, `bunq`, `buut`, `handelsbanken`, `ing`, `knab`, `moneyou`, `n26`, `nn`, `rabobank`, `regiobank`, `revolut`, `sns_bank`, `triodos_bank`, `van_lanschot`, or `yoursafe`.
467
485
  attr_reader :bank
468
486
  # The Bank Identifier Code of the customer's bank, if the bank was provided.
469
487
  attr_reader :bic
@@ -502,7 +520,7 @@ module Stripe
502
520
  attr_reader :last4
503
521
  # Contains information about card networks that can be used to process the payment.
504
522
  attr_reader :networks
505
- # EMV tag 5F2D. Preferred languages specified by the integrated circuit chip.
523
+ # The languages that the issuing bank recommends using for localizing any customer-facing text, as read from the card. Referenced from EMV tag 5F2D, data encoded on the card's chip.
506
524
  attr_reader :preferred_locales
507
525
  # How card details were read in this transaction.
508
526
  attr_reader :read_method
@@ -694,6 +712,8 @@ module Stripe
694
712
  attr_reader :card_present
695
713
  # Attribute for field cashapp
696
714
  attr_reader :cashapp
715
+ # Attribute for field crypto
716
+ attr_reader :crypto
697
717
  # The ID of the Customer to which this PaymentMethod is saved. This will not be set when the PaymentMethod has not been saved to a Customer.
698
718
  attr_reader :customer
699
719
  # Attribute for field customer_balance
@@ -808,20 +828,11 @@ module Stripe
808
828
  end
809
829
  end
810
830
 
811
- class Affirm < Stripe::RequestParams
812
- end
813
-
814
- class AfterpayClearpay < Stripe::RequestParams
815
- end
816
-
817
- class Alipay < Stripe::RequestParams
818
- end
819
-
820
- class Alma < Stripe::RequestParams
821
- end
822
-
823
- class AmazonPay < Stripe::RequestParams
824
- end
831
+ class Affirm < Stripe::RequestParams; end
832
+ class AfterpayClearpay < Stripe::RequestParams; end
833
+ class Alipay < Stripe::RequestParams; end
834
+ class Alma < Stripe::RequestParams; end
835
+ class AmazonPay < Stripe::RequestParams; end
825
836
 
826
837
  class AuBecsDebit < Stripe::RequestParams
827
838
  # The account number for the bank account.
@@ -847,11 +858,8 @@ module Stripe
847
858
  end
848
859
  end
849
860
 
850
- class Bancontact < Stripe::RequestParams
851
- end
852
-
853
- class Billie < Stripe::RequestParams
854
- end
861
+ class Bancontact < Stripe::RequestParams; end
862
+ class Billie < Stripe::RequestParams; end
855
863
 
856
864
  class BillingDetails < Stripe::RequestParams
857
865
  class Address < Stripe::RequestParams
@@ -892,17 +900,19 @@ module Stripe
892
900
  attr_accessor :name
893
901
  # Billing phone number (including extension).
894
902
  attr_accessor :phone
903
+ # Taxpayer identification number. Used only for transactions between LATAM buyers and non-LATAM sellers.
904
+ attr_accessor :tax_id
895
905
 
896
- def initialize(address: nil, email: nil, name: nil, phone: nil)
906
+ def initialize(address: nil, email: nil, name: nil, phone: nil, tax_id: nil)
897
907
  @address = address
898
908
  @email = email
899
909
  @name = name
900
910
  @phone = phone
911
+ @tax_id = tax_id
901
912
  end
902
913
  end
903
914
 
904
- class Blik < Stripe::RequestParams
905
- end
915
+ class Blik < Stripe::RequestParams; end
906
916
 
907
917
  class Boleto < Stripe::RequestParams
908
918
  # The tax ID of the customer (CPF for individual consumers or CNPJ for businesses consumers)
@@ -913,11 +923,9 @@ module Stripe
913
923
  end
914
924
  end
915
925
 
916
- class Cashapp < Stripe::RequestParams
917
- end
918
-
919
- class CustomerBalance < Stripe::RequestParams
920
- end
926
+ class Cashapp < Stripe::RequestParams; end
927
+ class Crypto < Stripe::RequestParams; end
928
+ class CustomerBalance < Stripe::RequestParams; end
921
929
 
922
930
  class Eps < Stripe::RequestParams
923
931
  # The customer's bank.
@@ -940,11 +948,8 @@ module Stripe
940
948
  end
941
949
  end
942
950
 
943
- class Giropay < Stripe::RequestParams
944
- end
945
-
946
- class Grabpay < Stripe::RequestParams
947
- end
951
+ class Giropay < Stripe::RequestParams; end
952
+ class Grabpay < Stripe::RequestParams; end
948
953
 
949
954
  class Ideal < Stripe::RequestParams
950
955
  # The customer's bank. Only use this parameter for existing customers. Don't use it for new customers.
@@ -955,11 +960,8 @@ module Stripe
955
960
  end
956
961
  end
957
962
 
958
- class InteracPresent < Stripe::RequestParams
959
- end
960
-
961
- class KakaoPay < Stripe::RequestParams
962
- end
963
+ class InteracPresent < Stripe::RequestParams; end
964
+ class KakaoPay < Stripe::RequestParams; end
963
965
 
964
966
  class Klarna < Stripe::RequestParams
965
967
  class Dob < Stripe::RequestParams
@@ -984,20 +986,11 @@ module Stripe
984
986
  end
985
987
  end
986
988
 
987
- class Konbini < Stripe::RequestParams
988
- end
989
-
990
- class KrCard < Stripe::RequestParams
991
- end
992
-
993
- class Link < Stripe::RequestParams
994
- end
995
-
996
- class Mobilepay < Stripe::RequestParams
997
- end
998
-
999
- class Multibanco < Stripe::RequestParams
1000
- end
989
+ class Konbini < Stripe::RequestParams; end
990
+ class KrCard < Stripe::RequestParams; end
991
+ class Link < Stripe::RequestParams; end
992
+ class Mobilepay < Stripe::RequestParams; end
993
+ class Multibanco < Stripe::RequestParams; end
1001
994
 
1002
995
  class NaverPay < Stripe::RequestParams
1003
996
  # Whether to use Naver Pay points or a card to fund this transaction. If not provided, this defaults to `card`.
@@ -1039,8 +1032,7 @@ module Stripe
1039
1032
  end
1040
1033
  end
1041
1034
 
1042
- class Oxxo < Stripe::RequestParams
1043
- end
1035
+ class Oxxo < Stripe::RequestParams; end
1044
1036
 
1045
1037
  class P24 < Stripe::RequestParams
1046
1038
  # The customer's bank.
@@ -1051,23 +1043,12 @@ module Stripe
1051
1043
  end
1052
1044
  end
1053
1045
 
1054
- class PayByBank < Stripe::RequestParams
1055
- end
1056
-
1057
- class Payco < Stripe::RequestParams
1058
- end
1059
-
1060
- class Paynow < Stripe::RequestParams
1061
- end
1062
-
1063
- class Paypal < Stripe::RequestParams
1064
- end
1065
-
1066
- class Pix < Stripe::RequestParams
1067
- end
1068
-
1069
- class Promptpay < Stripe::RequestParams
1070
- end
1046
+ class PayByBank < Stripe::RequestParams; end
1047
+ class Payco < Stripe::RequestParams; end
1048
+ class Paynow < Stripe::RequestParams; end
1049
+ class Paypal < Stripe::RequestParams; end
1050
+ class Pix < Stripe::RequestParams; end
1051
+ class Promptpay < Stripe::RequestParams; end
1071
1052
 
1072
1053
  class RadarOptions < Stripe::RequestParams
1073
1054
  # 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.
@@ -1078,14 +1059,9 @@ module Stripe
1078
1059
  end
1079
1060
  end
1080
1061
 
1081
- class RevolutPay < Stripe::RequestParams
1082
- end
1083
-
1084
- class SamsungPay < Stripe::RequestParams
1085
- end
1086
-
1087
- class Satispay < Stripe::RequestParams
1088
- end
1062
+ class RevolutPay < Stripe::RequestParams; end
1063
+ class SamsungPay < Stripe::RequestParams; end
1064
+ class Satispay < Stripe::RequestParams; end
1089
1065
 
1090
1066
  class SepaDebit < Stripe::RequestParams
1091
1067
  # IBAN of the bank account.
@@ -1105,11 +1081,8 @@ module Stripe
1105
1081
  end
1106
1082
  end
1107
1083
 
1108
- class Swish < Stripe::RequestParams
1109
- end
1110
-
1111
- class Twint < Stripe::RequestParams
1112
- end
1084
+ class Swish < Stripe::RequestParams; end
1085
+ class Twint < Stripe::RequestParams; end
1113
1086
 
1114
1087
  class UsBankAccount < Stripe::RequestParams
1115
1088
  # Account holder type: individual or company.
@@ -1138,11 +1111,8 @@ module Stripe
1138
1111
  end
1139
1112
  end
1140
1113
 
1141
- class WechatPay < Stripe::RequestParams
1142
- end
1143
-
1144
- class Zip < Stripe::RequestParams
1145
- end
1114
+ class WechatPay < Stripe::RequestParams; end
1115
+ class Zip < Stripe::RequestParams; end
1146
1116
  # If this is an `acss_debit` PaymentMethod, this hash contains details about the ACSS Debit payment method.
1147
1117
  attr_accessor :acss_debit
1148
1118
  # If this is an `affirm` PaymentMethod, this hash contains details about the Affirm payment method.
@@ -1163,7 +1133,7 @@ module Stripe
1163
1133
  attr_accessor :bacs_debit
1164
1134
  # If this is a `bancontact` PaymentMethod, this hash contains details about the Bancontact payment method.
1165
1135
  attr_accessor :bancontact
1166
- # If this is a `billie` PaymentMethod, this hash contains details about the billie payment method.
1136
+ # If this is a `billie` PaymentMethod, this hash contains details about the Billie payment method.
1167
1137
  attr_accessor :billie
1168
1138
  # Billing information associated with the PaymentMethod that may be used or required by particular types of payment methods.
1169
1139
  attr_accessor :billing_details
@@ -1173,6 +1143,8 @@ module Stripe
1173
1143
  attr_accessor :boleto
1174
1144
  # If this is a `cashapp` PaymentMethod, this hash contains details about the Cash App Pay payment method.
1175
1145
  attr_accessor :cashapp
1146
+ # If this is a Crypto PaymentMethod, this hash contains details about the Crypto payment method.
1147
+ attr_accessor :crypto
1176
1148
  # If this is a `customer_balance` PaymentMethod, this hash contains details about the CustomerBalance payment method.
1177
1149
  attr_accessor :customer_balance
1178
1150
  # If this is an `eps` PaymentMethod, this hash contains details about the EPS payment method.
@@ -1225,11 +1197,11 @@ module Stripe
1225
1197
  attr_accessor :promptpay
1226
1198
  # Options to configure Radar. See [Radar Session](https://stripe.com/docs/radar/radar-session) for more information.
1227
1199
  attr_accessor :radar_options
1228
- # If this is a `Revolut Pay` PaymentMethod, this hash contains details about the Revolut Pay payment method.
1200
+ # If this is a `revolut_pay` PaymentMethod, this hash contains details about the Revolut Pay payment method.
1229
1201
  attr_accessor :revolut_pay
1230
1202
  # If this is a `samsung_pay` PaymentMethod, this hash contains details about the SamsungPay payment method.
1231
1203
  attr_accessor :samsung_pay
1232
- # If this is a `satispay` PaymentMethod, this hash contains details about the satispay payment method.
1204
+ # If this is a `satispay` PaymentMethod, this hash contains details about the Satispay payment method.
1233
1205
  attr_accessor :satispay
1234
1206
  # If this is a `sepa_debit` PaymentMethod, this hash contains details about the SEPA debit bank account.
1235
1207
  attr_accessor :sepa_debit
@@ -1264,6 +1236,7 @@ module Stripe
1264
1236
  blik: nil,
1265
1237
  boleto: nil,
1266
1238
  cashapp: nil,
1239
+ crypto: nil,
1267
1240
  customer_balance: nil,
1268
1241
  eps: nil,
1269
1242
  fpx: nil,
@@ -1317,6 +1290,7 @@ module Stripe
1317
1290
  @blik = blik
1318
1291
  @boleto = boleto
1319
1292
  @cashapp = cashapp
1293
+ @crypto = crypto
1320
1294
  @customer_balance = customer_balance
1321
1295
  @eps = eps
1322
1296
  @fpx = fpx
@@ -1357,6 +1331,47 @@ module Stripe
1357
1331
  end
1358
1332
  end
1359
1333
 
1334
+ class PaymentMethodOptions < Stripe::RequestParams
1335
+ class Card < Stripe::RequestParams
1336
+ class Installments < Stripe::RequestParams
1337
+ class Plan < Stripe::RequestParams
1338
+ # For `fixed_count` installment plans, this is required. It represents the number of installment payments your customer will make to their credit card.
1339
+ attr_accessor :count
1340
+ # For `fixed_count` installment plans, this is required. It represents the interval between installment payments your customer will make to their credit card.
1341
+ # One of `month`.
1342
+ attr_accessor :interval
1343
+ # Type of installment plan, one of `fixed_count`, `bonus`, or `revolving`.
1344
+ attr_accessor :type
1345
+
1346
+ def initialize(count: nil, interval: nil, type: nil)
1347
+ @count = count
1348
+ @interval = interval
1349
+ @type = type
1350
+ end
1351
+ end
1352
+ # The selected installment plan to use for this payment attempt.
1353
+ # This parameter can only be provided during confirmation.
1354
+ attr_accessor :plan
1355
+
1356
+ def initialize(plan: nil)
1357
+ @plan = plan
1358
+ end
1359
+ end
1360
+ # Installment configuration for payments confirmed using this ConfirmationToken.
1361
+ attr_accessor :installments
1362
+
1363
+ def initialize(installments: nil)
1364
+ @installments = installments
1365
+ end
1366
+ end
1367
+ # Configuration for any card payments confirmed using this ConfirmationToken.
1368
+ attr_accessor :card
1369
+
1370
+ def initialize(card: nil)
1371
+ @card = card
1372
+ end
1373
+ end
1374
+
1360
1375
  class Shipping < Stripe::RequestParams
1361
1376
  class Address < Stripe::RequestParams
1362
1377
  # City, district, suburb, town, or village.
@@ -1407,6 +1422,8 @@ module Stripe
1407
1422
  attr_accessor :payment_method
1408
1423
  # If provided, this hash will be used to create a PaymentMethod.
1409
1424
  attr_accessor :payment_method_data
1425
+ # Payment-method-specific configuration for this ConfirmationToken.
1426
+ attr_accessor :payment_method_options
1410
1427
  # Return URL used to confirm the Intent.
1411
1428
  attr_accessor :return_url
1412
1429
  # Indicates that you intend to make future payments with this ConfirmationToken's payment method.
@@ -1420,6 +1437,7 @@ module Stripe
1420
1437
  expand: nil,
1421
1438
  payment_method: nil,
1422
1439
  payment_method_data: nil,
1440
+ payment_method_options: nil,
1423
1441
  return_url: nil,
1424
1442
  setup_future_usage: nil,
1425
1443
  shipping: nil
@@ -1427,6 +1445,7 @@ module Stripe
1427
1445
  @expand = expand
1428
1446
  @payment_method = payment_method
1429
1447
  @payment_method_data = payment_method_data
1448
+ @payment_method_options = payment_method_options
1430
1449
  @return_url = return_url
1431
1450
  @setup_future_usage = setup_future_usage
1432
1451
  @shipping = shipping
@@ -7,7 +7,7 @@ module Stripe
7
7
  # Country Specs API makes these rules available to your integration.
8
8
  #
9
9
  # You can also view the information from this API call as [an online
10
- # guide](https://stripe.com/docs/connect/required-verification-information).
10
+ # guide](https://docs.stripe.com/docs/connect/required-verification-information).
11
11
  class CountrySpec < APIResource
12
12
  extend Stripe::APIOperations::List
13
13
 
@@ -26,8 +26,7 @@ module Stripe
26
26
  attr_reader :amount_off
27
27
  end
28
28
 
29
- class DeleteParams < Stripe::RequestParams
30
- end
29
+ class DeleteParams < Stripe::RequestParams; end
31
30
 
32
31
  class UpdateParams < Stripe::RequestParams
33
32
  class CurrencyOptions < Stripe::RequestParams
@@ -178,7 +177,7 @@ module Stripe
178
177
  attr_reader :currency
179
178
  # Coupons defined in each available currency option. Each key must be a three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html) and a [supported currency](https://stripe.com/docs/currencies).
180
179
  attr_reader :currency_options
181
- # One of `forever`, `once`, and `repeating`. Describes how long a customer who applies this coupon will get the discount.
180
+ # One of `forever`, `once`, or `repeating`. Describes how long a customer who applies this coupon will get the discount.
182
181
  attr_reader :duration
183
182
  # If `duration` is `repeating`, the number of months the coupon applies. Null if coupon `duration` is `forever` or `once`.
184
183
  attr_reader :duration_in_months
@@ -214,7 +214,7 @@ module Stripe
214
214
  @shipping_rate = shipping_rate
215
215
  end
216
216
  end
217
- # The integer amount in cents (or local equivalent) representing the total amount of the credit note.
217
+ # The integer amount in cents (or local equivalent) representing the total amount of the credit note. One of `amount`, `lines`, or `shipping_cost` must be provided.
218
218
  attr_accessor :amount
219
219
  # The integer amount in cents (or local equivalent) representing the amount to credit the customer's balance, which will be automatically applied to their next invoice.
220
220
  attr_accessor :credit_amount
@@ -226,7 +226,7 @@ module Stripe
226
226
  attr_accessor :expand
227
227
  # ID of the invoice.
228
228
  attr_accessor :invoice
229
- # Line items that make up the credit note.
229
+ # Line items that make up the credit note. One of `amount`, `lines`, or `shipping_cost` must be provided.
230
230
  attr_accessor :lines
231
231
  # The credit note's memo appears on the credit note PDF.
232
232
  attr_accessor :memo
@@ -240,7 +240,7 @@ module Stripe
240
240
  attr_accessor :refund_amount
241
241
  # Refunds to link to this credit note.
242
242
  attr_accessor :refunds
243
- # When shipping_cost contains the shipping_rate from the invoice, the shipping_cost is included in the credit note.
243
+ # When shipping_cost contains the shipping_rate from the invoice, the shipping_cost is included in the credit note. One of `amount`, `lines`, or `shipping_cost` must be provided.
244
244
  attr_accessor :shipping_cost
245
245
 
246
246
  def initialize(
@@ -369,7 +369,7 @@ module Stripe
369
369
  @shipping_rate = shipping_rate
370
370
  end
371
371
  end
372
- # The integer amount in cents (or local equivalent) representing the total amount of the credit note.
372
+ # The integer amount in cents (or local equivalent) representing the total amount of the credit note. One of `amount`, `lines`, or `shipping_cost` must be provided.
373
373
  attr_accessor :amount
374
374
  # The integer amount in cents (or local equivalent) representing the amount to credit the customer's balance, which will be automatically applied to their next invoice.
375
375
  attr_accessor :credit_amount
@@ -381,7 +381,7 @@ module Stripe
381
381
  attr_accessor :expand
382
382
  # ID of the invoice.
383
383
  attr_accessor :invoice
384
- # Line items that make up the credit note.
384
+ # Line items that make up the credit note. One of `amount`, `lines`, or `shipping_cost` must be provided.
385
385
  attr_accessor :lines
386
386
  # The credit note's memo appears on the credit note PDF.
387
387
  attr_accessor :memo
@@ -395,7 +395,7 @@ module Stripe
395
395
  attr_accessor :refund_amount
396
396
  # Refunds to link to this credit note.
397
397
  attr_accessor :refunds
398
- # When shipping_cost contains the shipping_rate from the invoice, the shipping_cost is included in the credit note.
398
+ # When shipping_cost contains the shipping_rate from the invoice, the shipping_cost is included in the credit note. One of `amount`, `lines`, or `shipping_cost` must be provided.
399
399
  attr_accessor :shipping_cost
400
400
 
401
401
  def initialize(
@@ -509,7 +509,7 @@ module Stripe
509
509
  @shipping_rate = shipping_rate
510
510
  end
511
511
  end
512
- # The integer amount in cents (or local equivalent) representing the total amount of the credit note.
512
+ # The integer amount in cents (or local equivalent) representing the total amount of the credit note. One of `amount`, `lines`, or `shipping_cost` must be provided.
513
513
  attr_accessor :amount
514
514
  # The integer amount in cents (or local equivalent) representing the amount to credit the customer's balance, which will be automatically applied to their next invoice.
515
515
  attr_accessor :credit_amount
@@ -525,7 +525,7 @@ module Stripe
525
525
  attr_accessor :invoice
526
526
  # A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.
527
527
  attr_accessor :limit
528
- # Line items that make up the credit note.
528
+ # Line items that make up the credit note. One of `amount`, `lines`, or `shipping_cost` must be provided.
529
529
  attr_accessor :lines
530
530
  # The credit note's memo appears on the credit note PDF.
531
531
  attr_accessor :memo
@@ -539,7 +539,7 @@ module Stripe
539
539
  attr_accessor :refund_amount
540
540
  # Refunds to link to this credit note.
541
541
  attr_accessor :refunds
542
- # When shipping_cost contains the shipping_rate from the invoice, the shipping_cost is included in the credit note.
542
+ # When shipping_cost contains the shipping_rate from the invoice, the shipping_cost is included in the credit note. One of `amount`, `lines`, or `shipping_cost` must be provided.
543
543
  attr_accessor :shipping_cost
544
544
  # A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list.
545
545
  attr_accessor :starting_after
@@ -629,6 +629,10 @@ module Stripe
629
629
  attr_reader :out_of_band_amount
630
630
  # The link to download the PDF of the credit note.
631
631
  attr_reader :pdf
632
+ # The amount of the credit note that was refunded to the customer, credited to the customer's balance, credited outside of Stripe, or any combination thereof.
633
+ attr_reader :post_payment_amount
634
+ # The amount of the credit note by which the invoice's `amount_remaining` and `amount_due` were reduced.
635
+ attr_reader :pre_payment_amount
632
636
  # The pretax credit amounts (ex: discount, credit grants, etc) for all line items.
633
637
  attr_reader :pretax_credit_amounts
634
638
  # Reason for issuing this credit note, one of `duplicate`, `fraudulent`, `order_change`, or `product_unsatisfactory`
@@ -654,20 +658,19 @@ module Stripe
654
658
  # The time that the credit note was voided.
655
659
  attr_reader :voided_at
656
660
 
657
- # Issue a credit note to adjust the amount of a finalized invoice. For a status=open invoice, a credit note reduces
658
- # its amount_due. For a status=paid invoice, a credit note does not affect its amount_due. Instead, it can result
659
- # in any combination of the following:
661
+ # Issue a credit note to adjust the amount of a finalized invoice. A credit note will first reduce the invoice's amount_remaining (and amount_due), but not below zero.
662
+ # This amount is indicated by the credit note's pre_payment_amount. The excess amount is indicated by post_payment_amount, and it can result in any combination of the following:
660
663
  #
661
664
  #
662
- # Refund: create a new refund (using refund_amount) or link an existing refund (using refund).
665
+ # Refunds: create a new refund (using refund_amount) or link existing refunds (using refunds).
663
666
  # Customer balance credit: credit the customer's balance (using credit_amount) which will be automatically applied to their next invoice when it's finalized.
664
667
  # Outside of Stripe credit: record the amount that is or will be credited outside of Stripe (using out_of_band_amount).
665
668
  #
666
669
  #
667
- # For post-payment credit notes the sum of the refund, credit and outside of Stripe amounts must equal the credit note total.
670
+ # The sum of refunds, customer balance credits, and outside of Stripe credits must equal the post_payment_amount.
668
671
  #
669
- # You may issue multiple credit notes for an invoice. Each credit note will increment the invoice's pre_payment_credit_notes_amount
670
- # or post_payment_credit_notes_amount depending on its status at the time of credit note creation.
672
+ # You may issue multiple credit notes for an invoice. Each credit note may increment the invoice's pre_payment_credit_notes_amount,
673
+ # post_payment_credit_notes_amount, or both, depending on the invoice's amount_remaining at the time of credit note creation.
671
674
  def self.create(params = {}, opts = {})
672
675
  request_stripe_object(method: :post, path: "/v1/credit_notes", params: params, opts: opts)
673
676
  end
@@ -707,7 +710,7 @@ module Stripe
707
710
  )
708
711
  end
709
712
 
710
- # Marks a credit note as void. Learn more about [voiding credit notes](https://stripe.com/docs/billing/invoices/credit-notes#voiding).
713
+ # Marks a credit note as void. Learn more about [voiding credit notes](https://docs.stripe.com/docs/billing/invoices/credit-notes#voiding).
711
714
  def void_credit_note(params = {}, opts = {})
712
715
  request_stripe_object(
713
716
  method: :post,
@@ -717,7 +720,7 @@ module Stripe
717
720
  )
718
721
  end
719
722
 
720
- # Marks a credit note as void. Learn more about [voiding credit notes](https://stripe.com/docs/billing/invoices/credit-notes#voiding).
723
+ # Marks a credit note as void. Learn more about [voiding credit notes](https://docs.stripe.com/docs/billing/invoices/credit-notes#voiding).
721
724
  def self.void_credit_note(id, params = {}, opts = {})
722
725
  request_stripe_object(
723
726
  method: :post,
@@ -105,8 +105,7 @@ module Stripe
105
105
  attr_reader :location
106
106
  end
107
107
 
108
- class DeleteParams < Stripe::RequestParams
109
- end
108
+ class DeleteParams < Stripe::RequestParams; end
110
109
 
111
110
  class UpdateParams < Stripe::RequestParams
112
111
  class Address < Stripe::RequestParams
@@ -346,8 +345,7 @@ module Stripe
346
345
  end
347
346
  end
348
347
 
349
- class DeleteDiscountParams < Stripe::RequestParams
350
- end
348
+ class DeleteDiscountParams < Stripe::RequestParams; end
351
349
 
352
350
  class ListParams < Stripe::RequestParams
353
351
  class Created < Stripe::RequestParams
@@ -555,7 +553,7 @@ module Stripe
555
553
  end
556
554
 
557
555
  class TaxIdDatum < Stripe::RequestParams
558
- # Type of the tax ID, one of `ad_nrt`, `ae_trn`, `al_tin`, `am_tin`, `ao_tin`, `ar_cuit`, `au_abn`, `au_arn`, `ba_tin`, `bb_tin`, `bg_uic`, `bh_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `bs_tin`, `by_tin`, `ca_bn`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `ca_qst`, `cd_nif`, `ch_uid`, `ch_vat`, `cl_tin`, `cn_tin`, `co_nit`, `cr_tin`, `de_stn`, `do_rcn`, `ec_ruc`, `eg_tin`, `es_cif`, `eu_oss_vat`, `eu_vat`, `gb_vat`, `ge_vat`, `gn_nif`, `hk_br`, `hr_oib`, `hu_tin`, `id_npwp`, `il_vat`, `in_gst`, `is_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `ke_pin`, `kh_tin`, `kr_brn`, `kz_bin`, `li_uid`, `li_vat`, `ma_vat`, `md_vat`, `me_pib`, `mk_vat`, `mr_nif`, `mx_rfc`, `my_frp`, `my_itn`, `my_sst`, `ng_tin`, `no_vat`, `no_voec`, `np_pan`, `nz_gst`, `om_vat`, `pe_ruc`, `ph_tin`, `ro_tin`, `rs_pib`, `ru_inn`, `ru_kpp`, `sa_vat`, `sg_gst`, `sg_uen`, `si_tin`, `sn_ninea`, `sr_fin`, `sv_nit`, `th_vat`, `tj_tin`, `tr_tin`, `tw_vat`, `tz_vat`, `ua_vat`, `ug_tin`, `us_ein`, `uy_ruc`, `uz_tin`, `uz_vat`, `ve_rif`, `vn_tin`, `za_vat`, `zm_tin`, or `zw_tin`
556
+ # Type of the tax ID, one of `ad_nrt`, `ae_trn`, `al_tin`, `am_tin`, `ao_tin`, `ar_cuit`, `au_abn`, `au_arn`, `aw_tin`, `az_tin`, `ba_tin`, `bb_tin`, `bd_bin`, `bf_ifu`, `bg_uic`, `bh_vat`, `bj_ifu`, `bo_tin`, `br_cnpj`, `br_cpf`, `bs_tin`, `by_tin`, `ca_bn`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `ca_qst`, `cd_nif`, `ch_uid`, `ch_vat`, `cl_tin`, `cm_niu`, `cn_tin`, `co_nit`, `cr_tin`, `cv_nif`, `de_stn`, `do_rcn`, `ec_ruc`, `eg_tin`, `es_cif`, `et_tin`, `eu_oss_vat`, `eu_vat`, `gb_vat`, `ge_vat`, `gn_nif`, `hk_br`, `hr_oib`, `hu_tin`, `id_npwp`, `il_vat`, `in_gst`, `is_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `ke_pin`, `kg_tin`, `kh_tin`, `kr_brn`, `kz_bin`, `la_tin`, `li_uid`, `li_vat`, `ma_vat`, `md_vat`, `me_pib`, `mk_vat`, `mr_nif`, `mx_rfc`, `my_frp`, `my_itn`, `my_sst`, `ng_tin`, `no_vat`, `no_voec`, `np_pan`, `nz_gst`, `om_vat`, `pe_ruc`, `ph_tin`, `ro_tin`, `rs_pib`, `ru_inn`, `ru_kpp`, `sa_vat`, `sg_gst`, `sg_uen`, `si_tin`, `sn_ninea`, `sr_fin`, `sv_nit`, `th_vat`, `tj_tin`, `tr_tin`, `tw_vat`, `tz_vat`, `ua_vat`, `ug_tin`, `us_ein`, `uy_ruc`, `uz_tin`, `uz_vat`, `ve_rif`, `vn_tin`, `za_vat`, `zm_tin`, or `zw_tin`
559
557
  attr_accessor :type
560
558
  # Value of the tax ID.
561
559
  attr_accessor :value
@@ -656,7 +654,7 @@ module Stripe
656
654
  end
657
655
 
658
656
  class ListPaymentMethodsParams < Stripe::RequestParams
659
- # This field indicates whether this payment method can be shown again to its customer in a checkout flow. Stripe products such as Checkout and Elements use this field to determine whether a payment method can be shown as a saved payment method in a checkout flow. The field defaults to `unspecified`.
657
+ # This field indicates whether this payment method can be shown again to its customer in a checkout flow. Stripe products such as Checkout and Elements use this field to determine whether a payment method can be shown as a saved payment method in a checkout flow.
660
658
  attr_accessor :allow_redisplay
661
659
  # A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list.
662
660
  attr_accessor :ending_before