Skip to content
Open
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 CODEGEN_VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
9aa5ee4ed2b929f65b7fbf7c341f938682888500
9e9ef9ec9df30a59ccafb74c27b81311fa2896d5
2 changes: 1 addition & 1 deletion OPENAPI_VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v2252
v2276
8 changes: 8 additions & 0 deletions stripe/_account.py
Original file line number Diff line number Diff line change
Expand Up @@ -262,6 +262,10 @@ class Capabilities(StripeObject):
"""
The status of the Billie capability of the account, or whether the account can directly process Billie payments.
"""
bizum_payments: Optional[Literal["active", "inactive", "pending"]]
"""
The status of the Bizum capability of the account, or whether the account can directly process Bizum payments.
"""
blik_payments: Optional[Literal["active", "inactive", "pending"]]
"""
The status of the blik payments capability of the account, or whether the account can directly process blik charges.
Expand Down Expand Up @@ -436,6 +440,10 @@ class Capabilities(StripeObject):
"""
The status of the Satispay capability of the account, or whether the account can directly process Satispay payments.
"""
scalapay_payments: Optional[Literal["active", "inactive", "pending"]]
"""
The status of the Scalapay capability of the account, or whether the account can directly process Scalapay payments.
"""
sepa_bank_transfer_payments: Optional[
Literal["active", "inactive", "pending"]
]
Expand Down
2 changes: 1 addition & 1 deletion stripe/_api_version.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# -*- coding: utf-8 -*-
# File generated from our OpenAPI spec
class _ApiVersion:
CURRENT = "2026-04-22.dahlia"
CURRENT = "2026-05-27.dahlia"
CURRENT_MAJOR = "dahlia"
45 changes: 44 additions & 1 deletion stripe/_balance_settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,20 @@ class BalanceSettings(

class Payments(StripeObject):
class Payouts(StripeObject):
class AutomaticTransferRulesByCurrency(StripeObject):
payout_method: str
"""
The ID of the FinancialAccount that funds will be transferred to during automatic transfers.
"""
transfer_up_to_amount: Optional[int]
"""
The maximum amount in minor units to transfer to the FinancialAccount. Only applicable when `type` is `transfer_up_to_amount`.
"""
type: Literal["transfer_all", "transfer_up_to_amount"]
"""
The type of automatic transfer rule.
"""

class Schedule(StripeObject):
interval: Optional[
Literal["daily", "manual", "monthly", "weekly"]
Expand All @@ -53,6 +67,12 @@ class Schedule(StripeObject):
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.
"""

automatic_transfer_rules_by_currency: Optional[
UntypedStripeObject[List[AutomaticTransferRulesByCurrency]]
]
"""
Configures per-currency rules for automatically transferring funds from the payments balance to a FinancialAccount.
"""
minimum_balance_by_currency: Optional[UntypedStripeObject[int]]
"""
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](https://docs.stripe.com/payouts/minimum-balances-for-automatic-payouts).
Expand All @@ -69,9 +89,27 @@ class Schedule(StripeObject):
"""
Whether the funds in this account can be paid out.
"""
_inner_class_types = {"schedule": Schedule}
_inner_class_types = {
"automatic_transfer_rules_by_currency": AutomaticTransferRulesByCurrency,
"schedule": Schedule,
}
_inner_class_dicts = ["automatic_transfer_rules_by_currency"]

class SettlementTiming(StripeObject):
class StartOfDay(StripeObject):
hour: int
"""
Hour at which the customized start of day begins according to the given timezone. Must be a [supported customized start of day hour](https://docs.stripe.com/connect/customized-start-of-day#available-timezones-and-cutoffs).
"""
minutes: int
"""
Minutes at which the customized start of day begins according to the given timezone. Must be either 0 or 30.
"""
timezone: str
"""
Timezone for the customized start of day. Must be a [supported customized start of day timezone](https://docs.stripe.com/connect/customized-start-of-day#available-timezones-and-cutoffs).
"""

delay_days: int
"""
The number of days charge funds are held before becoming available.
Expand All @@ -80,6 +118,11 @@ class SettlementTiming(StripeObject):
"""
The number of days charge funds are held before becoming available. If present, overrides the default, or minimum available, for the account.
"""
start_of_day: Optional[StartOfDay]
"""
Customized start of day configuration for automatic payouts to group and send payments in local timezones with a customized day starting time. For details, see our [Customized start of day](https://docs.stripe.com/connect/customized-start-of-day) documentation.
"""
_inner_class_types = {"start_of_day": StartOfDay}

debit_negative_balances: Optional[bool]
"""
Expand Down
21 changes: 20 additions & 1 deletion stripe/_charge.py
Original file line number Diff line number Diff line change
Expand Up @@ -456,6 +456,12 @@ class Billie(StripeObject):
The Billie transaction ID associated with this payment.
"""

class Bizum(StripeObject):
transaction_id: Optional[str]
"""
The Bizum transaction ID associated with this payment.
"""

class Blik(StripeObject):
buyer_id: Optional[str]
"""
Expand Down Expand Up @@ -1856,6 +1862,12 @@ class Satispay(StripeObject):
The Satispay transaction ID associated with this payment.
"""

class Scalapay(StripeObject):
transaction_id: Optional[str]
"""
The Scalapay transaction ID associated with this payment.
"""

class SepaCreditTransfer(StripeObject):
bank_name: Optional[str]
"""
Expand Down Expand Up @@ -1966,7 +1978,10 @@ class Swish(StripeObject):
"""

class Twint(StripeObject):
pass
mandate: Optional[str]
"""
ID of the multi use Mandate generated by the PaymentIntent
"""

class Upi(StripeObject):
vpa: Optional[str]
Expand Down Expand Up @@ -2048,6 +2063,7 @@ class Zip(StripeObject):
bacs_debit: Optional[BacsDebit]
bancontact: Optional[Bancontact]
billie: Optional[Billie]
bizum: Optional[Bizum]
blik: Optional[Blik]
boleto: Optional[Boleto]
card: Optional[Card]
Expand Down Expand Up @@ -2083,6 +2099,7 @@ class Zip(StripeObject):
revolut_pay: Optional[RevolutPay]
samsung_pay: Optional[SamsungPay]
satispay: Optional[Satispay]
scalapay: Optional[Scalapay]
sepa_credit_transfer: Optional[SepaCreditTransfer]
sepa_debit: Optional[SepaDebit]
sofort: Optional[Sofort]
Expand Down Expand Up @@ -2114,6 +2131,7 @@ class Zip(StripeObject):
"bacs_debit": BacsDebit,
"bancontact": Bancontact,
"billie": Billie,
"bizum": Bizum,
"blik": Blik,
"boleto": Boleto,
"card": Card,
Expand Down Expand Up @@ -2149,6 +2167,7 @@ class Zip(StripeObject):
"revolut_pay": RevolutPay,
"samsung_pay": SamsungPay,
"satispay": Satispay,
"scalapay": Scalapay,
"sepa_credit_transfer": SepaCreditTransfer,
"sepa_debit": SepaDebit,
"sofort": Sofort,
Expand Down
12 changes: 12 additions & 0 deletions stripe/_confirmation_token.py
Original file line number Diff line number Diff line change
Expand Up @@ -218,6 +218,9 @@ class Address(StripeObject):
"""
_inner_class_types = {"address": Address}

class Bizum(StripeObject):
pass

class Blik(StripeObject):
pass

Expand Down Expand Up @@ -1289,6 +1292,9 @@ class SamsungPay(StripeObject):
class Satispay(StripeObject):
pass

class Scalapay(StripeObject):
pass

class SepaDebit(StripeObject):
class GeneratedFrom(StripeObject):
charge: Optional[ExpandableField["Charge"]]
Expand Down Expand Up @@ -1459,6 +1465,7 @@ class Zip(StripeObject):
bancontact: Optional[Bancontact]
billie: Optional[Billie]
billing_details: BillingDetails
bizum: Optional[Bizum]
blik: Optional[Blik]
boleto: Optional[Boleto]
card: Optional[Card]
Expand Down Expand Up @@ -1499,6 +1506,7 @@ class Zip(StripeObject):
revolut_pay: Optional[RevolutPay]
samsung_pay: Optional[SamsungPay]
satispay: Optional[Satispay]
scalapay: Optional[Scalapay]
sepa_debit: Optional[SepaDebit]
sofort: Optional[Sofort]
sunbit: Optional[Sunbit]
Expand All @@ -1515,6 +1523,7 @@ class Zip(StripeObject):
"bacs_debit",
"bancontact",
"billie",
"bizum",
"blik",
"boleto",
"card",
Expand Down Expand Up @@ -1551,6 +1560,7 @@ class Zip(StripeObject):
"revolut_pay",
"samsung_pay",
"satispay",
"scalapay",
"sepa_debit",
"sofort",
"sunbit",
Expand Down Expand Up @@ -1580,6 +1590,7 @@ class Zip(StripeObject):
"bancontact": Bancontact,
"billie": Billie,
"billing_details": BillingDetails,
"bizum": Bizum,
"blik": Blik,
"boleto": Boleto,
"card": Card,
Expand Down Expand Up @@ -1615,6 +1626,7 @@ class Zip(StripeObject):
"revolut_pay": RevolutPay,
"samsung_pay": SamsungPay,
"satispay": Satispay,
"scalapay": Scalapay,
"sepa_debit": SepaDebit,
"sofort": Sofort,
"sunbit": Sunbit,
Expand Down
4 changes: 2 additions & 2 deletions stripe/_discount.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ class Source(StripeObject):

checkout_session: Optional[str]
"""
The Checkout session that this coupon is applied to, if it is applied to a particular session in payment mode. Will not be present for subscription mode.
The Checkout session that this coupon is applied to, if it is applied to a particular session in payment mode. Not present for subscription mode.
"""
customer: Optional[ExpandableField["Customer"]]
"""
Expand All @@ -53,7 +53,7 @@ class Source(StripeObject):
"""
id: str
"""
The ID of the discount object. Discounts cannot be fetched by ID. Use `expand[]=discounts` in API calls to expand discount IDs in an array.
The ID of the discount object. Discounts can't be fetched by ID. Use `expand[]=discounts` in API calls to expand discount IDs in an array.
"""
invoice: Optional[str]
"""
Expand Down
7 changes: 7 additions & 0 deletions stripe/_invoice.py
Original file line number Diff line number Diff line change
Expand Up @@ -539,6 +539,7 @@ class LastFinalizationError(StripeObject):
"payment_method_invalid_parameter",
"payment_method_invalid_parameter_testmode",
"payment_method_microdeposit_failed",
"payment_method_microdeposit_processing_error",
"payment_method_microdeposit_verification_amounts_invalid",
"payment_method_microdeposit_verification_amounts_mismatch",
"payment_method_microdeposit_verification_attempts_exceeded",
Expand Down Expand Up @@ -579,6 +580,7 @@ class LastFinalizationError(StripeObject):
"setup_intent_unexpected_state",
"shipping_address_invalid",
"shipping_calculation_failed",
"siret_invalid",
"sku_inactive",
"state_unsupported",
"status_transition_invalid",
Expand Down Expand Up @@ -1018,6 +1020,7 @@ class Filters(StripeObject):
"sepa_debit",
"sofort",
"swish",
"twint",
"upi",
"us_bank_account",
"wechat_pay",
Expand Down Expand Up @@ -1304,6 +1307,10 @@ class TaxRateDetails(StripeObject):
"""
The amount, in cents (or local equivalent), that was paid.
"""
amount_paid_off_stripe: Optional[int]
"""
Amount, in cents (or local equivalent), that was paid on the invoice outside of Stripe.
"""
amount_remaining: int
"""
The difference between amount_due and amount_paid, in cents (or local equivalent).
Expand Down
33 changes: 32 additions & 1 deletion stripe/_invoice_item.py
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,30 @@ class PriceDetails(StripeObject):
_field_encodings = {"unit_amount_decimal": "decimal_string"}

class ProrationDetails(StripeObject):
class CreditedItems(StripeObject):
class InvoiceLineItemDetails(StripeObject):
invoice: str
"""
The invoice id for the debited line item(s).
"""
invoice_line_items: List[str]
"""
IDs of the debited invoice line item(s) on the invoice that correspond to the credit proration.
"""

invoice_item: Optional[str]
"""
When `type` is `invoice_item`, the invoice item id for the debited invoice item corresponding to this credit proration.
"""
invoice_line_item_details: Optional[InvoiceLineItemDetails]
type: Literal["invoice_item", "invoice_line_items"]
"""
Whether the credit references a pending invoice item or one or more invoice line items on an invoice.
"""
_inner_class_types = {
"invoice_line_item_details": InvoiceLineItemDetails,
}

class DiscountAmount(StripeObject):
amount: int
"""
Expand All @@ -118,11 +142,18 @@ class DiscountAmount(StripeObject):
The discount that was applied to get this discount amount.
"""

credited_items: Optional[CreditedItems]
"""
For a credit proration, links to the debit invoice line items or invoice item that the credit applies to.
"""
discount_amounts: List[DiscountAmount]
"""
Discount amounts applied when the proration was created.
"""
_inner_class_types = {"discount_amounts": DiscountAmount}
_inner_class_types = {
"credited_items": CreditedItems,
"discount_amounts": DiscountAmount,
}

amount: int
"""
Expand Down
5 changes: 5 additions & 0 deletions stripe/_mandate.py
Original file line number Diff line number Diff line change
Expand Up @@ -248,6 +248,9 @@ class SepaDebit(StripeObject):
The URL of the mandate. This URL generally contains sensitive information about the customer and should be shared with them exclusively.
"""

class Twint(StripeObject):
pass

class Upi(StripeObject):
amount: Optional[int]
"""
Expand Down Expand Up @@ -289,6 +292,7 @@ class UsBankAccount(StripeObject):
pix: Optional[Pix]
revolut_pay: Optional[RevolutPay]
sepa_debit: Optional[SepaDebit]
twint: Optional[Twint]
type: str
"""
This mandate corresponds with a specific payment method type. The `payment_method_details` includes an additional hash with the same name and contains mandate information that's specific to that payment method.
Expand All @@ -313,6 +317,7 @@ class UsBankAccount(StripeObject):
"pix": Pix,
"revolut_pay": RevolutPay,
"sepa_debit": SepaDebit,
"twint": Twint,
"upi": Upi,
"us_bank_account": UsBankAccount,
}
Expand Down
Loading
Loading