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-06-30.preview
2025-07-30.preview
37 changes: 37 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,43 @@
* Add support for new value `xx` on enums `v2.core.AccountCreateParams.configuration.customer.shipping.address.country`, `v2.core.AccountCreateParams.configuration.merchant.support.address.country`, `v2.core.AccountCreateParams.identity.business_details.address.country`, `v2.core.AccountCreateParams.identity.business_details.script_addresses.kana.country`, `v2.core.AccountCreateParams.identity.business_details.script_addresses.kanji.country`, `v2.core.AccountCreateParams.identity.country`, `v2.core.AccountCreateParams.identity.individual.additional_addresses[].country`, `v2.core.AccountCreateParams.identity.individual.address.country`, `v2.core.AccountCreateParams.identity.individual.script_addresses.kana.country`, `v2.core.AccountCreateParams.identity.individual.script_addresses.kanji.country`, `v2.core.AccountUpdateParams.configuration.customer.shipping.address.country`, `v2.core.AccountUpdateParams.configuration.merchant.support.address.country`, `v2.core.AccountUpdateParams.identity.business_details.address.country`, `v2.core.AccountUpdateParams.identity.business_details.script_addresses.kana.country`, `v2.core.AccountUpdateParams.identity.business_details.script_addresses.kanji.country`, `v2.core.AccountUpdateParams.identity.country`, `v2.core.AccountUpdateParams.identity.individual.additional_addresses[].country`, `v2.core.AccountUpdateParams.identity.individual.address.country`, `v2.core.AccountUpdateParams.identity.individual.script_addresses.kana.country`, `v2.core.AccountUpdateParams.identity.individual.script_addresses.kanji.country`, `v2.core.PersonCreateParams.additional_addresses[].country`, `v2.core.PersonCreateParams.address.country`, `v2.core.PersonCreateParams.script_addresses.kana.country`, `v2.core.PersonCreateParams.script_addresses.kanji.country`, `v2.core.PersonUpdateParams.additional_addresses[].country`, `v2.core.PersonUpdateParams.address.country`, `v2.core.PersonUpdateParams.script_addresses.kana.country`, and `v2.core.PersonUpdateParams.script_addresses.kanji.country`
* Add support for new value `xx` on enums `v2.core.AccountCreateParams.identity.individual.nationalities`, `v2.core.AccountUpdateParams.identity.individual.nationalities`, `v2.core.PersonCreateParams.nationalities`, and `v2.core.PersonUpdateParams.nationalities`

## 29.3.0 - 2025-07-01
* [#2013](https://github.com/stripe/stripe-java/pull/2013) Update generated code
* Add support for `migrate` method on resource `Subscription`
* Add support for `collect_payment_method` and `confirm_payment_intent` methods on resource `terminal.Reader`
* Add support for `cryptoPayments` on `Account.capabilities`, `AccountCreateParams.capabilities`, and `AccountUpdateParams.capabilities`
* Add support for `proofOfAddress` on `AccountCreateParams.documents` and `AccountUpdateParams.documents`
* Add support for `monthlyPayoutDays` and `weeklyPayoutDays` on `Account.settings.payouts.schedule`, `AccountCreateParams.settings.payouts.schedule`, and `AccountUpdateParams.settings.payouts.schedule`
* Add support for `crypto` on `Charge.payment_method_details`, `ConfirmationToken.payment_method_preview`, `ConfirmationTokenCreateParams.payment_method_data`, `PaymentIntent.payment_method_options`, `PaymentIntentConfirmParams.payment_method_data`, `PaymentIntentConfirmParams.payment_method_options`, `PaymentIntentCreateParams.payment_method_data`, `PaymentIntentCreateParams.payment_method_options`, `PaymentIntentUpdateParams.payment_method_data`, `PaymentIntentUpdateParams.payment_method_options`, `PaymentMethodCreateParams`, `PaymentMethod`, `SetupIntentConfirmParams.payment_method_data`, `SetupIntentCreateParams.payment_method_data`, and `SetupIntentUpdateParams.payment_method_data`
* Change type of `Charge.payment_method_details.card.installments.plan.type`, `ConfirmationToken.payment_method_options.card.installments.plan.type`, `ConfirmationTokenCreateParams.payment_method_options.card.installments.plan.type`, `InvoiceCreateParams.payment_settings.payment_method_options.card.installments.plan.type`, `InvoiceUpdateParams.payment_settings.payment_method_options.card.installments.plan.type`, `PaymentIntent.payment_method_options.card.installments.available_plans[].type`, `PaymentIntent.payment_method_options.card.installments.plan.type`, `PaymentIntentConfirmParams.payment_method_options.card.installments.plan.type`, `PaymentIntentCreateParams.payment_method_options.card.installments.plan.type`, and `PaymentIntentUpdateParams.payment_method_options.card.installments.plan.type` from `literal('fixed_count')` to `enum('bonus'|'fixed_count'|'revolving')`
* Add support for `subscriptions` on `PaymentIntentConfirmParams.payment_method_options.klarna`, `PaymentIntentCreateParams.payment_method_options.klarna`, `PaymentIntentUpdateParams.payment_method_options.klarna`, and `checkout.SessionCreateParams.payment_method_options.klarna`
* Add support for new value `crypto` on enum `checkout.SessionCreateParams.paymentMethodTypes`
* Add support for `billingMode` on `InvoiceCreatePreviewParams.schedule_details`, `InvoiceCreatePreviewParams.subscription_details`, `Quote.subscription_data`, `QuoteCreateParams.subscription_data`, `SubscriptionCreateParams`, `SubscriptionScheduleCreateParams`, `SubscriptionSchedule`, `Subscription`, and `checkout.SessionCreateParams.subscription_data`
* Add support for new value `buut` on enums `ConfirmationTokenCreateParams.payment_method_data.ideal.bank`, `PaymentIntentConfirmParams.payment_method_data.ideal.bank`, `PaymentIntentCreateParams.payment_method_data.ideal.bank`, `PaymentIntentUpdateParams.payment_method_data.ideal.bank`, `PaymentMethodCreateParams.ideal.bank`, `SetupIntentConfirmParams.payment_method_data.ideal.bank`, `SetupIntentCreateParams.payment_method_data.ideal.bank`, and `SetupIntentUpdateParams.payment_method_data.ideal.bank`
* Add support for new value `crypto` on enums `ConfirmationTokenCreateParams.payment_method_data.type`, `PaymentIntentConfirmParams.payment_method_data.type`, `PaymentIntentCreateParams.payment_method_data.type`, `PaymentIntentUpdateParams.payment_method_data.type`, `SetupIntentConfirmParams.payment_method_data.type`, `SetupIntentCreateParams.payment_method_data.type`, and `SetupIntentUpdateParams.payment_method_data.type`
* Add support for new value `crypto` on enums `CustomerListPaymentMethodsParams.type`, `PaymentMethodCreateParams.type`, and `PaymentMethodListParams.type`
* Change type of `Dispute.enhancedEligibilityTypes` from `literal('visa_compelling_evidence_3')` to `enum('visa_compelling_evidence_3'|'visa_compliance')`
* Add support for `relatedPerson` on `identity.VerificationSessionCreateParams` and `identity.VerificationSession`
* Add support for `matching` on `identity.VerificationSession.options`
* Add support for new value `crypto` on enums `InvoiceCreateParams.payment_settings.paymentMethodTypes`, `InvoiceUpdateParams.payment_settings.paymentMethodTypes`, `SubscriptionCreateParams.payment_settings.paymentMethodTypes`, and `SubscriptionUpdateParams.payment_settings.paymentMethodTypes`
* Add support for `klarna` on `Mandate.payment_method_details`, `SetupIntent.payment_method_options`, `SetupIntentConfirmParams.payment_method_options`, `SetupIntentCreateParams.payment_method_options`, and `SetupIntentUpdateParams.payment_method_options`
* Add support for `onDemand` on `PaymentIntentConfirmParams.payment_method_options.klarna`, `PaymentIntentCreateParams.payment_method_options.klarna`, and `PaymentIntentUpdateParams.payment_method_options.klarna`
* Change type of `PaymentIntent.payment_method_options.klarna.setupFutureUsage`, `PaymentIntentConfirmParams.payment_method_options.klarna.setupFutureUsage`, `PaymentIntentCreateParams.payment_method_options.klarna.setupFutureUsage`, and `PaymentIntentUpdateParams.payment_method_options.klarna.setupFutureUsage` from `literal('none')` to `enum('none'|'off_session'|'on_session')`
* Add support for `ua` on `tax.Registration.country_options` and `tax.RegistrationCreateParams.country_options`
* Change type of `terminal.LocationUpdateParams.displayName` from `string` to `emptyable(string)`
* Add support for `collectPaymentMethod` and `confirmPaymentIntent` on `terminal.Reader.action`
* Add support for `status` on `treasury.FinancialAccountListParams`
* Add support for new value `terminal.reader.action_updated` on enums `WebhookEndpointCreateParams.enabledEvents` and `WebhookEndpointUpdateParams.enabledEvents`
* Add support for new value `2025-06-30.basil` on enum `WebhookEndpointCreateParams.apiVersion`
* Add support for snapshot event `terminal.reader.action_updated` with resource `terminal.Reader`
* [#2023](https://github.com/stripe/stripe-java/pull/2023) Specify nexusUrl in deploy.gradle
* [#2020](https://github.com/stripe/stripe-java/pull/2020) Update snapshot endpoint in deploy.gradle
* [#2019](https://github.com/stripe/stripe-java/pull/2019) Update Sonatype endpoints in deploy.gradle
* [#2018](https://github.com/stripe/stripe-java/pull/2018) Link to the /changelog page instead of /upgrades
* [#2015](https://github.com/stripe/stripe-java/pull/2015) Revert "Updated StripeClient snippets with v1 namespace in Readme.md"
* [#2014](https://github.com/stripe/stripe-java/pull/2014) Updated StripeClient snippets with v1 namespace in Readme.md
* [#1987](https://github.com/stripe/stripe-java/pull/1987) Include Java versions 21, 22, 23, 24 in CI

## 29.3.0-beta.3 - 2025-06-26
No changes in this release

Expand Down
2 changes: 1 addition & 1 deletion OPENAPI_VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v1819
v1868
2 changes: 1 addition & 1 deletion src/main/java/com/stripe/ApiVersion.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,5 @@
package com.stripe;

final class ApiVersion {
public static final String CURRENT = "2025-06-30.preview";
public static final String CURRENT = "2025-07-30.preview";
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,10 @@
import lombok.Setter;

@Getter
public final class V2CoreAccountLinkCompletedEvent extends Event {
/** Data for the v2.core.account_link.completed event. */
public final class V2CoreAccountLinkReturnedEvent extends Event {
/** Data for the v2.core.account_link.returned event. */
@SerializedName("data")
V2CoreAccountLinkCompletedEvent.EventData data;
V2CoreAccountLinkReturnedEvent.EventData data;

@Getter
@Setter
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,18 @@
import com.google.gson.annotations.SerializedName;
import com.stripe.exception.StripeException;
import com.stripe.model.v2.Event;
import com.stripe.model.v2.payments.OffSessionPayment;
import com.stripe.model.v2.moneymanagement.PayoutMethod;
import lombok.Getter;

@Getter
public final class V2OffSessionPaymentRequiresCaptureEvent extends Event {
public final class V2MoneyManagementPayoutMethodUpdatedEvent extends Event {
@SerializedName("related_object")

/** Object containing the reference to API resource relevant to the event. */
RelatedObject relatedObject;

/** Retrieves the related object from the API. Make an API request on every call. */
public OffSessionPayment fetchRelatedObject() throws StripeException {
return (OffSessionPayment) super.fetchRelatedObject(this.relatedObject);
public PayoutMethod fetchRelatedObject() throws StripeException {
return (PayoutMethod) super.fetchRelatedObject(this.relatedObject);
}
}
34 changes: 17 additions & 17 deletions src/main/java/com/stripe/model/Account.java
Original file line number Diff line number Diff line change
Expand Up @@ -315,10 +315,10 @@ public static Account create(AccountCreateParams params, RequestOptions options)
*
* <p>Test-mode accounts can be deleted at any time.
*
* <p>Live-mode accounts where Stripe is responsible for negative account balances cannot be
* deleted, which includes Standard accounts. Live-mode accounts where your platform is liable for
* negative account balances, which includes Custom and Express accounts, can be deleted when all
* <a href="https://stripe.com/api/balance/balance_object">balances</a> are zero.
* <p>Live-mode accounts that have access to the standard dashboard and Stripe is responsible for
* negative account balances cannot be deleted, which includes Standard accounts. All other
* Live-mode accounts, can be deleted when all <a
* href="https://stripe.com/api/balance/balance_object">balances</a> are zero.
*
* <p>If you want to delete your own account, use the <a
* href="https://dashboard.stripe.com/settings/account">account information tab in your account
Expand All @@ -333,10 +333,10 @@ public Account delete() throws StripeException {
*
* <p>Test-mode accounts can be deleted at any time.
*
* <p>Live-mode accounts where Stripe is responsible for negative account balances cannot be
* deleted, which includes Standard accounts. Live-mode accounts where your platform is liable for
* negative account balances, which includes Custom and Express accounts, can be deleted when all
* <a href="https://stripe.com/api/balance/balance_object">balances</a> are zero.
* <p>Live-mode accounts that have access to the standard dashboard and Stripe is responsible for
* negative account balances cannot be deleted, which includes Standard accounts. All other
* Live-mode accounts, can be deleted when all <a
* href="https://stripe.com/api/balance/balance_object">balances</a> are zero.
*
* <p>If you want to delete your own account, use the <a
* href="https://dashboard.stripe.com/settings/account">account information tab in your account
Expand All @@ -351,10 +351,10 @@ public Account delete(RequestOptions options) throws StripeException {
*
* <p>Test-mode accounts can be deleted at any time.
*
* <p>Live-mode accounts where Stripe is responsible for negative account balances cannot be
* deleted, which includes Standard accounts. Live-mode accounts where your platform is liable for
* negative account balances, which includes Custom and Express accounts, can be deleted when all
* <a href="https://stripe.com/api/balance/balance_object">balances</a> are zero.
* <p>Live-mode accounts that have access to the standard dashboard and Stripe is responsible for
* negative account balances cannot be deleted, which includes Standard accounts. All other
* Live-mode accounts, can be deleted when all <a
* href="https://stripe.com/api/balance/balance_object">balances</a> are zero.
*
* <p>If you want to delete your own account, use the <a
* href="https://dashboard.stripe.com/settings/account">account information tab in your account
Expand All @@ -369,10 +369,10 @@ public Account delete(Map<String, Object> params) throws StripeException {
*
* <p>Test-mode accounts can be deleted at any time.
*
* <p>Live-mode accounts where Stripe is responsible for negative account balances cannot be
* deleted, which includes Standard accounts. Live-mode accounts where your platform is liable for
* negative account balances, which includes Custom and Express accounts, can be deleted when all
* <a href="https://stripe.com/api/balance/balance_object">balances</a> are zero.
* <p>Live-mode accounts that have access to the standard dashboard and Stripe is responsible for
* negative account balances cannot be deleted, which includes Standard accounts. All other
* Live-mode accounts, can be deleted when all <a
* href="https://stripe.com/api/balance/balance_object">balances</a> are zero.
*
* <p>If you want to delete your own account, use the <a
* href="https://dashboard.stripe.com/settings/account">account information tab in your account
Expand Down Expand Up @@ -758,7 +758,7 @@ public static class BusinessProfile extends StripeObject {
@SerializedName("mcc")
String mcc;

/** Whether the business is a minority-owned, women-owned, and/or LGBTQI+-owned business. */
/** Whether the business is a minority-owned, women-owned, and/or LGBTQI+ -owned business. */
@SerializedName("minority_owned_business_designation")
List<String> minorityOwnedBusinessDesignation;

Expand Down
55 changes: 55 additions & 0 deletions src/main/java/com/stripe/model/AccountSession.java
Original file line number Diff line number Diff line change
Expand Up @@ -156,6 +156,9 @@ public static class Components extends StripeObject {
@SerializedName("financial_account_transactions")
FinancialAccountTransactions financialAccountTransactions;

@SerializedName("instant_payouts_promotion")
InstantPayoutsPromotion instantPayoutsPromotion;

@SerializedName("issuing_card")
IssuingCard issuingCard;

Expand Down Expand Up @@ -573,6 +576,58 @@ public static class Features extends StripeObject {
}
}

/**
* For more details about InstantPayoutsPromotion, please refer to the <a
* href="https://docs.stripe.com/api">API Reference.</a>
*/
@Getter
@Setter
@EqualsAndHashCode(callSuper = false)
public static class InstantPayoutsPromotion extends StripeObject {
/** Whether the embedded component is enabled. */
@SerializedName("enabled")
Boolean enabled;

@SerializedName("features")
Features features;

/**
* For more details about Features, please refer to the <a
* href="https://docs.stripe.com/api">API Reference.</a>
*/
@Getter
@Setter
@EqualsAndHashCode(callSuper = false)
public static class Features extends StripeObject {
/**
* Whether Stripe user authentication is disabled. This value can only be {@code true} for
* accounts where {@code controller.requirement_collection} is {@code application} for the
* account. The default value is the opposite of the {@code external_account_collection}
* value. For example, if you don't set {@code external_account_collection}, it defaults to
* {@code true} and {@code disable_stripe_user_authentication} defaults to {@code false}.
*/
@SerializedName("disable_stripe_user_authentication")
Boolean disableStripeUserAuthentication;

/**
* Whether external account collection is enabled. This feature can only be {@code false}
* for accounts where you’re responsible for collecting updated information when
* requirements are due or change, like Custom accounts. The default value for this feature
* is {@code true}.
*/
@SerializedName("external_account_collection")
Boolean externalAccountCollection;

/**
* Whether to allow creation of instant payouts. Defaults to {@code true} when {@code
* controller.losses.payments} is set to {@code stripe} for the account, otherwise {@code
* false}.
*/
@SerializedName("instant_payouts")
Boolean instantPayouts;
}
}

/**
* For more details about IssuingCard, please refer to the <a
* href="https://docs.stripe.com/api">API Reference.</a>
Expand Down
16 changes: 7 additions & 9 deletions src/main/java/com/stripe/model/BalanceSettings.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
import com.stripe.net.StripeResponseGetter;
import com.stripe.param.BalanceSettingsRetrieveParams;
import com.stripe.param.BalanceSettingsUpdateParams;
import java.util.List;
import java.util.Map;
import lombok.EqualsAndHashCode;
import lombok.Getter;
Expand Down Expand Up @@ -198,18 +199,15 @@ public static class Schedule extends StripeObject {
* Payouts scheduled between the 29th and 31st of the month are sent on the last day of
* shorter months.
*/
@SerializedName("monthly_anchor")
Long monthlyAnchor;
@SerializedName("monthly_payout_days")
List<Long> monthlyPayoutDays;

/**
* The day of the week funds will be paid out, of the style 'monday', 'tuesday', etc. Only
* shown if {@code interval} is weekly.
*
* <p>One of {@code friday}, {@code monday}, {@code thursday}, {@code tuesday}, or {@code
* wednesday}.
* The days of the week when available funds are paid out, specified as an array, for example,
* [{@code monday}, {@code tuesday}]. Only shown if {@code interval} is weekly.
*/
@SerializedName("weekly_anchor")
String weeklyAnchor;
@SerializedName("weekly_payout_days")
List<String> weeklyPayoutDays;
}
}

Expand Down
3 changes: 1 addition & 2 deletions src/main/java/com/stripe/model/Capability.java
Original file line number Diff line number Diff line change
Expand Up @@ -62,8 +62,7 @@ public class Capability extends ApiResource implements HasId {
/**
* The status of the capability.
*
* <p>One of {@code active}, {@code disabled}, {@code inactive}, {@code pending}, or {@code
* unrequested}.
* <p>One of {@code active}, {@code inactive}, {@code pending}, or {@code unrequested}.
*/
@SerializedName("status")
String status;
Expand Down
Loading
Loading