Skip to content
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion API_VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
91ef4c6abe8dcdab3a855d81aa624693a6a4da9f
88aa59022b32620f4d66d6196e3b42d5a0f86bbb
1 change: 0 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,6 @@ This release changes the pinned API version to `2025-11-17.clover`.
* Add support for `hooks` on `PaymentIntentCaptureParams`, `PaymentIntentConfirmParams`, `PaymentIntentCreateParams`, `PaymentIntentIncrementAuthorizationParams`, `PaymentIntentUpdateParams`, and `PaymentIntent`
* Add support for `mbWay` and `twint` on `Refund.destination_details`
* Add support for new values `financial_connections.account.account_numbers_updated` and `financial_connections.account.upcoming_account_number_expiry` on enums `WebhookEndpointCreateParams.enabledEvents` and `WebhookEndpointUpdateParams.enabledEvents`
* Add support for `changes` on `v2.core.Event`
* Add support for snapshot events `financial_connections.account.account_numbers_updated` and `financial_connections.account.upcoming_account_number_expiry` with resource `financialconnections.Account`

## 30.2.0 - 2025-11-05
Expand Down
2 changes: 1 addition & 1 deletion OPENAPI_VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v2125
v2140
3 changes: 2 additions & 1 deletion build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,8 @@ jar {
"Implementation-Version": VERSION_NAME,
"Implementation-Vendor": VENDOR_NAME,
"Bundle-SymbolicName": POM_ARTIFACT_ID,
"Export-Package": "com.stripe.*")
"Export-Package": "com.stripe.*",
"Automatic-Module-Name": "stripe.java")

archiveVersion = VERSION_NAME
}
Expand Down
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-11-17.preview";
public static final String CURRENT = "2025-12-15.preview";
}
11 changes: 11 additions & 0 deletions src/main/java/com/stripe/StripeClient.java
Original file line number Diff line number Diff line change
Expand Up @@ -804,6 +804,17 @@ public com.stripe.service.ReportingService reporting() {
return new com.stripe.service.ReportingService(this.getResponseGetter());
}

/**
* @deprecated StripeClient.reserve() is deprecated, use StripeClient.v1().reserve() instead. All
* functionality under it has been copied over to StripeClient.v1().reserve(). See <a
* href="https://github.com/stripe/stripe-java/wiki/v1-namespace-in-StripeClient">migration
* guide</a> for more on this and tips on migrating to the new v1 namespace.
*/
@Deprecated
public com.stripe.service.ReserveService reserve() {
return new com.stripe.service.ReserveService(this.getResponseGetter());
}

/**
* @deprecated StripeClient.reviews() is deprecated, use StripeClient.v1().reviews() instead. All
* functionality under it has been copied over to StripeClient.v1().reviews(). See <a
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
// File generated from our OpenAPI spec
package com.stripe.events;

import com.google.gson.annotations.SerializedName;
import com.stripe.exception.StripeException;
import com.stripe.model.v2.core.Event;
import com.stripe.model.v2.core.Event.RelatedObject;
import com.stripe.model.v2.moneymanagement.PayoutMethod;
import lombok.Getter;

@Getter
public final class V2MoneyManagementPayoutMethodCreatedEvent 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 PayoutMethod fetchRelatedObject() throws StripeException {
return (PayoutMethod) super.fetchRelatedObject(this.relatedObject);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
// File generated from our OpenAPI spec
package com.stripe.events;

import com.google.gson.annotations.SerializedName;
import com.stripe.exception.StripeException;
import com.stripe.model.v2.core.Event.RelatedObject;
import com.stripe.model.v2.core.EventNotification;
import com.stripe.model.v2.moneymanagement.PayoutMethod;
import lombok.Getter;

@Getter
public final class V2MoneyManagementPayoutMethodCreatedEventNotification extends EventNotification {
@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 PayoutMethod fetchRelatedObject() throws StripeException {
return (PayoutMethod) super.fetchRelatedObject(this.relatedObject);
}
/** Retrieve the corresponding full event from the Stripe API. */
@Override
public V2MoneyManagementPayoutMethodCreatedEvent fetchEvent() throws StripeException {
return (V2MoneyManagementPayoutMethodCreatedEvent) super.fetchEvent();
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
// File generated from our OpenAPI spec
package com.stripe.exception;

import com.google.gson.JsonObject;
import com.stripe.model.StripeError;
import com.stripe.model.StripeObject;
import com.stripe.net.StripeResponseGetter;

/**
* Returned when the PayoutMethod object is controlled by an alternate resource so cannot be
* archived.
*/
public final class ControlledByAlternateResourceException extends ApiException {
private static final long serialVersionUID = 2L;

private ControlledByAlternateResourceException(
String message, String requestId, String code, Integer statusCode, Throwable e) {
super(message, requestId, code, statusCode, e);
}

static ControlledByAlternateResourceException parse(
JsonObject body, int statusCode, String requestId, StripeResponseGetter responseGetter) {
ControlledByAlternateResourceException.ControlledByAlternateResourceError error =
(ControlledByAlternateResourceException.ControlledByAlternateResourceError)
StripeObject.deserializeStripeObject(
body,
ControlledByAlternateResourceException.ControlledByAlternateResourceError.class,
responseGetter);
ControlledByAlternateResourceException exception =
new ControlledByAlternateResourceException(
error.getMessage(), requestId, error.getCode(), statusCode, null);
exception.setStripeError(error);
return exception;
}

public static class ControlledByAlternateResourceError extends StripeError {}
}
6 changes: 3 additions & 3 deletions src/main/java/com/stripe/exception/StripeException.java
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,9 @@ public static StripeException parseV2Exception(
case "blocked_by_stripe":
return com.stripe.exception.BlockedByStripeException.parse(
body, statusCode, requestId, responseGetter);
case "controlled_by_alternate_resource":
return com.stripe.exception.ControlledByAlternateResourceException.parse(
body, statusCode, requestId, responseGetter);
case "controlled_by_dashboard":
return com.stripe.exception.ControlledByDashboardException.parse(
body, statusCode, requestId, responseGetter);
Expand Down Expand Up @@ -146,9 +149,6 @@ public static StripeException parseV2Exception(
case "quota_exceeded":
return com.stripe.exception.QuotaExceededException.parse(
body, statusCode, requestId, responseGetter);
case "rate_limit":
return com.stripe.exception.RateLimitException.parse(
body, statusCode, requestId, responseGetter);
case "recipient_not_notifiable":
return com.stripe.exception.RecipientNotNotifiableException.parse(
body, statusCode, requestId, responseGetter);
Expand Down
Loading
Loading