Skip to content
Closed
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
1 change: 1 addition & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,7 @@ jobs:
- "3.11"
- "3.12"
- "3.13"
- "3.14"
- "pypy-3.7"
- "pypy-3.8"
- "pypy-3.9"
Expand Down
2 changes: 1 addition & 1 deletion API_VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3602014a6583f6c0fbfdde3c575839ac7d0b4e9c
3602014a6583f6c0fbfdde3c575839ac7d0b4e9c
84 changes: 63 additions & 21 deletions CHANGELOG.md

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion OPENAPI_VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v2141
v2141
18 changes: 18 additions & 0 deletions stripe/_charge.py
Original file line number Diff line number Diff line change
Expand Up @@ -1895,6 +1895,24 @@ class Payto(StripeObject):
The PayID alias for the bank account.
"""

class Payto(StripeObject):
bsb_number: Optional[str]
"""
Bank-State-Branch number of the bank account.
"""
last4: Optional[str]
"""
Last four digits of the bank account number.
"""
mandate: Optional[str]
"""
ID of the mandate used to make this payment.
"""
pay_id: Optional[str]
"""
The PayID alias for the bank account.
"""

class Pix(StripeObject):
bank_transaction_id: Optional[str]
"""
Expand Down
14 changes: 14 additions & 0 deletions stripe/_confirmation_token.py
Original file line number Diff line number Diff line change
Expand Up @@ -1301,6 +1301,20 @@ class Payto(StripeObject):
The PayID alias for the bank account.
"""

class Payto(StripeObject):
bsb_number: Optional[str]
"""
Bank-State-Branch number of the bank account.
"""
last4: Optional[str]
"""
Last four digits of the bank account number.
"""
pay_id: Optional[str]
"""
The PayID alias for the bank account.
"""

class Pix(StripeObject):
pass

Expand Down
2 changes: 1 addition & 1 deletion stripe/_invoice_item.py
Original file line number Diff line number Diff line change
Expand Up @@ -165,7 +165,7 @@ class LicenseFeeDetails(StripeObject):
"""

class PriceDetails(StripeObject):
price: str
price: ExpandableField["Price"]
"""
The ID of the price this item is associated with.
"""
Expand Down
2 changes: 1 addition & 1 deletion stripe/_invoice_line_item.py
Original file line number Diff line number Diff line change
Expand Up @@ -262,7 +262,7 @@ class LicenseFeeDetails(StripeObject):
"""

class PriceDetails(StripeObject):
price: str
price: ExpandableField["Price"]
"""
The ID of the price this item is associated with.
"""
Expand Down
53 changes: 53 additions & 0 deletions stripe/_mandate.py
Original file line number Diff line number Diff line change
Expand Up @@ -238,6 +238,59 @@ class Pix(StripeObject):
Start date of the mandate, in `YYYY-MM-DD`.
"""

class Payto(StripeObject):
amount: Optional[int]
"""
Amount that will be collected. It is required when `amount_type` is `fixed`.
"""
amount_type: Literal["fixed", "maximum"]
"""
The type of amount that will be collected. The amount charged must be exact or up to the value of `amount` param for `fixed` or `maximum` type respectively. Defaults to `maximum`.
"""
end_date: Optional[str]
"""
Date, in YYYY-MM-DD format, after which payments will not be collected. Defaults to no end date.
"""
payment_schedule: Literal[
"adhoc",
"annual",
"daily",
"fortnightly",
"monthly",
"quarterly",
"semi_annual",
"weekly",
]
"""
The periodicity at which payments will be collected. Defaults to `adhoc`.
"""
payments_per_period: Optional[int]
"""
The number of payments that will be made during a payment period. Defaults to 1 except for when `payment_schedule` is `adhoc`. In that case, it defaults to no limit.
"""
purpose: Optional[
Literal[
"dependant_support",
"government",
"loan",
"mortgage",
"other",
"pension",
"personal",
"retail",
"salary",
"tax",
"utility",
]
]
"""
The purpose for which payments are made. Has a default value based on your merchant category code.
"""
start_date: Optional[str]
"""
Date, in YYYY-MM-DD format, from which payments will be collected. Defaults to confirmation time.
"""

class RevolutPay(StripeObject):
pass

Expand Down
18 changes: 18 additions & 0 deletions stripe/_payment_attempt_record.py
Original file line number Diff line number Diff line change
Expand Up @@ -1610,6 +1610,24 @@ class Payto(StripeObject):
The PayID alias for the bank account.
"""

class Payto(StripeObject):
bsb_number: Optional[str]
"""
Bank-State-Branch number of the bank account.
"""
last4: Optional[str]
"""
Last four digits of the bank account number.
"""
mandate: Optional[str]
"""
ID of the mandate used to make this payment.
"""
pay_id: Optional[str]
"""
The PayID alias for the bank account.
"""

class Pix(StripeObject):
bank_transaction_id: Optional[str]
"""
Expand Down
67 changes: 66 additions & 1 deletion stripe/_payment_intent.py
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,7 @@ class Tip(StripeObject):
"""
line_items: Optional[ListObject["PaymentIntentAmountDetailsLineItem"]]
"""
A list of line items, each containing information about a product in the PaymentIntent. There is a maximum of 100 line items.
A list of line items, each containing information about a product in the PaymentIntent. There is a maximum of 200 line items.
"""
shipping: Optional[Shipping]
tax: Optional[Tax]
Expand Down Expand Up @@ -2853,6 +2853,71 @@ class MandateOptions(StripeObject):
"""
_inner_class_types = {"mandate_options": MandateOptions}

class Payto(StripeObject):
class MandateOptions(StripeObject):
amount: Optional[int]
"""
Amount that will be collected. It is required when `amount_type` is `fixed`.
"""
amount_type: Optional[Literal["fixed", "maximum"]]
"""
The type of amount that will be collected. The amount charged must be exact or up to the value of `amount` param for `fixed` or `maximum` type respectively. Defaults to `maximum`.
"""
end_date: Optional[str]
"""
Date, in YYYY-MM-DD format, after which payments will not be collected. Defaults to no end date.
"""
payment_schedule: Optional[
Literal[
"adhoc",
"annual",
"daily",
"fortnightly",
"monthly",
"quarterly",
"semi_annual",
"weekly",
]
]
"""
The periodicity at which payments will be collected. Defaults to `adhoc`.
"""
payments_per_period: Optional[int]
"""
The number of payments that will be made during a payment period. Defaults to 1 except for when `payment_schedule` is `adhoc`. In that case, it defaults to no limit.
"""
purpose: Optional[
Literal[
"dependant_support",
"government",
"loan",
"mortgage",
"other",
"pension",
"personal",
"retail",
"salary",
"tax",
"utility",
]
]
"""
The purpose for which payments are made. Has a default value based on your merchant category code.
"""

mandate_options: Optional[MandateOptions]
setup_future_usage: Optional[Literal["none", "off_session"]]
"""
Indicates that you intend to make future payments with this PaymentIntent's payment method.

If you provide a Customer with the PaymentIntent, you can use this parameter to [attach the payment method](https://docs.stripe.com/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](https://docs.stripe.com/api/payment_methods/attach) the payment method to a Customer after the transaction completes.

If the payment method is `card_present` and isn't a digital wallet, Stripe creates and attaches a [generated_card](https://docs.stripe.com/api/charges/object#charge_object-payment_method_details-card_present-generated_card) payment method representing the card to the Customer instead.

When processing card payments, Stripe uses `setup_future_usage` to help you comply with regional legislation and network rules, such as [SCA](https://docs.stripe.com/strong-customer-authentication).
"""
_inner_class_types = {"mandate_options": MandateOptions}

class Pix(StripeObject):
class MandateOptions(StripeObject):
amount: Optional[int]
Expand Down
14 changes: 14 additions & 0 deletions stripe/_payment_method.py
Original file line number Diff line number Diff line change
Expand Up @@ -1275,6 +1275,20 @@ class Payto(StripeObject):
The PayID alias for the bank account.
"""

class Payto(StripeObject):
bsb_number: Optional[str]
"""
Bank-State-Branch number of the bank account.
"""
last4: Optional[str]
"""
Last four digits of the bank account number.
"""
pay_id: Optional[str]
"""
The PayID alias for the bank account.
"""

class Pix(StripeObject):
pass

Expand Down
18 changes: 18 additions & 0 deletions stripe/_payment_record.py
Original file line number Diff line number Diff line change
Expand Up @@ -1626,6 +1626,24 @@ class Payto(StripeObject):
The PayID alias for the bank account.
"""

class Payto(StripeObject):
bsb_number: Optional[str]
"""
Bank-State-Branch number of the bank account.
"""
last4: Optional[str]
"""
Last four digits of the bank account number.
"""
mandate: Optional[str]
"""
ID of the mandate used to make this payment.
"""
pay_id: Optional[str]
"""
The PayID alias for the bank account.
"""

class Pix(StripeObject):
bank_transaction_id: Optional[str]
"""
Expand Down
59 changes: 59 additions & 0 deletions stripe/_setup_intent.py
Original file line number Diff line number Diff line change
Expand Up @@ -749,6 +749,65 @@ class MandateOptions(StripeObject):
mandate_options: Optional[MandateOptions]
_inner_class_types = {"mandate_options": MandateOptions}

class Payto(StripeObject):
class MandateOptions(StripeObject):
amount: Optional[int]
"""
Amount that will be collected. It is required when `amount_type` is `fixed`.
"""
amount_type: Optional[Literal["fixed", "maximum"]]
"""
The type of amount that will be collected. The amount charged must be exact or up to the value of `amount` param for `fixed` or `maximum` type respectively. Defaults to `maximum`.
"""
end_date: Optional[str]
"""
Date, in YYYY-MM-DD format, after which payments will not be collected. Defaults to no end date.
"""
payment_schedule: Optional[
Literal[
"adhoc",
"annual",
"daily",
"fortnightly",
"monthly",
"quarterly",
"semi_annual",
"weekly",
]
]
"""
The periodicity at which payments will be collected. Defaults to `adhoc`.
"""
payments_per_period: Optional[int]
"""
The number of payments that will be made during a payment period. Defaults to 1 except for when `payment_schedule` is `adhoc`. In that case, it defaults to no limit.
"""
purpose: Optional[
Literal[
"dependant_support",
"government",
"loan",
"mortgage",
"other",
"pension",
"personal",
"retail",
"salary",
"tax",
"utility",
]
]
"""
The purpose for which payments are made. Has a default value based on your merchant category code.
"""
start_date: Optional[str]
"""
Date, in YYYY-MM-DD format, from which payments will be collected. Defaults to confirmation time.
"""

mandate_options: Optional[MandateOptions]
_inner_class_types = {"mandate_options": MandateOptions}

class SepaDebit(StripeObject):
class MandateOptions(StripeObject):
reference_prefix: Optional[str]
Expand Down
2 changes: 1 addition & 1 deletion stripe/params/_payment_intent_capture_params.py
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ class PaymentIntentCaptureParamsAmountDetails(TypedDict):
"Literal['']|List[PaymentIntentCaptureParamsAmountDetailsLineItem]"
]
"""
A list of line items, each containing information about a product in the PaymentIntent. There is a maximum of 100 line items.
A list of line items, each containing information about a product in the PaymentIntent. There is a maximum of 200 line items.
"""
shipping: NotRequired[
"Literal['']|PaymentIntentCaptureParamsAmountDetailsShipping"
Expand Down
Loading
Loading