stripe 15.2.0.pre.beta.1 → 15.3.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 (196) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +92 -0
  3. data/CONTRIBUTING.md +25 -0
  4. data/OPENAPI_VERSION +1 -1
  5. data/README.md +10 -7
  6. data/VERSION +1 -1
  7. data/lib/stripe/api_version.rb +1 -1
  8. data/lib/stripe/event_types.rb +9 -0
  9. data/lib/stripe/events/v2_core_account_link_completed_event.rb +1 -1
  10. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_failed_event.rb +1 -1
  11. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_processing_event.rb +1 -1
  12. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_queued_event.rb +1 -1
  13. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_returned_event.rb +1 -1
  14. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_succeeded_event.rb +1 -1
  15. data/lib/stripe/events/v2_money_management_outbound_payment_canceled_event.rb +1 -1
  16. data/lib/stripe/events/v2_money_management_outbound_payment_failed_event.rb +1 -1
  17. data/lib/stripe/events/v2_money_management_outbound_payment_posted_event.rb +1 -1
  18. data/lib/stripe/events/v2_money_management_outbound_payment_returned_event.rb +1 -1
  19. data/lib/stripe/events/v2_money_management_outbound_payment_updated_event.rb +1 -1
  20. data/lib/stripe/events/v2_off_session_payment_requires_capture_event.rb +21 -0
  21. data/lib/stripe/events/v2_payments_off_session_payment_authorization_attempt_failed_event.rb +21 -0
  22. data/lib/stripe/events/v2_payments_off_session_payment_authorization_attempt_started_event.rb +21 -0
  23. data/lib/stripe/events/v2_payments_off_session_payment_canceled_event.rb +21 -0
  24. data/lib/stripe/events/v2_payments_off_session_payment_created_event.rb +21 -0
  25. data/lib/stripe/events/v2_payments_off_session_payment_failed_event.rb +21 -0
  26. data/lib/stripe/events/v2_payments_off_session_payment_succeeded_event.rb +21 -0
  27. data/lib/stripe/object_types.rb +1 -3
  28. data/lib/stripe/resources/account.rb +47 -20
  29. data/lib/stripe/resources/account_session.rb +85 -24
  30. data/lib/stripe/resources/apple_pay_domain.rb +1 -2
  31. data/lib/stripe/resources/balance.rb +42 -0
  32. data/lib/stripe/resources/balance_transaction.rb +2 -0
  33. data/lib/stripe/resources/bank_account.rb +2 -2
  34. data/lib/stripe/resources/billing_portal/session.rb +1 -1
  35. data/lib/stripe/resources/capability.rb +1 -1
  36. data/lib/stripe/resources/charge.rb +85 -9
  37. data/lib/stripe/resources/checkout/session.rb +22 -6
  38. data/lib/stripe/resources/confirmation_token.rb +37 -97
  39. data/lib/stripe/resources/country_spec.rb +1 -1
  40. data/lib/stripe/resources/coupon.rb +1 -2
  41. data/lib/stripe/resources/credit_note.rb +10 -11
  42. data/lib/stripe/resources/customer.rb +2 -4
  43. data/lib/stripe/resources/customer_session.rb +3 -3
  44. data/lib/stripe/resources/dispute.rb +2 -2
  45. data/lib/stripe/resources/event.rb +1 -1
  46. data/lib/stripe/resources/file.rb +1 -1
  47. data/lib/stripe/resources/financial_connections/account.rb +2 -0
  48. data/lib/stripe/resources/financial_connections/institution.rb +2 -0
  49. data/lib/stripe/resources/identity/verification_report.rb +6 -0
  50. data/lib/stripe/resources/identity/verification_session.rb +17 -11
  51. data/lib/stripe/resources/invoice.rb +70 -43
  52. data/lib/stripe/resources/invoice_item.rb +2 -3
  53. data/lib/stripe/resources/invoice_line_item.rb +1 -1
  54. data/lib/stripe/resources/invoice_payment.rb +9 -2
  55. data/lib/stripe/resources/issuing/authorization.rb +8 -8
  56. data/lib/stripe/resources/issuing/card.rb +1 -1
  57. data/lib/stripe/resources/issuing/dispute.rb +3 -3
  58. data/lib/stripe/resources/order.rb +2 -55
  59. data/lib/stripe/resources/payment_attempt_record.rb +8 -0
  60. data/lib/stripe/resources/payment_intent.rb +439 -411
  61. data/lib/stripe/resources/payment_intent_amount_details_line_item.rb +7 -0
  62. data/lib/stripe/resources/payment_method.rb +50 -113
  63. data/lib/stripe/resources/payment_method_configuration.rb +297 -2
  64. data/lib/stripe/resources/payment_method_domain.rb +2 -2
  65. data/lib/stripe/resources/payment_record.rb +8 -0
  66. data/lib/stripe/resources/payout.rb +4 -4
  67. data/lib/stripe/resources/person.rb +2 -2
  68. data/lib/stripe/resources/plan.rb +2 -3
  69. data/lib/stripe/resources/price.rb +1 -1
  70. data/lib/stripe/resources/privacy/redaction_job.rb +52 -29
  71. data/lib/stripe/resources/privacy/redaction_job_validation_error.rb +12 -4
  72. data/lib/stripe/resources/product.rb +1 -61
  73. data/lib/stripe/resources/quote.rb +1 -1
  74. data/lib/stripe/resources/quote_preview_invoice.rb +2 -2
  75. data/lib/stripe/resources/quote_preview_subscription_schedule.rb +26 -1
  76. data/lib/stripe/resources/radar/value_list.rb +1 -2
  77. data/lib/stripe/resources/radar/value_list_item.rb +1 -2
  78. data/lib/stripe/resources/refund.rb +6 -1
  79. data/lib/stripe/resources/reversal.rb +1 -1
  80. data/lib/stripe/resources/review.rb +1 -1
  81. data/lib/stripe/resources/setup_intent.rb +123 -311
  82. data/lib/stripe/resources/source.rb +1 -1
  83. data/lib/stripe/resources/subscription.rb +132 -37
  84. data/lib/stripe/resources/subscription_item.rb +33 -0
  85. data/lib/stripe/resources/subscription_schedule.rb +120 -5
  86. data/lib/stripe/resources/tax/association.rb +8 -31
  87. data/lib/stripe/resources/tax/calculation.rb +4 -0
  88. data/lib/stripe/resources/tax/calculation_line_item.rb +2 -0
  89. data/lib/stripe/resources/tax/registration.rb +1 -1
  90. data/lib/stripe/resources/tax_id.rb +1 -2
  91. data/lib/stripe/resources/tax_rate.rb +2 -2
  92. data/lib/stripe/resources/terminal/configuration.rb +1 -2
  93. data/lib/stripe/resources/terminal/location.rb +2 -3
  94. data/lib/stripe/resources/terminal/reader.rb +26 -4
  95. data/lib/stripe/resources/test_helpers/test_clock.rb +1 -2
  96. data/lib/stripe/resources/token.rb +2 -2
  97. data/lib/stripe/resources/transfer.rb +1 -1
  98. data/lib/stripe/resources/v2/core/account.rb +5 -5
  99. data/lib/stripe/resources/v2/money_management/received_credit.rb +0 -20
  100. data/lib/stripe/resources/v2/money_management/received_debit.rb +0 -24
  101. data/lib/stripe/resources/v2/payments/off_session_payment.rb +74 -0
  102. data/lib/stripe/resources/webhook_endpoint.rb +1 -2
  103. data/lib/stripe/resources.rb +8 -3
  104. data/lib/stripe/services/account_external_account_service.rb +2 -3
  105. data/lib/stripe/services/account_login_link_service.rb +1 -1
  106. data/lib/stripe/services/account_person_service.rb +1 -2
  107. data/lib/stripe/services/account_service.rb +38 -13
  108. data/lib/stripe/services/account_session_service.rb +49 -24
  109. data/lib/stripe/services/apple_pay_domain_service.rb +1 -2
  110. data/lib/stripe/services/balance_service.rb +1 -1
  111. data/lib/stripe/services/balance_settings_service.rb +2 -2
  112. data/lib/stripe/services/charge_service.rb +76 -8
  113. data/lib/stripe/services/checkout/session_service.rb +14 -6
  114. data/lib/stripe/services/coupon_service.rb +1 -2
  115. data/lib/stripe/services/credit_note_service.rb +7 -8
  116. data/lib/stripe/services/customer_balance_transaction_service.rb +3 -3
  117. data/lib/stripe/services/customer_cash_balance_transaction_service.rb +2 -2
  118. data/lib/stripe/services/customer_payment_source_service.rb +1 -1
  119. data/lib/stripe/services/customer_service.rb +3 -5
  120. data/lib/stripe/services/customer_tax_id_service.rb +1 -2
  121. data/lib/stripe/services/dispute_service.rb +1 -1
  122. data/lib/stripe/services/external_account_service.rb +2 -3
  123. data/lib/stripe/services/file_service.rb +1 -1
  124. data/lib/stripe/services/identity/verification_session_service.rb +5 -5
  125. data/lib/stripe/services/invoice_item_service.rb +1 -2
  126. data/lib/stripe/services/invoice_service.rb +65 -35
  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/order_service.rb +1 -33
  131. data/lib/stripe/services/payment_intent_service.rb +385 -386
  132. data/lib/stripe/services/payment_method_configuration_service.rb +212 -2
  133. data/lib/stripe/services/payment_method_domain_service.rb +1 -1
  134. data/lib/stripe/services/payment_method_service.rb +47 -110
  135. data/lib/stripe/services/payout_service.rb +2 -2
  136. data/lib/stripe/services/plan_service.rb +2 -3
  137. data/lib/stripe/services/price_service.rb +2 -2
  138. data/lib/stripe/services/privacy/redaction_job_service.rb +22 -13
  139. data/lib/stripe/services/privacy/redaction_job_validation_error_service.rb +1 -1
  140. data/lib/stripe/services/product_feature_service.rb +1 -2
  141. data/lib/stripe/services/product_service.rb +2 -41
  142. data/lib/stripe/services/promotion_code_service.rb +1 -1
  143. data/lib/stripe/services/quote_service.rb +1 -1
  144. data/lib/stripe/services/radar/early_fraud_warning_service.rb +1 -1
  145. data/lib/stripe/services/radar/value_list_item_service.rb +1 -2
  146. data/lib/stripe/services/radar/value_list_service.rb +1 -2
  147. data/lib/stripe/services/setup_intent_service.rb +122 -310
  148. data/lib/stripe/services/source_service.rb +1 -1
  149. data/lib/stripe/services/subscription_item_service.rb +26 -0
  150. data/lib/stripe/services/subscription_schedule_service.rb +94 -4
  151. data/lib/stripe/services/subscription_service.rb +103 -33
  152. data/lib/stripe/services/tax/calculation_service.rb +4 -0
  153. data/lib/stripe/services/tax/registration_service.rb +1 -1
  154. data/lib/stripe/services/tax_id_service.rb +1 -2
  155. data/lib/stripe/services/terminal/configuration_service.rb +1 -2
  156. data/lib/stripe/services/terminal/location_service.rb +2 -3
  157. data/lib/stripe/services/terminal/reader_service.rb +17 -3
  158. data/lib/stripe/services/test_helpers/confirmation_token_service.rb +37 -97
  159. data/lib/stripe/services/test_helpers/test_clock_service.rb +1 -2
  160. data/lib/stripe/services/token_service.rb +1 -1
  161. data/lib/stripe/services/transfer_service.rb +1 -1
  162. data/lib/stripe/services/v1_services.rb +1 -2
  163. data/lib/stripe/services/v2/billing/meter_event_session_service.rb +1 -2
  164. data/lib/stripe/services/v2/core/accounts/person_service.rb +2 -4
  165. data/lib/stripe/services/v2/core/event_destination_service.rb +4 -10
  166. data/lib/stripe/services/v2/core/event_service.rb +1 -2
  167. data/lib/stripe/services/v2/core/vault/gb_bank_account_service.rb +3 -7
  168. data/lib/stripe/services/v2/core/vault/us_bank_account_service.rb +2 -4
  169. data/lib/stripe/services/v2/money_management/adjustment_service.rb +1 -2
  170. data/lib/stripe/services/v2/money_management/financial_account_service.rb +1 -2
  171. data/lib/stripe/services/v2/money_management/financial_address_service.rb +1 -1
  172. data/lib/stripe/services/v2/money_management/inbound_transfer_service.rb +1 -2
  173. data/lib/stripe/services/v2/money_management/outbound_payment_quote_service.rb +1 -2
  174. data/lib/stripe/services/v2/money_management/outbound_payment_service.rb +2 -4
  175. data/lib/stripe/services/v2/money_management/outbound_setup_intent_service.rb +2 -4
  176. data/lib/stripe/services/v2/money_management/outbound_transfer_service.rb +2 -4
  177. data/lib/stripe/services/v2/money_management/payout_method_service.rb +3 -7
  178. data/lib/stripe/services/v2/money_management/received_credit_service.rb +1 -2
  179. data/lib/stripe/services/v2/money_management/received_debit_service.rb +1 -2
  180. data/lib/stripe/services/v2/money_management/transaction_entry_service.rb +1 -2
  181. data/lib/stripe/services/v2/money_management/transaction_service.rb +1 -2
  182. data/lib/stripe/services/v2/payment_service.rb +15 -0
  183. data/lib/stripe/services/v2/payments/off_session_payment_service.rb +138 -0
  184. data/lib/stripe/services/v2/test_helpers/financial_address_service.rb +1 -2
  185. data/lib/stripe/services/v2_services.rb +2 -1
  186. data/lib/stripe/services/webhook_endpoint_service.rb +1 -2
  187. data/lib/stripe/services.rb +2 -3
  188. data/lib/stripe/version.rb +1 -1
  189. data/rbi/stripe.rbi +3903 -4131
  190. metadata +13 -8
  191. data/lib/stripe/resources/billing/meter_error_report.rb +0 -59
  192. data/lib/stripe/resources/gift_cards/card.rb +0 -208
  193. data/lib/stripe/resources/gift_cards/transaction.rb +0 -272
  194. data/lib/stripe/services/gift_cards/card_service.rb +0 -170
  195. data/lib/stripe/services/gift_cards/transaction_service.rb +0 -209
  196. data/lib/stripe/services/gift_cards_service.rb +0 -14
@@ -157,6 +157,10 @@ module Stripe
157
157
  end
158
158
 
159
159
  class Affirm < Stripe::StripeObject
160
+ # ID of the [location](https://stripe.com/docs/api/terminal/locations) that this transaction's reader is assigned to.
161
+ attr_reader :location
162
+ # ID of the [reader](https://stripe.com/docs/api/terminal/readers) this transaction was made on.
163
+ attr_reader :reader
160
164
  # The Affirm transaction ID associated with this payment.
161
165
  attr_reader :transaction_id
162
166
  end
@@ -1082,6 +1086,10 @@ module Stripe
1082
1086
  class WechatPay < Stripe::StripeObject
1083
1087
  # Uniquely identifies this particular WeChat Pay account. You can use this attribute to check whether two WeChat accounts are the same.
1084
1088
  attr_reader :fingerprint
1089
+ # ID of the [location](https://stripe.com/docs/api/terminal/locations) that this transaction's reader is assigned to.
1090
+ attr_reader :location
1091
+ # ID of the [reader](https://stripe.com/docs/api/terminal/readers) this transaction was made on.
1092
+ attr_reader :reader
1085
1093
  # Transaction ID of this particular WeChat Pay transaction.
1086
1094
  attr_reader :transaction_id
1087
1095
  end
@@ -1534,11 +1542,29 @@ module Stripe
1534
1542
  end
1535
1543
  end
1536
1544
 
1545
+ class Distance < Stripe::RequestParams
1546
+ # Distance traveled.
1547
+ attr_accessor :amount
1548
+ # Unit of measurement for the distance traveled. One of `miles` or `kilometers`.
1549
+ attr_accessor :unit
1550
+
1551
+ def initialize(amount: nil, unit: nil)
1552
+ @amount = amount
1553
+ @unit = unit
1554
+ end
1555
+ end
1556
+
1537
1557
  class Driver < Stripe::RequestParams
1558
+ # Driver's identification number.
1559
+ attr_accessor :driver_identification_number
1560
+ # Driver's tax number.
1561
+ attr_accessor :driver_tax_number
1538
1562
  # Full name of the person or entity on the car reservation.
1539
1563
  attr_accessor :name
1540
1564
 
1541
- def initialize(name: nil)
1565
+ def initialize(driver_identification_number: nil, driver_tax_number: nil, name: nil)
1566
+ @driver_identification_number = driver_identification_number
1567
+ @driver_tax_number = driver_tax_number
1542
1568
  @name = name
1543
1569
  end
1544
1570
  end
@@ -1622,6 +1648,8 @@ module Stripe
1622
1648
  attr_accessor :days_rented
1623
1649
  # Delivery details for this purchase.
1624
1650
  attr_accessor :delivery
1651
+ # The details of the distance traveled during the rental period.
1652
+ attr_accessor :distance
1625
1653
  # The details of the passengers in the travel reservation
1626
1654
  attr_accessor :drivers
1627
1655
  # List of additional charges being billed.
@@ -1632,6 +1660,8 @@ module Stripe
1632
1660
  attr_accessor :pickup_address
1633
1661
  # Car pick-up time. Measured in seconds since the Unix epoch.
1634
1662
  attr_accessor :pickup_at
1663
+ # Name of the pickup location.
1664
+ attr_accessor :pickup_location_name
1635
1665
  # Rental rate.
1636
1666
  attr_accessor :rate_amount
1637
1667
  # The frequency at which the rate amount is applied. One of `day`, `week` or `month`
@@ -1642,8 +1672,12 @@ module Stripe
1642
1672
  attr_accessor :return_address
1643
1673
  # Car return time. Measured in seconds since the Unix epoch.
1644
1674
  attr_accessor :return_at
1675
+ # Name of the return location.
1676
+ attr_accessor :return_location_name
1645
1677
  # Indicates whether the goods or services are tax-exempt or tax is not collected.
1646
1678
  attr_accessor :tax_exempt
1679
+ # The vehicle identification number.
1680
+ attr_accessor :vehicle_identification_number
1647
1681
 
1648
1682
  def initialize(
1649
1683
  affiliate: nil,
@@ -1655,17 +1689,21 @@ module Stripe
1655
1689
  customer_service_phone_number: nil,
1656
1690
  days_rented: nil,
1657
1691
  delivery: nil,
1692
+ distance: nil,
1658
1693
  drivers: nil,
1659
1694
  extra_charges: nil,
1660
1695
  no_show: nil,
1661
1696
  pickup_address: nil,
1662
1697
  pickup_at: nil,
1698
+ pickup_location_name: nil,
1663
1699
  rate_amount: nil,
1664
1700
  rate_interval: nil,
1665
1701
  renter_name: nil,
1666
1702
  return_address: nil,
1667
1703
  return_at: nil,
1668
- tax_exempt: nil
1704
+ return_location_name: nil,
1705
+ tax_exempt: nil,
1706
+ vehicle_identification_number: nil
1669
1707
  )
1670
1708
  @affiliate = affiliate
1671
1709
  @booking_number = booking_number
@@ -1676,17 +1714,21 @@ module Stripe
1676
1714
  @customer_service_phone_number = customer_service_phone_number
1677
1715
  @days_rented = days_rented
1678
1716
  @delivery = delivery
1717
+ @distance = distance
1679
1718
  @drivers = drivers
1680
1719
  @extra_charges = extra_charges
1681
1720
  @no_show = no_show
1682
1721
  @pickup_address = pickup_address
1683
1722
  @pickup_at = pickup_at
1723
+ @pickup_location_name = pickup_location_name
1684
1724
  @rate_amount = rate_amount
1685
1725
  @rate_interval = rate_interval
1686
1726
  @renter_name = renter_name
1687
1727
  @return_address = return_address
1688
1728
  @return_at = return_at
1729
+ @return_location_name = return_location_name
1689
1730
  @tax_exempt = tax_exempt
1731
+ @vehicle_identification_number = vehicle_identification_number
1690
1732
  end
1691
1733
  end
1692
1734
 
@@ -2316,11 +2358,29 @@ module Stripe
2316
2358
  end
2317
2359
  end
2318
2360
 
2361
+ class Distance < Stripe::RequestParams
2362
+ # Distance traveled.
2363
+ attr_accessor :amount
2364
+ # Unit of measurement for the distance traveled. One of `miles` or `kilometers`.
2365
+ attr_accessor :unit
2366
+
2367
+ def initialize(amount: nil, unit: nil)
2368
+ @amount = amount
2369
+ @unit = unit
2370
+ end
2371
+ end
2372
+
2319
2373
  class Driver < Stripe::RequestParams
2374
+ # Driver's identification number.
2375
+ attr_accessor :driver_identification_number
2376
+ # Driver's tax number.
2377
+ attr_accessor :driver_tax_number
2320
2378
  # Full name of the person or entity on the car reservation.
2321
2379
  attr_accessor :name
2322
2380
 
2323
- def initialize(name: nil)
2381
+ def initialize(driver_identification_number: nil, driver_tax_number: nil, name: nil)
2382
+ @driver_identification_number = driver_identification_number
2383
+ @driver_tax_number = driver_tax_number
2324
2384
  @name = name
2325
2385
  end
2326
2386
  end
@@ -2404,6 +2464,8 @@ module Stripe
2404
2464
  attr_accessor :days_rented
2405
2465
  # Delivery details for this purchase.
2406
2466
  attr_accessor :delivery
2467
+ # The details of the distance traveled during the rental period.
2468
+ attr_accessor :distance
2407
2469
  # The details of the passengers in the travel reservation
2408
2470
  attr_accessor :drivers
2409
2471
  # List of additional charges being billed.
@@ -2414,6 +2476,8 @@ module Stripe
2414
2476
  attr_accessor :pickup_address
2415
2477
  # Car pick-up time. Measured in seconds since the Unix epoch.
2416
2478
  attr_accessor :pickup_at
2479
+ # Name of the pickup location.
2480
+ attr_accessor :pickup_location_name
2417
2481
  # Rental rate.
2418
2482
  attr_accessor :rate_amount
2419
2483
  # The frequency at which the rate amount is applied. One of `day`, `week` or `month`
@@ -2424,8 +2488,12 @@ module Stripe
2424
2488
  attr_accessor :return_address
2425
2489
  # Car return time. Measured in seconds since the Unix epoch.
2426
2490
  attr_accessor :return_at
2491
+ # Name of the return location.
2492
+ attr_accessor :return_location_name
2427
2493
  # Indicates whether the goods or services are tax-exempt or tax is not collected.
2428
2494
  attr_accessor :tax_exempt
2495
+ # The vehicle identification number.
2496
+ attr_accessor :vehicle_identification_number
2429
2497
 
2430
2498
  def initialize(
2431
2499
  affiliate: nil,
@@ -2437,17 +2505,21 @@ module Stripe
2437
2505
  customer_service_phone_number: nil,
2438
2506
  days_rented: nil,
2439
2507
  delivery: nil,
2508
+ distance: nil,
2440
2509
  drivers: nil,
2441
2510
  extra_charges: nil,
2442
2511
  no_show: nil,
2443
2512
  pickup_address: nil,
2444
2513
  pickup_at: nil,
2514
+ pickup_location_name: nil,
2445
2515
  rate_amount: nil,
2446
2516
  rate_interval: nil,
2447
2517
  renter_name: nil,
2448
2518
  return_address: nil,
2449
2519
  return_at: nil,
2450
- tax_exempt: nil
2520
+ return_location_name: nil,
2521
+ tax_exempt: nil,
2522
+ vehicle_identification_number: nil
2451
2523
  )
2452
2524
  @affiliate = affiliate
2453
2525
  @booking_number = booking_number
@@ -2458,17 +2530,21 @@ module Stripe
2458
2530
  @customer_service_phone_number = customer_service_phone_number
2459
2531
  @days_rented = days_rented
2460
2532
  @delivery = delivery
2533
+ @distance = distance
2461
2534
  @drivers = drivers
2462
2535
  @extra_charges = extra_charges
2463
2536
  @no_show = no_show
2464
2537
  @pickup_address = pickup_address
2465
2538
  @pickup_at = pickup_at
2539
+ @pickup_location_name = pickup_location_name
2466
2540
  @rate_amount = rate_amount
2467
2541
  @rate_interval = rate_interval
2468
2542
  @renter_name = renter_name
2469
2543
  @return_address = return_address
2470
2544
  @return_at = return_at
2545
+ @return_location_name = return_location_name
2471
2546
  @tax_exempt = tax_exempt
2547
+ @vehicle_identification_number = vehicle_identification_number
2472
2548
  end
2473
2549
  end
2474
2550
 
@@ -3106,9 +3182,9 @@ module Stripe
3106
3182
 
3107
3183
  # Capture the payment of an existing, uncaptured charge that was created with the capture option set to false.
3108
3184
  #
3109
- # Uncaptured payments expire a set number of days after they are created ([7 by default](https://stripe.com/docs/charges/placing-a-hold)), after which they are marked as refunded and capture attempts will fail.
3185
+ # Uncaptured payments expire a set number of days after they are created ([7 by default](https://docs.stripe.com/docs/charges/placing-a-hold)), after which they are marked as refunded and capture attempts will fail.
3110
3186
  #
3111
- # Don't use this method to capture a PaymentIntent-initiated charge. Use [Capture a PaymentIntent](https://stripe.com/docs/api/payment_intents/capture).
3187
+ # Don't use this method to capture a PaymentIntent-initiated charge. Use [Capture a PaymentIntent](https://docs.stripe.com/docs/api/payment_intents/capture).
3112
3188
  def capture(params = {}, opts = {})
3113
3189
  request_stripe_object(
3114
3190
  method: :post,
@@ -3120,9 +3196,9 @@ module Stripe
3120
3196
 
3121
3197
  # Capture the payment of an existing, uncaptured charge that was created with the capture option set to false.
3122
3198
  #
3123
- # Uncaptured payments expire a set number of days after they are created ([7 by default](https://stripe.com/docs/charges/placing-a-hold)), after which they are marked as refunded and capture attempts will fail.
3199
+ # Uncaptured payments expire a set number of days after they are created ([7 by default](https://docs.stripe.com/docs/charges/placing-a-hold)), after which they are marked as refunded and capture attempts will fail.
3124
3200
  #
3125
- # Don't use this method to capture a PaymentIntent-initiated charge. Use [Capture a PaymentIntent](https://stripe.com/docs/api/payment_intents/capture).
3201
+ # Don't use this method to capture a PaymentIntent-initiated charge. Use [Capture a PaymentIntent](https://docs.stripe.com/docs/api/payment_intents/capture).
3126
3202
  def self.capture(charge, params = {}, opts = {})
3127
3203
  request_stripe_object(
3128
3204
  method: :post,
@@ -3132,7 +3208,7 @@ module Stripe
3132
3208
  )
3133
3209
  end
3134
3210
 
3135
- # This method is no longer recommended—use the [Payment Intents API](https://stripe.com/docs/api/payment_intents)
3211
+ # This method is no longer recommended—use the [Payment Intents API](https://docs.stripe.com/docs/api/payment_intents)
3136
3212
  # to initiate a new payment instead. Confirmation of the PaymentIntent creates the Charge
3137
3213
  # object used to request payment.
3138
3214
  def self.create(params = {}, opts = {})
@@ -694,6 +694,14 @@ module Stripe
694
694
  class NaverPay < Stripe::StripeObject
695
695
  # Controls when the funds will be captured from the customer's account.
696
696
  attr_reader :capture_method
697
+ # Indicates that you intend to make future payments with this PaymentIntent's payment method.
698
+ #
699
+ # 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.
700
+ #
701
+ # 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.
702
+ #
703
+ # 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).
704
+ attr_reader :setup_future_usage
697
705
  end
698
706
 
699
707
  class Oxxo < Stripe::StripeObject
@@ -2413,8 +2421,7 @@ module Stripe
2413
2421
  end
2414
2422
  end
2415
2423
 
2416
- class PayByBank < Stripe::RequestParams
2417
- end
2424
+ class PayByBank < Stripe::RequestParams; end
2418
2425
 
2419
2426
  class Payco < Stripe::RequestParams
2420
2427
  # Controls when the funds will be captured from the customer's account.
@@ -2903,11 +2910,18 @@ module Stripe
2903
2910
  class SavedPaymentMethodOptions < Stripe::RequestParams
2904
2911
  # Uses the `allow_redisplay` value of each saved payment method to filter the set presented to a returning customer. By default, only saved payment methods with ’allow_redisplay: ‘always’ are shown in Checkout.
2905
2912
  attr_accessor :allow_redisplay_filters
2913
+ # Enable customers to choose if they wish to remove their saved payment methods. Disabled by default.
2914
+ attr_accessor :payment_method_remove
2906
2915
  # Enable customers to choose if they wish to save their payment method for future use. Disabled by default.
2907
2916
  attr_accessor :payment_method_save
2908
2917
 
2909
- def initialize(allow_redisplay_filters: nil, payment_method_save: nil)
2918
+ def initialize(
2919
+ allow_redisplay_filters: nil,
2920
+ payment_method_remove: nil,
2921
+ payment_method_save: nil
2922
+ )
2910
2923
  @allow_redisplay_filters = allow_redisplay_filters
2924
+ @payment_method_remove = payment_method_remove
2911
2925
  @payment_method_save = payment_method_save
2912
2926
  end
2913
2927
  end
@@ -3096,7 +3110,7 @@ module Stripe
3096
3110
  attr_accessor :application_fee_percent
3097
3111
  # A future timestamp to anchor the subscription's billing cycle for new subscriptions.
3098
3112
  attr_accessor :billing_cycle_anchor
3099
- # Configure billing_mode in each subscription to opt in improved credit proration behavior.
3113
+ # Controls how prorations and invoices for subscriptions are calculated and orchestrated.
3100
3114
  attr_accessor :billing_mode
3101
3115
  # The tax rates that will apply to any subscription item that does not have
3102
3116
  # `tax_rates` set. Invoices created will have their `default_tax_rates` populated
@@ -3577,7 +3591,7 @@ module Stripe
3577
3591
  attr_accessor :price
3578
3592
  # Data used to generate a new [Price](https://stripe.com/docs/api/prices) object inline. One of `price` or `price_data` is required when creating a new line item.
3579
3593
  attr_accessor :price_data
3580
- # The quantity of the line item being purchased.
3594
+ # The quantity of the line item being purchased. Quantity should not be defined when `recurring.usage_type=metered`.
3581
3595
  attr_accessor :quantity
3582
3596
  # The [tax rates](https://stripe.com/docs/api/tax_rates) which apply to this line item.
3583
3597
  attr_accessor :tax_rates
@@ -3718,7 +3732,7 @@ module Stripe
3718
3732
  #
3719
3733
  # To update an existing line item, specify its `id` along with the new values of the fields to update.
3720
3734
  #
3721
- # To add a new line item, specify a `price` and `quantity`.
3735
+ # To add a new line item, specify one of `price` or `price_data` and `quantity`.
3722
3736
  #
3723
3737
  # To remove an existing line item, omit the line item's ID from the retransmitted array.
3724
3738
  #
@@ -3979,6 +3993,8 @@ module Stripe
3979
3993
  end
3980
3994
 
3981
3995
  # Updates a Checkout Session object.
3996
+ #
3997
+ # Related guide: [Dynamically update Checkout](https://docs.stripe.com/payments/checkout/dynamic-updates)
3982
3998
  def self.update(session, params = {}, opts = {})
3983
3999
  request_stripe_object(
3984
4000
  method: :post,
@@ -898,20 +898,11 @@ module Stripe
898
898
  end
899
899
  end
900
900
 
901
- class Affirm < Stripe::RequestParams
902
- end
903
-
904
- class AfterpayClearpay < Stripe::RequestParams
905
- end
906
-
907
- class Alipay < Stripe::RequestParams
908
- end
909
-
910
- class Alma < Stripe::RequestParams
911
- end
912
-
913
- class AmazonPay < Stripe::RequestParams
914
- end
901
+ class Affirm < Stripe::RequestParams; end
902
+ class AfterpayClearpay < Stripe::RequestParams; end
903
+ class Alipay < Stripe::RequestParams; end
904
+ class Alma < Stripe::RequestParams; end
905
+ class AmazonPay < Stripe::RequestParams; end
915
906
 
916
907
  class AuBecsDebit < Stripe::RequestParams
917
908
  # The account number for the bank account.
@@ -937,11 +928,8 @@ module Stripe
937
928
  end
938
929
  end
939
930
 
940
- class Bancontact < Stripe::RequestParams
941
- end
942
-
943
- class Billie < Stripe::RequestParams
944
- end
931
+ class Bancontact < Stripe::RequestParams; end
932
+ class Billie < Stripe::RequestParams; end
945
933
 
946
934
  class BillingDetails < Stripe::RequestParams
947
935
  class Address < Stripe::RequestParams
@@ -994,8 +982,7 @@ module Stripe
994
982
  end
995
983
  end
996
984
 
997
- class Blik < Stripe::RequestParams
998
- end
985
+ class Blik < Stripe::RequestParams; end
999
986
 
1000
987
  class Boleto < Stripe::RequestParams
1001
988
  # The tax ID of the customer (CPF for individual consumers or CNPJ for businesses consumers)
@@ -1006,11 +993,8 @@ module Stripe
1006
993
  end
1007
994
  end
1008
995
 
1009
- class Cashapp < Stripe::RequestParams
1010
- end
1011
-
1012
- class CustomerBalance < Stripe::RequestParams
1013
- end
996
+ class Cashapp < Stripe::RequestParams; end
997
+ class CustomerBalance < Stripe::RequestParams; end
1014
998
 
1015
999
  class Eps < Stripe::RequestParams
1016
1000
  # The customer's bank.
@@ -1033,14 +1017,9 @@ module Stripe
1033
1017
  end
1034
1018
  end
1035
1019
 
1036
- class Giropay < Stripe::RequestParams
1037
- end
1038
-
1039
- class Gopay < Stripe::RequestParams
1040
- end
1041
-
1042
- class Grabpay < Stripe::RequestParams
1043
- end
1020
+ class Giropay < Stripe::RequestParams; end
1021
+ class Gopay < Stripe::RequestParams; end
1022
+ class Grabpay < Stripe::RequestParams; end
1044
1023
 
1045
1024
  class IdBankTransfer < Stripe::RequestParams
1046
1025
  # Bank where the account is held.
@@ -1060,11 +1039,8 @@ module Stripe
1060
1039
  end
1061
1040
  end
1062
1041
 
1063
- class InteracPresent < Stripe::RequestParams
1064
- end
1065
-
1066
- class KakaoPay < Stripe::RequestParams
1067
- end
1042
+ class InteracPresent < Stripe::RequestParams; end
1043
+ class KakaoPay < Stripe::RequestParams; end
1068
1044
 
1069
1045
  class Klarna < Stripe::RequestParams
1070
1046
  class Dob < Stripe::RequestParams
@@ -1089,23 +1065,12 @@ module Stripe
1089
1065
  end
1090
1066
  end
1091
1067
 
1092
- class Konbini < Stripe::RequestParams
1093
- end
1094
-
1095
- class KrCard < Stripe::RequestParams
1096
- end
1097
-
1098
- class Link < Stripe::RequestParams
1099
- end
1100
-
1101
- class MbWay < Stripe::RequestParams
1102
- end
1103
-
1104
- class Mobilepay < Stripe::RequestParams
1105
- end
1106
-
1107
- class Multibanco < Stripe::RequestParams
1108
- end
1068
+ class Konbini < Stripe::RequestParams; end
1069
+ class KrCard < Stripe::RequestParams; end
1070
+ class Link < Stripe::RequestParams; end
1071
+ class MbWay < Stripe::RequestParams; end
1072
+ class Mobilepay < Stripe::RequestParams; end
1073
+ class Multibanco < Stripe::RequestParams; end
1109
1074
 
1110
1075
  class NaverPay < Stripe::RequestParams
1111
1076
  # Whether to use Naver Pay points or a card to fund this transaction. If not provided, this defaults to `card`.
@@ -1147,8 +1112,7 @@ module Stripe
1147
1112
  end
1148
1113
  end
1149
1114
 
1150
- class Oxxo < Stripe::RequestParams
1151
- end
1115
+ class Oxxo < Stripe::RequestParams; end
1152
1116
 
1153
1117
  class P24 < Stripe::RequestParams
1154
1118
  # The customer's bank.
@@ -1159,17 +1123,10 @@ module Stripe
1159
1123
  end
1160
1124
  end
1161
1125
 
1162
- class PayByBank < Stripe::RequestParams
1163
- end
1164
-
1165
- class Payco < Stripe::RequestParams
1166
- end
1167
-
1168
- class Paynow < Stripe::RequestParams
1169
- end
1170
-
1171
- class Paypal < Stripe::RequestParams
1172
- end
1126
+ class PayByBank < Stripe::RequestParams; end
1127
+ class Payco < Stripe::RequestParams; end
1128
+ class Paynow < Stripe::RequestParams; end
1129
+ class Paypal < Stripe::RequestParams; end
1173
1130
 
1174
1131
  class Payto < Stripe::RequestParams
1175
1132
  # The account number for the bank account.
@@ -1186,14 +1143,9 @@ module Stripe
1186
1143
  end
1187
1144
  end
1188
1145
 
1189
- class Pix < Stripe::RequestParams
1190
- end
1191
-
1192
- class Promptpay < Stripe::RequestParams
1193
- end
1194
-
1195
- class Qris < Stripe::RequestParams
1196
- end
1146
+ class Pix < Stripe::RequestParams; end
1147
+ class Promptpay < Stripe::RequestParams; end
1148
+ class Qris < Stripe::RequestParams; end
1197
1149
 
1198
1150
  class RadarOptions < Stripe::RequestParams
1199
1151
  # 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.
@@ -1227,14 +1179,9 @@ module Stripe
1227
1179
  end
1228
1180
  end
1229
1181
 
1230
- class RevolutPay < Stripe::RequestParams
1231
- end
1232
-
1233
- class SamsungPay < Stripe::RequestParams
1234
- end
1235
-
1236
- class Satispay < Stripe::RequestParams
1237
- end
1182
+ class RevolutPay < Stripe::RequestParams; end
1183
+ class SamsungPay < Stripe::RequestParams; end
1184
+ class Satispay < Stripe::RequestParams; end
1238
1185
 
1239
1186
  class SepaDebit < Stripe::RequestParams
1240
1187
  # IBAN of the bank account.
@@ -1245,8 +1192,7 @@ module Stripe
1245
1192
  end
1246
1193
  end
1247
1194
 
1248
- class Shopeepay < Stripe::RequestParams
1249
- end
1195
+ class Shopeepay < Stripe::RequestParams; end
1250
1196
 
1251
1197
  class Sofort < Stripe::RequestParams
1252
1198
  # Two-letter ISO code representing the country the bank account is located in.
@@ -1269,11 +1215,8 @@ module Stripe
1269
1215
  end
1270
1216
  end
1271
1217
 
1272
- class Swish < Stripe::RequestParams
1273
- end
1274
-
1275
- class Twint < Stripe::RequestParams
1276
- end
1218
+ class Swish < Stripe::RequestParams; end
1219
+ class Twint < Stripe::RequestParams; end
1277
1220
 
1278
1221
  class UsBankAccount < Stripe::RequestParams
1279
1222
  # Account holder type: individual or company.
@@ -1302,11 +1245,8 @@ module Stripe
1302
1245
  end
1303
1246
  end
1304
1247
 
1305
- class WechatPay < Stripe::RequestParams
1306
- end
1307
-
1308
- class Zip < Stripe::RequestParams
1309
- end
1248
+ class WechatPay < Stripe::RequestParams; end
1249
+ class Zip < Stripe::RequestParams; end
1310
1250
  # If this is an `acss_debit` PaymentMethod, this hash contains details about the ACSS Debit payment method.
1311
1251
  attr_accessor :acss_debit
1312
1252
  # If this is an `affirm` PaymentMethod, this hash contains details about the Affirm payment method.
@@ -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
 
@@ -35,8 +35,7 @@ module Stripe
35
35
  attr_reader :id
36
36
  end
37
37
 
38
- class DeleteParams < Stripe::RequestParams
39
- end
38
+ class DeleteParams < Stripe::RequestParams; end
40
39
 
41
40
  class UpdateParams < Stripe::RequestParams
42
41
  class CurrencyOptions < Stripe::RequestParams
@@ -635,9 +635,9 @@ module Stripe
635
635
  attr_reader :out_of_band_amount
636
636
  # The link to download the PDF of the credit note.
637
637
  attr_reader :pdf
638
- # Attribute for field post_payment_amount
638
+ # 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.
639
639
  attr_reader :post_payment_amount
640
- # Attribute for field pre_payment_amount
640
+ # The amount of the credit note by which the invoice's `amount_remaining` and `amount_due` were reduced.
641
641
  attr_reader :pre_payment_amount
642
642
  # The pretax credit amounts (ex: discount, credit grants, etc) for all line items.
643
643
  attr_reader :pretax_credit_amounts
@@ -664,20 +664,19 @@ module Stripe
664
664
  # The time that the credit note was voided.
665
665
  attr_reader :voided_at
666
666
 
667
- # Issue a credit note to adjust the amount of a finalized invoice. For a status=open invoice, a credit note reduces
668
- # its amount_due. For a status=paid invoice, a credit note does not affect its amount_due. Instead, it can result
669
- # in any combination of the following:
667
+ # 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.
668
+ # 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:
670
669
  #
671
670
  #
672
- # Refund: create a new refund (using refund_amount) or link an existing refund (using refund).
671
+ # Refunds: create a new refund (using refund_amount) or link existing refunds (using refunds).
673
672
  # Customer balance credit: credit the customer's balance (using credit_amount) which will be automatically applied to their next invoice when it's finalized.
674
673
  # Outside of Stripe credit: record the amount that is or will be credited outside of Stripe (using out_of_band_amount).
675
674
  #
676
675
  #
677
- # For post-payment credit notes the sum of the refund, credit and outside of Stripe amounts must equal the credit note total.
676
+ # The sum of refunds, customer balance credits, and outside of Stripe credits must equal the post_payment_amount.
678
677
  #
679
- # You may issue multiple credit notes for an invoice. Each credit note will increment the invoice's pre_payment_credit_notes_amount
680
- # or post_payment_credit_notes_amount depending on its status at the time of credit note creation.
678
+ # You may issue multiple credit notes for an invoice. Each credit note may increment the invoice's pre_payment_credit_notes_amount,
679
+ # post_payment_credit_notes_amount, or both, depending on the invoice's amount_remaining at the time of credit note creation.
681
680
  def self.create(params = {}, opts = {})
682
681
  request_stripe_object(method: :post, path: "/v1/credit_notes", params: params, opts: opts)
683
682
  end
@@ -717,7 +716,7 @@ module Stripe
717
716
  )
718
717
  end
719
718
 
720
- # Marks a credit note as void. Learn more about [voiding credit notes](https://stripe.com/docs/billing/invoices/credit-notes#voiding).
719
+ # Marks a credit note as void. Learn more about [voiding credit notes](https://docs.stripe.com/docs/billing/invoices/credit-notes#voiding).
721
720
  def void_credit_note(params = {}, opts = {})
722
721
  request_stripe_object(
723
722
  method: :post,
@@ -727,7 +726,7 @@ module Stripe
727
726
  )
728
727
  end
729
728
 
730
- # Marks a credit note as void. Learn more about [voiding credit notes](https://stripe.com/docs/billing/invoices/credit-notes#voiding).
729
+ # Marks a credit note as void. Learn more about [voiding credit notes](https://docs.stripe.com/docs/billing/invoices/credit-notes#voiding).
731
730
  def self.void_credit_note(id, params = {}, opts = {})
732
731
  request_stripe_object(
733
732
  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