stripe 13.2.0 → 13.3.0.pre.beta.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (225) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +1396 -645
  3. data/OPENAPI_VERSION +1 -1
  4. data/VERSION +1 -1
  5. data/lib/stripe/object_types.rb +32 -0
  6. data/lib/stripe/request_signing_authenticator.rb +79 -0
  7. data/lib/stripe/resources/account.rb +230 -0
  8. data/lib/stripe/resources/account_link.rb +9 -0
  9. data/lib/stripe/resources/account_notice.rb +60 -0
  10. data/lib/stripe/resources/account_session.rb +103 -0
  11. data/lib/stripe/resources/apple_pay_domain.rb +13 -0
  12. data/lib/stripe/resources/application.rb +20 -0
  13. data/lib/stripe/resources/application_fee.rb +34 -0
  14. data/lib/stripe/resources/application_fee_refund.rb +17 -0
  15. data/lib/stripe/resources/apps/secret.rb +22 -0
  16. data/lib/stripe/resources/balance.rb +59 -0
  17. data/lib/stripe/resources/balance_transaction.rb +34 -0
  18. data/lib/stripe/resources/bank_account.rb +60 -2
  19. data/lib/stripe/resources/billing/alert.rb +21 -0
  20. data/lib/stripe/resources/billing/alert_triggered.rb +26 -0
  21. data/lib/stripe/resources/billing/credit_balance_summary.rb +25 -0
  22. data/lib/stripe/resources/billing/credit_balance_transaction.rb +45 -1
  23. data/lib/stripe/resources/billing/credit_grant.rb +46 -2
  24. data/lib/stripe/resources/billing/meter.rb +49 -7
  25. data/lib/stripe/resources/billing/meter_error_report.rb +44 -0
  26. data/lib/stripe/resources/billing/meter_event.rb +17 -3
  27. data/lib/stripe/resources/billing/meter_event_adjustment.rb +17 -1
  28. data/lib/stripe/resources/billing/meter_event_summary.rb +15 -0
  29. data/lib/stripe/resources/billing_portal/configuration.rb +70 -0
  30. data/lib/stripe/resources/billing_portal/session.rb +61 -0
  31. data/lib/stripe/resources/capability.rb +38 -0
  32. data/lib/stripe/resources/capital/financing_offer.rb +94 -0
  33. data/lib/stripe/resources/capital/financing_summary.rb +32 -0
  34. data/lib/stripe/resources/capital/financing_transaction.rb +56 -0
  35. data/lib/stripe/resources/card.rb +72 -0
  36. data/lib/stripe/resources/cash_balance.rb +14 -0
  37. data/lib/stripe/resources/charge.rb +469 -0
  38. data/lib/stripe/resources/checkout/session.rb +496 -0
  39. data/lib/stripe/resources/climate/order.rb +55 -0
  40. data/lib/stripe/resources/climate/product.rb +24 -0
  41. data/lib/stripe/resources/climate/supplier.rb +18 -0
  42. data/lib/stripe/resources/confirmation_token.rb +297 -0
  43. data/lib/stripe/resources/connect_collection_transfer.rb +24 -0
  44. data/lib/stripe/resources/country_spec.rb +27 -0
  45. data/lib/stripe/resources/coupon.rb +44 -0
  46. data/lib/stripe/resources/credit_note.rb +91 -0
  47. data/lib/stripe/resources/credit_note_line_item.rb +46 -0
  48. data/lib/stripe/resources/customer.rb +93 -0
  49. data/lib/stripe/resources/customer_balance_transaction.rb +27 -0
  50. data/lib/stripe/resources/customer_cash_balance_transaction.rb +72 -0
  51. data/lib/stripe/resources/customer_session.rb +34 -0
  52. data/lib/stripe/resources/discount.rb +29 -0
  53. data/lib/stripe/resources/dispute.rb +88 -0
  54. data/lib/stripe/resources/entitlements/active_entitlement.rb +11 -0
  55. data/lib/stripe/resources/entitlements/active_entitlement_summary.rb +23 -0
  56. data/lib/stripe/resources/entitlements/feature.rb +15 -0
  57. data/lib/stripe/resources/ephemeral_key.rb +13 -0
  58. data/lib/stripe/resources/event.rb +44 -0
  59. data/lib/stripe/resources/exchange_rate.rb +7 -0
  60. data/lib/stripe/resources/file.rb +23 -0
  61. data/lib/stripe/resources/file_link.rb +19 -0
  62. data/lib/stripe/resources/financial_connections/account.rb +87 -0
  63. data/lib/stripe/resources/financial_connections/account_inferred_balance.rb +27 -0
  64. data/lib/stripe/resources/financial_connections/account_owner.rb +17 -0
  65. data/lib/stripe/resources/financial_connections/account_ownership.rb +9 -0
  66. data/lib/stripe/resources/financial_connections/institution.rb +61 -0
  67. data/lib/stripe/resources/financial_connections/session.rb +49 -0
  68. data/lib/stripe/resources/financial_connections/transaction.rb +28 -0
  69. data/lib/stripe/resources/forwarding/request.rb +40 -0
  70. data/lib/stripe/resources/funding_instructions.rb +82 -0
  71. data/lib/stripe/resources/gift_cards/card.rb +96 -0
  72. data/lib/stripe/resources/gift_cards/transaction.rb +132 -0
  73. data/lib/stripe/resources/identity/verification_report.rb +92 -0
  74. data/lib/stripe/resources/identity/verification_session.rb +76 -0
  75. data/lib/stripe/resources/invoice.rb +418 -0
  76. data/lib/stripe/resources/invoice_item.rb +54 -0
  77. data/lib/stripe/resources/invoice_line_item.rb +83 -0
  78. data/lib/stripe/resources/invoice_payment.rb +46 -0
  79. data/lib/stripe/resources/invoice_rendering_template.rb +17 -0
  80. data/lib/stripe/resources/issuing/authorization.rb +129 -0
  81. data/lib/stripe/resources/issuing/card.rb +86 -0
  82. data/lib/stripe/resources/issuing/cardholder.rb +76 -0
  83. data/lib/stripe/resources/issuing/credit_underwriting_record.rb +145 -0
  84. data/lib/stripe/resources/issuing/dispute.rb +65 -0
  85. data/lib/stripe/resources/issuing/dispute_settlement_detail.rb +49 -0
  86. data/lib/stripe/resources/issuing/fraud_liability_debit.rb +43 -0
  87. data/lib/stripe/resources/issuing/personalization_design.rb +38 -0
  88. data/lib/stripe/resources/issuing/physical_bundle.rb +18 -0
  89. data/lib/stripe/resources/issuing/settlement.rb +49 -0
  90. data/lib/stripe/resources/issuing/token.rb +46 -0
  91. data/lib/stripe/resources/issuing/transaction.rb +106 -0
  92. data/lib/stripe/resources/line_item.rb +50 -0
  93. data/lib/stripe/resources/login_link.rb +7 -0
  94. data/lib/stripe/resources/mandate.rb +78 -0
  95. data/lib/stripe/resources/margin.rb +56 -0
  96. data/lib/stripe/resources/order.rb +322 -0
  97. data/lib/stripe/resources/payment_attempt_record.rb +100 -0
  98. data/lib/stripe/resources/payment_intent.rb +712 -0
  99. data/lib/stripe/resources/payment_link.rb +198 -0
  100. data/lib/stripe/resources/payment_method.rb +368 -0
  101. data/lib/stripe/resources/payment_method_configuration.rb +430 -0
  102. data/lib/stripe/resources/payment_method_domain.rb +57 -0
  103. data/lib/stripe/resources/payment_record.rb +194 -0
  104. data/lib/stripe/resources/payout.rb +56 -0
  105. data/lib/stripe/resources/person.rb +128 -0
  106. data/lib/stripe/resources/plan.rb +52 -0
  107. data/lib/stripe/resources/price.rb +77 -0
  108. data/lib/stripe/resources/product.rb +60 -0
  109. data/lib/stripe/resources/product_feature.rb +12 -0
  110. data/lib/stripe/resources/promotion_code.rb +35 -0
  111. data/lib/stripe/resources/quote.rb +356 -0
  112. data/lib/stripe/resources/quote_line.rb +136 -0
  113. data/lib/stripe/resources/quote_preview_invoice.rb +374 -0
  114. data/lib/stripe/resources/quote_preview_subscription_schedule.rb +170 -0
  115. data/lib/stripe/resources/radar/early_fraud_warning.rb +17 -0
  116. data/lib/stripe/resources/radar/value_list.rb +23 -0
  117. data/lib/stripe/resources/radar/value_list_item.rb +17 -0
  118. data/lib/stripe/resources/refund.rb +130 -0
  119. data/lib/stripe/resources/reporting/report_run.rb +29 -0
  120. data/lib/stripe/resources/reporting/report_type.rb +19 -0
  121. data/lib/stripe/resources/reserve_transaction.rb +22 -0
  122. data/lib/stripe/resources/reversal.rb +21 -0
  123. data/lib/stripe/resources/review.rb +36 -0
  124. data/lib/stripe/resources/setup_attempt.rb +101 -0
  125. data/lib/stripe/resources/setup_intent.rb +158 -0
  126. data/lib/stripe/resources/shipping_rate.rb +42 -0
  127. data/lib/stripe/resources/sigma/scheduled_query_run.rb +26 -0
  128. data/lib/stripe/resources/source.rb +195 -0
  129. data/lib/stripe/resources/source_mandate_notification.rb +59 -0
  130. data/lib/stripe/resources/source_transaction.rb +48 -0
  131. data/lib/stripe/resources/subscription.rb +214 -0
  132. data/lib/stripe/resources/subscription_item.rb +46 -0
  133. data/lib/stripe/resources/subscription_schedule.rb +173 -0
  134. data/lib/stripe/resources/tax/association.rb +60 -0
  135. data/lib/stripe/resources/tax/calculation.rb +72 -0
  136. data/lib/stripe/resources/tax/calculation_line_item.rb +33 -0
  137. data/lib/stripe/resources/tax/form.rb +124 -0
  138. data/lib/stripe/resources/tax/registration.rb +379 -0
  139. data/lib/stripe/resources/tax/settings.rb +33 -0
  140. data/lib/stripe/resources/tax/transaction.rb +68 -0
  141. data/lib/stripe/resources/tax/transaction_line_item.rb +30 -0
  142. data/lib/stripe/resources/tax_code.rb +9 -0
  143. data/lib/stripe/resources/tax_deducted_at_source.rb +22 -0
  144. data/lib/stripe/resources/tax_id.rb +30 -0
  145. data/lib/stripe/resources/tax_rate.rb +42 -0
  146. data/lib/stripe/resources/terminal/configuration.rb +107 -0
  147. data/lib/stripe/resources/terminal/connection_token.rb +7 -0
  148. data/lib/stripe/resources/terminal/location.rb +20 -0
  149. data/lib/stripe/resources/terminal/reader.rb +178 -0
  150. data/lib/stripe/resources/terminal/reader_collected_data.rb +30 -0
  151. data/lib/stripe/resources/test_helpers/test_clock.rb +27 -0
  152. data/lib/stripe/resources/token.rb +29 -0
  153. data/lib/stripe/resources/topup.rb +33 -0
  154. data/lib/stripe/resources/transfer.rb +35 -0
  155. data/lib/stripe/resources/treasury/credit_reversal.rb +32 -0
  156. data/lib/stripe/resources/treasury/debit_reversal.rb +38 -0
  157. data/lib/stripe/resources/treasury/financial_account.rb +57 -0
  158. data/lib/stripe/resources/treasury/financial_account_features.rb +91 -0
  159. data/lib/stripe/resources/treasury/inbound_transfer.rb +66 -0
  160. data/lib/stripe/resources/treasury/outbound_payment.rb +85 -0
  161. data/lib/stripe/resources/treasury/outbound_transfer.rb +82 -0
  162. data/lib/stripe/resources/treasury/received_credit.rb +70 -0
  163. data/lib/stripe/resources/treasury/received_debit.rb +67 -0
  164. data/lib/stripe/resources/treasury/transaction.rb +42 -0
  165. data/lib/stripe/resources/treasury/transaction_entry.rb +34 -0
  166. data/lib/stripe/resources/usage_record.rb +13 -0
  167. data/lib/stripe/resources/usage_record_summary.rb +18 -0
  168. data/lib/stripe/resources/v2/amount.rb +9 -0
  169. data/lib/stripe/resources/v2/billing/meter_event.rb +18 -0
  170. data/lib/stripe/resources/v2/billing/meter_event_adjustment.rb +20 -0
  171. data/lib/stripe/resources/v2/billing/meter_event_session.rb +14 -0
  172. data/lib/stripe/resources/v2/event.rb +21 -0
  173. data/lib/stripe/resources/v2/event_destination.rb +49 -0
  174. data/lib/stripe/resources/webhook_endpoint.rb +27 -0
  175. data/lib/stripe/resources.rb +31 -0
  176. data/lib/stripe/services/account_notice_service.rb +39 -0
  177. data/lib/stripe/services/billing/credit_balance_summary_service.rb +1 -1
  178. data/lib/stripe/services/billing/credit_balance_transaction_service.rb +2 -2
  179. data/lib/stripe/services/billing/credit_grant_service.rb +3 -3
  180. data/lib/stripe/services/billing/meter_event_adjustment_service.rb +1 -1
  181. data/lib/stripe/services/billing/meter_event_service.rb +1 -1
  182. data/lib/stripe/services/billing/meter_service.rb +5 -5
  183. data/lib/stripe/services/capital/financing_offer_service.rb +42 -0
  184. data/lib/stripe/services/capital/financing_summary_service.rb +19 -0
  185. data/lib/stripe/services/capital/financing_transaction_service.rb +31 -0
  186. data/lib/stripe/services/capital_service.rb +15 -0
  187. data/lib/stripe/services/financial_connections/account_inferred_balance_service.rb +19 -0
  188. data/lib/stripe/services/financial_connections/account_service.rb +3 -1
  189. data/lib/stripe/services/financial_connections/institution_service.rb +30 -0
  190. data/lib/stripe/services/financial_connections_service.rb +2 -1
  191. data/lib/stripe/services/gift_cards/card_service.rb +63 -0
  192. data/lib/stripe/services/gift_cards/transaction_service.rb +74 -0
  193. data/lib/stripe/services/gift_cards_service.rb +14 -0
  194. data/lib/stripe/services/invoice_payment_service.rb +28 -0
  195. data/lib/stripe/services/invoice_service.rb +44 -1
  196. data/lib/stripe/services/issuing/credit_underwriting_record_service.rb +74 -0
  197. data/lib/stripe/services/issuing/dispute_settlement_detail_service.rb +30 -0
  198. data/lib/stripe/services/issuing/fraud_liability_debit_service.rb +30 -0
  199. data/lib/stripe/services/issuing_service.rb +5 -1
  200. data/lib/stripe/services/margin_service.rb +50 -0
  201. data/lib/stripe/services/order_line_item_service.rb +17 -0
  202. data/lib/stripe/services/order_service.rb +78 -0
  203. data/lib/stripe/services/payment_attempt_record_service.rb +28 -0
  204. data/lib/stripe/services/payment_intent_service.rb +37 -0
  205. data/lib/stripe/services/payment_record_service.rb +78 -0
  206. data/lib/stripe/services/quote_line_service.rb +17 -0
  207. data/lib/stripe/services/quote_preview_invoice_service.rb +17 -0
  208. data/lib/stripe/services/quote_preview_subscription_schedule_service.rb +17 -0
  209. data/lib/stripe/services/quote_service.rb +49 -1
  210. data/lib/stripe/services/subscription_schedule_service.rb +11 -0
  211. data/lib/stripe/services/tax/association_service.rb +19 -0
  212. data/lib/stripe/services/tax/form_service.rb +37 -0
  213. data/lib/stripe/services/tax_service.rb +3 -1
  214. data/lib/stripe/services/terminal/reader_collected_data_service.rb +19 -0
  215. data/lib/stripe/services/terminal/reader_service.rb +33 -0
  216. data/lib/stripe/services/terminal_service.rb +2 -1
  217. data/lib/stripe/services/v1_services.rb +8 -1
  218. data/lib/stripe/services.rb +25 -0
  219. data/lib/stripe/stripe_configuration.rb +3 -1
  220. data/lib/stripe/stripe_object.rb +5 -0
  221. data/lib/stripe/util.rb +7 -1
  222. data/lib/stripe/version.rb +1 -1
  223. data/lib/stripe.rb +45 -0
  224. data/stripe.gemspec +2 -1
  225. metadata +62 -4
@@ -3,8 +3,7 @@
3
3
 
4
4
  module Stripe
5
5
  module Billing
6
- # A billing meter event represents a customer's usage of a product. Meter events are used to bill a customer based on their usage.
7
- # Meter events are associated with billing meters, which define the shape of the event's payload and how those events are aggregated for billing.
6
+ # Meter events represent actions that customers take in your system. You can use meter events to bill a customer based on their usage. Meter events are associated with billing meters, which define both the contents of the event's payload and how to aggregate those events.
8
7
  class MeterEvent < APIResource
9
8
  extend Stripe::APIOperations::Create
10
9
 
@@ -13,7 +12,22 @@ module Stripe
13
12
  "billing.meter_event"
14
13
  end
15
14
 
16
- # Creates a billing meter event
15
+ # Time at which the object was created. Measured in seconds since the Unix epoch.
16
+ attr_reader :created
17
+ # The name of the meter event. Corresponds with the `event_name` field on a meter.
18
+ attr_reader :event_name
19
+ # A unique identifier for the event.
20
+ attr_reader :identifier
21
+ # Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
22
+ attr_reader :livemode
23
+ # String representing the object's type. Objects of the same type share the same value.
24
+ attr_reader :object
25
+ # The payload of the event. This contains the fields corresponding to a meter's `customer_mapping.event_payload_key` (default is `stripe_customer_id`) and `value_settings.event_payload_key` (default is `value`). Read more about the [payload](https://stripe.com/docs/billing/subscriptions/usage-based/recording-usage#payload-key-overrides).
26
+ attr_reader :payload
27
+ # The timestamp passed in when creating the event. Measured in seconds since the Unix epoch.
28
+ attr_reader :timestamp
29
+
30
+ # Creates a billing meter event.
17
31
  def self.create(params = {}, opts = {})
18
32
  request_stripe_object(
19
33
  method: :post,
@@ -12,7 +12,23 @@ module Stripe
12
12
  "billing.meter_event_adjustment"
13
13
  end
14
14
 
15
- # Creates a billing meter event adjustment
15
+ class Cancel < Stripe::StripeObject
16
+ attr_reader :identifier
17
+ end
18
+ # Specifies which event to cancel.
19
+ attr_reader :cancel
20
+ # The name of the meter event. Corresponds with the `event_name` field on a meter.
21
+ attr_reader :event_name
22
+ # Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
23
+ attr_reader :livemode
24
+ # String representing the object's type. Objects of the same type share the same value.
25
+ attr_reader :object
26
+ # The meter event adjustment's status.
27
+ attr_reader :status
28
+ # Specifies whether to cancel a single event or a range of events for a time period. Time period cancellation is not supported yet.
29
+ attr_reader :type
30
+
31
+ # Creates a billing meter event adjustment.
16
32
  def self.create(params = {}, opts = {})
17
33
  request_stripe_object(
18
34
  method: :post,
@@ -10,6 +10,21 @@ module Stripe
10
10
  def self.object_name
11
11
  "billing.meter_event_summary"
12
12
  end
13
+
14
+ # Aggregated value of all the events within `start_time` (inclusive) and `end_time` (inclusive). The aggregation strategy is defined on meter via `default_aggregation`.
15
+ attr_reader :aggregated_value
16
+ # End timestamp for this event summary (exclusive). Must be aligned with minute boundaries.
17
+ attr_reader :end_time
18
+ # Unique identifier for the object.
19
+ attr_reader :id
20
+ # Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
21
+ attr_reader :livemode
22
+ # The meter associated with this event summary.
23
+ attr_reader :meter
24
+ # String representing the object's type. Objects of the same type share the same value.
25
+ attr_reader :object
26
+ # Start timestamp for this event summary (inclusive). Must be aligned with minute boundaries.
27
+ attr_reader :start_time
13
28
  end
14
29
  end
15
30
  end
@@ -14,6 +14,76 @@ module Stripe
14
14
  "billing_portal.configuration"
15
15
  end
16
16
 
17
+ class BusinessProfile < Stripe::StripeObject
18
+ attr_reader :headline, :privacy_policy_url, :terms_of_service_url
19
+ end
20
+
21
+ class Features < Stripe::StripeObject
22
+ class CustomerUpdate < Stripe::StripeObject
23
+ attr_reader :allowed_updates, :enabled
24
+ end
25
+
26
+ class InvoiceHistory < Stripe::StripeObject
27
+ attr_reader :enabled
28
+ end
29
+
30
+ class PaymentMethodUpdate < Stripe::StripeObject
31
+ attr_reader :enabled
32
+ end
33
+
34
+ class SubscriptionCancel < Stripe::StripeObject
35
+ class CancellationReason < Stripe::StripeObject
36
+ attr_reader :enabled, :options
37
+ end
38
+ attr_reader :cancellation_reason, :enabled, :mode, :proration_behavior
39
+ end
40
+
41
+ class SubscriptionUpdate < Stripe::StripeObject
42
+ class Product < Stripe::StripeObject
43
+ attr_reader :prices, :product
44
+ end
45
+
46
+ class ScheduleAtPeriodEnd < Stripe::StripeObject
47
+ class Condition < Stripe::StripeObject
48
+ attr_reader :type
49
+ end
50
+ attr_reader :conditions
51
+ end
52
+ attr_reader :default_allowed_updates, :enabled, :products, :proration_behavior, :schedule_at_period_end
53
+ end
54
+ attr_reader :customer_update, :invoice_history, :payment_method_update, :subscription_cancel, :subscription_update
55
+ end
56
+
57
+ class LoginPage < Stripe::StripeObject
58
+ attr_reader :enabled, :url
59
+ end
60
+ # Whether the configuration is active and can be used to create portal sessions.
61
+ attr_reader :active
62
+ # ID of the Connect Application that created the configuration.
63
+ attr_reader :application
64
+ # Attribute for field business_profile
65
+ attr_reader :business_profile
66
+ # Time at which the object was created. Measured in seconds since the Unix epoch.
67
+ attr_reader :created
68
+ # The default URL to redirect customers to when they click on the portal's link to return to your website. This can be [overriden](https://stripe.com/docs/api/customer_portal/sessions/create#create_portal_session-return_url) when creating the session.
69
+ attr_reader :default_return_url
70
+ # Attribute for field features
71
+ attr_reader :features
72
+ # Unique identifier for the object.
73
+ attr_reader :id
74
+ # Whether the configuration is the default. If `true`, this configuration can be managed in the Dashboard and portal sessions will use this configuration unless it is overriden when creating the session.
75
+ attr_reader :is_default
76
+ # Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
77
+ attr_reader :livemode
78
+ # Attribute for field login_page
79
+ attr_reader :login_page
80
+ # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format.
81
+ attr_reader :metadata
82
+ # String representing the object's type. Objects of the same type share the same value.
83
+ attr_reader :object
84
+ # Time at which the object was last updated. Measured in seconds since the Unix epoch.
85
+ attr_reader :updated
86
+
17
87
  # Creates a configuration that describes the functionality and behavior of a PortalSession
18
88
  def self.create(params = {}, opts = {})
19
89
  request_stripe_object(
@@ -25,6 +25,67 @@ module Stripe
25
25
  "billing_portal.session"
26
26
  end
27
27
 
28
+ class Flow < Stripe::StripeObject
29
+ class AfterCompletion < Stripe::StripeObject
30
+ class HostedConfirmation < Stripe::StripeObject
31
+ attr_reader :custom_message
32
+ end
33
+
34
+ class Redirect < Stripe::StripeObject
35
+ attr_reader :return_url
36
+ end
37
+ attr_reader :hosted_confirmation, :redirect, :type
38
+ end
39
+
40
+ class SubscriptionCancel < Stripe::StripeObject
41
+ class Retention < Stripe::StripeObject
42
+ class CouponOffer < Stripe::StripeObject
43
+ attr_reader :coupon
44
+ end
45
+ attr_reader :coupon_offer, :type
46
+ end
47
+ attr_reader :retention, :subscription
48
+ end
49
+
50
+ class SubscriptionUpdate < Stripe::StripeObject
51
+ attr_reader :subscription
52
+ end
53
+
54
+ class SubscriptionUpdateConfirm < Stripe::StripeObject
55
+ class Discount < Stripe::StripeObject
56
+ attr_reader :coupon, :promotion_code
57
+ end
58
+
59
+ class Item < Stripe::StripeObject
60
+ attr_reader :id, :price, :quantity
61
+ end
62
+ attr_reader :discounts, :items, :subscription
63
+ end
64
+ attr_reader :after_completion, :subscription_cancel, :subscription_update, :subscription_update_confirm, :type
65
+ end
66
+ # The configuration used by this session, describing the features available.
67
+ attr_reader :configuration
68
+ # Time at which the object was created. Measured in seconds since the Unix epoch.
69
+ attr_reader :created
70
+ # The ID of the customer for this session.
71
+ attr_reader :customer
72
+ # Information about a specific flow for the customer to go through. See the [docs](https://stripe.com/docs/customer-management/portal-deep-links) to learn more about using customer portal deep links and flows.
73
+ attr_reader :flow
74
+ # Unique identifier for the object.
75
+ attr_reader :id
76
+ # Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
77
+ attr_reader :livemode
78
+ # The IETF language tag of the locale Customer Portal is displayed in. If blank or auto, the customer’s `preferred_locales` or browser’s locale is used.
79
+ attr_reader :locale
80
+ # String representing the object's type. Objects of the same type share the same value.
81
+ attr_reader :object
82
+ # The account for which the session was created on behalf of. When specified, only subscriptions and invoices with this `on_behalf_of` account appear in the portal. For more information, see the [docs](https://stripe.com/docs/connect/separate-charges-and-transfers#settlement-merchant). Use the [Accounts API](https://stripe.com/docs/api/accounts/object#account_object-settings-branding) to modify the `on_behalf_of` account's branding settings, which the portal displays.
83
+ attr_reader :on_behalf_of
84
+ # The URL to redirect customers to when they click on the portal's link to return to your website.
85
+ attr_reader :return_url
86
+ # The short-lived URL of the session that gives customers access to the customer portal.
87
+ attr_reader :url
88
+
28
89
  # Creates a session of the customer portal.
29
90
  def self.create(params = {}, opts = {})
30
91
  request_stripe_object(
@@ -13,6 +13,44 @@ module Stripe
13
13
  "capability"
14
14
  end
15
15
 
16
+ class FutureRequirements < Stripe::StripeObject
17
+ class Alternative < Stripe::StripeObject
18
+ attr_reader :alternative_fields_due, :original_fields_due
19
+ end
20
+
21
+ class Error < Stripe::StripeObject
22
+ attr_reader :code, :reason, :requirement
23
+ end
24
+ attr_reader :alternatives, :current_deadline, :currently_due, :disabled_reason, :errors, :eventually_due, :past_due, :pending_verification
25
+ end
26
+
27
+ class Requirements < Stripe::StripeObject
28
+ class Alternative < Stripe::StripeObject
29
+ attr_reader :alternative_fields_due, :original_fields_due
30
+ end
31
+
32
+ class Error < Stripe::StripeObject
33
+ attr_reader :code, :reason, :requirement
34
+ end
35
+ attr_reader :alternatives, :current_deadline, :currently_due, :disabled_reason, :errors, :eventually_due, :past_due, :pending_verification
36
+ end
37
+ # The account for which the capability enables functionality.
38
+ attr_reader :account
39
+ # Attribute for field future_requirements
40
+ attr_reader :future_requirements
41
+ # The identifier for the capability.
42
+ attr_reader :id
43
+ # String representing the object's type. Objects of the same type share the same value.
44
+ attr_reader :object
45
+ # Whether the capability has been requested.
46
+ attr_reader :requested
47
+ # Time at which the capability was requested. Measured in seconds since the Unix epoch.
48
+ attr_reader :requested_at
49
+ # Attribute for field requirements
50
+ attr_reader :requirements
51
+ # The status of the capability.
52
+ attr_reader :status
53
+
16
54
  def resource_url
17
55
  if !respond_to?(:account) || account.nil?
18
56
  raise NotImplementedError,
@@ -0,0 +1,94 @@
1
+ # File generated from our OpenAPI spec
2
+ # frozen_string_literal: true
3
+
4
+ module Stripe
5
+ module Capital
6
+ # This is an object representing an offer of financing from
7
+ # Stripe Capital to a Connect subaccount.
8
+ class FinancingOffer < APIResource
9
+ extend Stripe::APIOperations::List
10
+
11
+ OBJECT_NAME = "capital.financing_offer"
12
+ def self.object_name
13
+ "capital.financing_offer"
14
+ end
15
+
16
+ class AcceptedTerms < Stripe::StripeObject
17
+ attr_reader :advance_amount, :currency, :fee_amount, :previous_financing_fee_discount_amount, :withhold_rate
18
+ end
19
+
20
+ class OfferedTerms < Stripe::StripeObject
21
+ attr_reader :advance_amount, :campaign_type, :currency, :fee_amount, :previous_financing_fee_discount_rate, :withhold_rate
22
+ end
23
+ # This is an object representing the terms of an offer of financing from
24
+ # Stripe Capital to a Connected account. This resource represents
25
+ # the terms accepted by the Connected account, which may differ from those
26
+ # offered.
27
+ attr_reader :accepted_terms
28
+ # The ID of the merchant associated with this financing object.
29
+ attr_reader :account
30
+ # The time at which this financing offer was charged off, if applicable. Given in seconds since unix epoch.
31
+ attr_reader :charged_off_at
32
+ # Time at which the offer was created. Given in seconds since unix epoch.
33
+ attr_reader :created
34
+ # Time at which the offer expires. Given in seconds since unix epoch.
35
+ attr_reader :expires_after
36
+ # The type of financing being offered.
37
+ attr_reader :financing_type
38
+ # A unique identifier for the financing object.
39
+ attr_reader :id
40
+ # Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
41
+ attr_reader :livemode
42
+ # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format.
43
+ attr_reader :metadata
44
+ # The object type: financing_offer.
45
+ attr_reader :object
46
+ # This is an object representing the terms of an offer of financing from
47
+ # Stripe Capital to a Connected account. This resource represents
48
+ # both the terms offered to the Connected account.
49
+ attr_reader :offered_terms
50
+ # Financing product identifier.
51
+ attr_reader :product_type
52
+ # The ID of the financing offer that replaced this offer.
53
+ attr_reader :replacement
54
+ # The ID of the financing offer that this offer is a replacement for.
55
+ attr_reader :replacement_for
56
+ # The current status of the offer.
57
+ attr_reader :status
58
+ # See [financing_type](https://stripe.com/docs/api/capital/connect_financing_object#financing_offer_object-financing_type).
59
+ attr_reader :type
60
+
61
+ # Retrieves the financing offers available for Connected accounts that belong to your platform.
62
+ def self.list(filters = {}, opts = {})
63
+ request_stripe_object(
64
+ method: :get,
65
+ path: "/v1/capital/financing_offers",
66
+ params: filters,
67
+ opts: opts
68
+ )
69
+ end
70
+
71
+ # Acknowledges that platform has received and delivered the financing_offer to
72
+ # the intended merchant recipient.
73
+ def mark_delivered(params = {}, opts = {})
74
+ request_stripe_object(
75
+ method: :post,
76
+ path: format("/v1/capital/financing_offers/%<financing_offer>s/mark_delivered", { financing_offer: CGI.escape(self["id"]) }),
77
+ params: params,
78
+ opts: opts
79
+ )
80
+ end
81
+
82
+ # Acknowledges that platform has received and delivered the financing_offer to
83
+ # the intended merchant recipient.
84
+ def self.mark_delivered(financing_offer, params = {}, opts = {})
85
+ request_stripe_object(
86
+ method: :post,
87
+ path: format("/v1/capital/financing_offers/%<financing_offer>s/mark_delivered", { financing_offer: CGI.escape(financing_offer) }),
88
+ params: params,
89
+ opts: opts
90
+ )
91
+ end
92
+ end
93
+ end
94
+ end
@@ -0,0 +1,32 @@
1
+ # File generated from our OpenAPI spec
2
+ # frozen_string_literal: true
3
+
4
+ module Stripe
5
+ module Capital
6
+ # A financing object describes an account's current financing state. Used by Connect
7
+ # platforms to read the state of Capital offered to their connected accounts.
8
+ class FinancingSummary < SingletonAPIResource
9
+ OBJECT_NAME = "capital.financing_summary"
10
+ def self.object_name
11
+ "capital.financing_summary"
12
+ end
13
+
14
+ class Details < Stripe::StripeObject
15
+ class CurrentRepaymentInterval < Stripe::StripeObject
16
+ attr_reader :due_at, :paid_amount, :remaining_amount
17
+ end
18
+ attr_reader :advance_amount, :advance_paid_out_at, :currency, :current_repayment_interval, :fee_amount, :paid_amount, :remaining_amount, :repayments_begin_at, :withhold_rate
19
+ end
20
+ # Additional information about the financing summary. Describes currency, advance amount,
21
+ # fee amount, withhold rate, remaining amount, paid amount, current repayment interval,
22
+ # repayment start date, and advance payout date.
23
+ attr_reader :details
24
+ # The Financing Offer ID this Financing Summary corresponds to
25
+ attr_reader :financing_offer
26
+ # The object type: financing_summary
27
+ attr_reader :object
28
+ # Status of the Connected Account's financing. [/v1/capital/financing_summary](https://stripe.com/docs/api/capital/financing_summary) will only return `details` for `paid_out` financing.
29
+ attr_reader :status
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,56 @@
1
+ # File generated from our OpenAPI spec
2
+ # frozen_string_literal: true
3
+
4
+ module Stripe
5
+ module Capital
6
+ # This is an object representing the details of a transaction on a Capital financing object.
7
+ class FinancingTransaction < APIResource
8
+ extend Stripe::APIOperations::List
9
+
10
+ OBJECT_NAME = "capital.financing_transaction"
11
+ def self.object_name
12
+ "capital.financing_transaction"
13
+ end
14
+
15
+ class Details < Stripe::StripeObject
16
+ class Transaction < Stripe::StripeObject
17
+ attr_reader :charge, :treasury_transaction
18
+ end
19
+ attr_reader :advance_amount, :currency, :fee_amount, :linked_payment, :reason, :reversed_transaction, :total_amount, :transaction
20
+ end
21
+ # The ID of the merchant associated with this financing transaction.
22
+ attr_reader :account
23
+ # Time at which the financing transaction was created. Given in seconds since unix epoch.
24
+ attr_reader :created_at
25
+ # This is an object representing a transaction on a Capital financing offer.
26
+ attr_reader :details
27
+ # The Capital financing offer for this financing transaction.
28
+ attr_reader :financing_offer
29
+ # A unique identifier for the financing transaction object.
30
+ attr_reader :id
31
+ # The Capital transaction object that predates the Financing Transactions API and
32
+ # corresponds with the balance transaction that was created as a result of this
33
+ # financing transaction.
34
+ attr_reader :legacy_balance_transaction_source
35
+ # Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
36
+ attr_reader :livemode
37
+ # The object type: financing_transaction
38
+ attr_reader :object
39
+ # The type of the financing transaction.
40
+ attr_reader :type
41
+ # A human-friendly description of the financing transaction.
42
+ attr_reader :user_facing_description
43
+
44
+ # Returns a list of financing transactions. The transactions are returned in sorted order,
45
+ # with the most recent transactions appearing first.
46
+ def self.list(filters = {}, opts = {})
47
+ request_stripe_object(
48
+ method: :get,
49
+ path: "/v1/capital/financing_transactions",
50
+ params: filters,
51
+ opts: opts
52
+ )
53
+ end
54
+ end
55
+ end
56
+ end
@@ -17,6 +17,78 @@ module Stripe
17
17
  "card"
18
18
  end
19
19
 
20
+ class Networks < Stripe::StripeObject
21
+ attr_reader :preferred
22
+ end
23
+ # The account this card belongs to. This attribute will not be in the card object if the card belongs to a customer or recipient instead. This property is only available for accounts where [controller.requirement_collection](/api/accounts/object#account_object-controller-requirement_collection) is `application`, which includes Custom accounts.
24
+ attr_reader :account
25
+ # City/District/Suburb/Town/Village.
26
+ attr_reader :address_city
27
+ # Billing address country, if provided when creating card.
28
+ attr_reader :address_country
29
+ # Address line 1 (Street address/PO Box/Company name).
30
+ attr_reader :address_line1
31
+ # If `address_line1` was provided, results of the check: `pass`, `fail`, `unavailable`, or `unchecked`.
32
+ attr_reader :address_line1_check
33
+ # Address line 2 (Apartment/Suite/Unit/Building).
34
+ attr_reader :address_line2
35
+ # State/County/Province/Region.
36
+ attr_reader :address_state
37
+ # ZIP or postal code.
38
+ attr_reader :address_zip
39
+ # If `address_zip` was provided, results of the check: `pass`, `fail`, `unavailable`, or `unchecked`.
40
+ attr_reader :address_zip_check
41
+ # A set of available payout methods for this card. Only values from this set should be passed as the `method` when creating a payout.
42
+ attr_reader :available_payout_methods
43
+ # Card brand. Can be `American Express`, `Diners Club`, `Discover`, `Eftpos Australia`, `Girocard`, `JCB`, `MasterCard`, `UnionPay`, `Visa`, or `Unknown`.
44
+ attr_reader :brand
45
+ # Two-letter ISO code representing the country of the card. You could use this attribute to get a sense of the international breakdown of cards you've collected.
46
+ attr_reader :country
47
+ # Three-letter [ISO code for currency](https://www.iso.org/iso-4217-currency-codes.html) in lowercase. Must be a [supported currency](https://docs.stripe.com/currencies). Only applicable on accounts (not customers or recipients). The card can be used as a transfer destination for funds in this currency. This property is only available for accounts where [controller.requirement_collection](/api/accounts/object#account_object-controller-requirement_collection) is `application`, which includes Custom accounts.
48
+ attr_reader :currency
49
+ # The customer that this card belongs to. This attribute will not be in the card object if the card belongs to an account or recipient instead.
50
+ attr_reader :customer
51
+ # If a CVC was provided, results of the check: `pass`, `fail`, `unavailable`, or `unchecked`. A result of unchecked indicates that CVC was provided but hasn't been checked yet. Checks are typically performed when attaching a card to a Customer object, or when creating a charge. For more details, see [Check if a card is valid without a charge](https://support.stripe.com/questions/check-if-a-card-is-valid-without-a-charge).
52
+ attr_reader :cvc_check
53
+ # Whether this card is the default external account for its currency. This property is only available for accounts where [controller.requirement_collection](/api/accounts/object#account_object-controller-requirement_collection) is `application`, which includes Custom accounts.
54
+ attr_reader :default_for_currency
55
+ # A high-level description of the type of cards issued in this range. (For internal use only and not typically available in standard API requests.)
56
+ attr_reader :description
57
+ # (For tokenized numbers only.) The last four digits of the device account number.
58
+ attr_reader :dynamic_last4
59
+ # Two-digit number representing the card's expiration month.
60
+ attr_reader :exp_month
61
+ # Four-digit number representing the card's expiration year.
62
+ attr_reader :exp_year
63
+ # Uniquely identifies this particular card number. You can use this attribute to check whether two customers who’ve signed up with you are using the same card number, for example. For payment methods that tokenize card information (Apple Pay, Google Pay), the tokenized number might be provided instead of the underlying card number.
64
+ #
65
+ # *As of May 1, 2021, card fingerprint in India for Connect changed to allow two fingerprints for the same card---one for India and one for the rest of the world.*
66
+ attr_reader :fingerprint
67
+ # Card funding type. Can be `credit`, `debit`, `prepaid`, or `unknown`.
68
+ attr_reader :funding
69
+ # Unique identifier for the object.
70
+ attr_reader :id
71
+ # Issuer identification number of the card. (For internal use only and not typically available in standard API requests.)
72
+ attr_reader :iin
73
+ # The name of the card's issuing bank. (For internal use only and not typically available in standard API requests.)
74
+ attr_reader :issuer
75
+ # The last four digits of the card.
76
+ attr_reader :last4
77
+ # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format.
78
+ attr_reader :metadata
79
+ # Cardholder name.
80
+ attr_reader :name
81
+ # Attribute for field networks
82
+ attr_reader :networks
83
+ # String representing the object's type. Objects of the same type share the same value.
84
+ attr_reader :object
85
+ # For external accounts that are cards, possible values are `new` and `errored`. If a payout fails, the status is set to `errored` and [scheduled payouts](https://stripe.com/docs/payouts#payout-schedule) are stopped until account details are updated.
86
+ attr_reader :status
87
+ # If the card number is tokenized, this is the method that was used. Can be `android_pay` (includes Google Pay), `apple_pay`, `masterpass`, `visa_checkout`, or null.
88
+ attr_reader :tokenization_method
89
+ # Always true for a deleted object
90
+ attr_reader :deleted
91
+
20
92
  def resource_url
21
93
  if respond_to?(:customer) && !customer.nil? && !customer.empty?
22
94
  "#{Customer.resource_url}/#{CGI.escape(customer)}/sources/#{CGI.escape(id)}"
@@ -9,6 +9,20 @@ module Stripe
9
9
  "cash_balance"
10
10
  end
11
11
 
12
+ class Settings < Stripe::StripeObject
13
+ attr_reader :reconciliation_mode, :using_merchant_default
14
+ end
15
+ # A hash of all cash balances available to this customer. You cannot delete a customer with any cash balances, even if the balance is 0. Amounts are represented in the [smallest currency unit](https://stripe.com/docs/currencies#zero-decimal).
16
+ attr_reader :available
17
+ # The ID of the customer whose cash balance this object represents.
18
+ attr_reader :customer
19
+ # Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
20
+ attr_reader :livemode
21
+ # String representing the object's type. Objects of the same type share the same value.
22
+ attr_reader :object
23
+ # Attribute for field settings
24
+ attr_reader :settings
25
+
12
26
  def resource_url
13
27
  if !respond_to?(:customer) || customer.nil?
14
28
  raise NotImplementedError,