Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion API_VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2025-08-27.basil
2025-09-30.clover
2 changes: 1 addition & 1 deletion OPENAPI_VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v1932
v2022
4 changes: 2 additions & 2 deletions lib/stripe/api_version.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

module Stripe
module ApiVersion
CURRENT = "2025-08-27.basil"
CURRENT_MAJOR = "basil"
CURRENT = "2025-09-30.clover"
CURRENT_MAJOR = "clover"
end
end
1 change: 1 addition & 0 deletions lib/stripe/object_types.rb
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ def self.object_names_to_classes
ApplicationFeeRefund.object_name => ApplicationFeeRefund,
Apps::Secret.object_name => Apps::Secret,
Balance.object_name => Balance,
BalanceSettings.object_name => BalanceSettings,
BalanceTransaction.object_name => BalanceTransaction,
BankAccount.object_name => BankAccount,
Billing::Alert.object_name => Billing::Alert,
Expand Down
1 change: 1 addition & 0 deletions lib/stripe/resources.rb
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
require "stripe/resources/application_fee_refund"
require "stripe/resources/apps/secret"
require "stripe/resources/balance"
require "stripe/resources/balance_settings"
require "stripe/resources/balance_transaction"
require "stripe/resources/bank_account"
require "stripe/resources/billing/alert"
Expand Down
104 changes: 80 additions & 24 deletions lib/stripe/resources/account.rb

Large diffs are not rendered by default.

155 changes: 155 additions & 0 deletions lib/stripe/resources/balance_settings.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,155 @@
# File generated from our OpenAPI spec
# frozen_string_literal: true

module Stripe
# Options for customizing account balances and payout settings for a Stripe platform's connected accounts.
class BalanceSettings < SingletonAPIResource
include Stripe::APIOperations::SingletonSave

OBJECT_NAME = "balance_settings"
def self.object_name
"balance_settings"
end

class Payments < Stripe::StripeObject
class Payouts < Stripe::StripeObject
class Schedule < Stripe::StripeObject
# How frequently funds will be paid out. One of `manual` (payouts only created via API call), `daily`, `weekly`, or `monthly`.
attr_reader :interval
# The day of the month funds will be paid out. Only shown if `interval` is monthly. Payouts scheduled between the 29th and 31st of the month are sent on the last day of shorter months.
attr_reader :monthly_payout_days
# The days of the week when available funds are paid out, specified as an array, for example, [`monday`, `tuesday`]. Only shown if `interval` is weekly.
attr_reader :weekly_payout_days

def self.inner_class_types
@inner_class_types = {}
end

def self.field_remappings
@field_remappings = {}
end
end
# The minimum balance amount to retain per currency after automatic payouts. Only funds that exceed these amounts are paid out. Learn more about the [minimum balances for automatic payouts](/payouts/minimum-balances-for-automatic-payouts).
attr_reader :minimum_balance_by_currency
# Details on when funds from charges are available, and when they are paid out to an external account. See our [Setting Bank and Debit Card Payouts](https://stripe.com/docs/connect/bank-transfers#payout-information) documentation for details.
attr_reader :schedule
# The text that appears on the bank account statement for payouts. If not set, this defaults to the platform's bank descriptor as set in the Dashboard.
attr_reader :statement_descriptor
# Whether the funds in this account can be paid out.
attr_reader :status

def self.inner_class_types
@inner_class_types = { schedule: Schedule }
end

def self.field_remappings
@field_remappings = {}
end
end

class SettlementTiming < Stripe::StripeObject
# The number of days charge funds are held before becoming available.
attr_reader :delay_days
# The number of days charge funds are held before becoming available. If present, overrides the default, or minimum available, for the account.
attr_reader :delay_days_override

def self.inner_class_types
@inner_class_types = {}
end

def self.field_remappings
@field_remappings = {}
end
end
# A Boolean indicating if Stripe should try to reclaim negative balances from an attached bank account. See [Understanding Connect account balances](/connect/account-balances) for details. The default value is `false` when [controller.requirement_collection](/api/accounts/object#account_object-controller-requirement_collection) is `application`, which includes Custom accounts, otherwise `true`.
attr_reader :debit_negative_balances
# Settings specific to the account's payouts.
attr_reader :payouts
# Attribute for field settlement_timing
attr_reader :settlement_timing

def self.inner_class_types
@inner_class_types = { payouts: Payouts, settlement_timing: SettlementTiming }
end

def self.field_remappings
@field_remappings = {}
end
end

class UpdateParams < Stripe::RequestParams
class Payments < Stripe::RequestParams
class Payouts < Stripe::RequestParams
class Schedule < Stripe::RequestParams
# How frequently available funds are paid out. One of: `daily`, `manual`, `weekly`, or `monthly`. Default is `daily`.
attr_accessor :interval
# The days of the month when available funds are paid out, specified as an array of numbers between 1--31. Payouts nominally scheduled between the 29th and 31st of the month are instead sent on the last day of a shorter month. Required and applicable only if `interval` is `monthly`.
attr_accessor :monthly_payout_days
# The days of the week when available funds are paid out, specified as an array, e.g., [`monday`, `tuesday`]. Required and applicable only if `interval` is `weekly`.
attr_accessor :weekly_payout_days

def initialize(interval: nil, monthly_payout_days: nil, weekly_payout_days: nil)
@interval = interval
@monthly_payout_days = monthly_payout_days
@weekly_payout_days = weekly_payout_days
end
end
# The minimum balance amount to retain per currency after automatic payouts. Only funds that exceed these amounts are paid out. Learn more about the [minimum balances for automatic payouts](/payouts/minimum-balances-for-automatic-payouts).
attr_accessor :minimum_balance_by_currency
# Details on when funds from charges are available, and when they are paid out to an external account. For details, see our [Setting Bank and Debit Card Payouts](/connect/bank-transfers#payout-information) documentation.
attr_accessor :schedule
# The text that appears on the bank account statement for payouts. If not set, this defaults to the platform's bank descriptor as set in the Dashboard.
attr_accessor :statement_descriptor

def initialize(minimum_balance_by_currency: nil, schedule: nil, statement_descriptor: nil)
@minimum_balance_by_currency = minimum_balance_by_currency
@schedule = schedule
@statement_descriptor = statement_descriptor
end
end

class SettlementTiming < Stripe::RequestParams
# Change `delay_days` for this account, which determines the number of days charge funds are held before becoming available. The maximum value is 31. Passing an empty string to `delay_days_override` will return `delay_days` to the default, which is the lowest available value for the account. [Learn more about controlling delay days](/connect/manage-payout-schedule).
attr_accessor :delay_days_override

def initialize(delay_days_override: nil)
@delay_days_override = delay_days_override
end
end
# A Boolean indicating whether Stripe should try to reclaim negative balances from an attached bank account. For details, see [Understanding Connect Account Balances](/connect/account-balances).
attr_accessor :debit_negative_balances
# Settings specific to the account's payouts.
attr_accessor :payouts
# Settings related to the account's balance settlement timing.
attr_accessor :settlement_timing

def initialize(debit_negative_balances: nil, payouts: nil, settlement_timing: nil)
@debit_negative_balances = debit_negative_balances
@payouts = payouts
@settlement_timing = settlement_timing
end
end
# Specifies which fields in the response should be expanded.
attr_accessor :expand
# Settings that apply to the [Payments Balance](https://docs.stripe.com/api/balance).
attr_accessor :payments

def initialize(expand: nil, payments: nil)
@expand = expand
@payments = payments
end
end
# String representing the object's type. Objects of the same type share the same value.
attr_reader :object
# Attribute for field payments
attr_reader :payments

def self.inner_class_types
@inner_class_types = { payments: Payments }
end

def self.field_remappings
@field_remappings = {}
end
end
end
2 changes: 1 addition & 1 deletion lib/stripe/resources/billing/alert.rb
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ def initialize(customer: nil, type: nil)
attr_accessor :gte
# The [Billing Meter](/api/billing/meter) ID whose usage is monitored.
attr_accessor :meter
# Whether the alert should only fire only once, or once per billing cycle.
# Defines how the alert will behave.
attr_accessor :recurrence

def initialize(filters: nil, gte: nil, meter: nil, recurrence: nil)
Expand Down
14 changes: 12 additions & 2 deletions lib/stripe/resources/billing_portal/configuration.rb
Original file line number Diff line number Diff line change
Expand Up @@ -174,6 +174,8 @@ def self.field_remappings
attr_reader :proration_behavior
# Attribute for field schedule_at_period_end
attr_reader :schedule_at_period_end
# Determines how handle updates to trialing subscriptions. Valid values are `end_trial` and `continue_trial`. Defaults to a value of `end_trial` if you don't set it during creation.
attr_reader :trial_update_behavior

def self.inner_class_types
@inner_class_types = { products: Product, schedule_at_period_end: ScheduleAtPeriodEnd }
Expand Down Expand Up @@ -394,19 +396,23 @@ def initialize(conditions: nil)
attr_accessor :proration_behavior
# Setting to control when an update should be scheduled at the end of the period instead of applying immediately.
attr_accessor :schedule_at_period_end
# The behavior when updating a subscription that is trialing.
attr_accessor :trial_update_behavior

def initialize(
default_allowed_updates: nil,
enabled: nil,
products: nil,
proration_behavior: nil,
schedule_at_period_end: nil
schedule_at_period_end: nil,
trial_update_behavior: nil
)
@default_allowed_updates = default_allowed_updates
@enabled = enabled
@products = products
@proration_behavior = proration_behavior
@schedule_at_period_end = schedule_at_period_end
@trial_update_behavior = trial_update_behavior
end
end
# Information about updating the customer details in the portal.
Expand Down Expand Up @@ -614,19 +620,23 @@ def initialize(conditions: nil)
attr_accessor :proration_behavior
# Setting to control when an update should be scheduled at the end of the period instead of applying immediately.
attr_accessor :schedule_at_period_end
# The behavior when updating a subscription that is trialing.
attr_accessor :trial_update_behavior

def initialize(
default_allowed_updates: nil,
enabled: nil,
products: nil,
proration_behavior: nil,
schedule_at_period_end: nil
schedule_at_period_end: nil,
trial_update_behavior: nil
)
@default_allowed_updates = default_allowed_updates
@enabled = enabled
@products = products
@proration_behavior = proration_behavior
@schedule_at_period_end = schedule_at_period_end
@trial_update_behavior = trial_update_behavior
end
end
# Information about updating the customer details in the portal.
Expand Down
2 changes: 1 addition & 1 deletion lib/stripe/resources/card.rb
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ def self.field_remappings
attr_reader :allow_redisplay
# A set of available payout methods for this card. Only values from this set should be passed as the `method` when creating a payout.
attr_reader :available_payout_methods
# Card brand. Can be `American Express`, `Diners Club`, `Discover`, `Eftpos Australia`, `Girocard`, `JCB`, `MasterCard`, `UnionPay`, `Visa`, or `Unknown`.
# Card brand. Can be `American Express`, `Cartes Bancaires`, `Diners Club`, `Discover`, `Eftpos Australia`, `Girocard`, `JCB`, `MasterCard`, `UnionPay`, `Visa`, or `Unknown`.
attr_reader :brand
# 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.
attr_reader :country
Expand Down
Loading