map) {
+ if (this.extraParams == null) {
+ this.extraParams = new HashMap<>();
+ }
+ this.extraParams.putAll(map);
+ return this;
+ }
+ }
+ }
+
@Getter
public static class Payco {
/** Controls when the funds will be captured from the customer's account. */
@@ -12775,7 +12847,11 @@ public enum SetupFutureUsage implements ApiRequestParams.EnumParam {
@Getter
public static class PhoneNumberCollection {
- /** Required. Set to {@code true} to enable phone number collection. */
+ /**
+ * Required. Set to {@code true} to enable phone number collection.
+ *
+ * Can only be set in {@code payment} and {@code subscription} mode.
+ */
@SerializedName("enabled")
Boolean enabled;
@@ -12807,7 +12883,11 @@ public SessionCreateParams.PhoneNumberCollection build() {
return new SessionCreateParams.PhoneNumberCollection(this.enabled, this.extraParams);
}
- /** Required. Set to {@code true} to enable phone number collection. */
+ /**
+ * Required. Set to {@code true} to enable phone number collection.
+ *
+ *
Can only be set in {@code payment} and {@code subscription} mode.
+ */
public Builder setEnabled(Boolean enabled) {
this.enabled = enabled;
return this;
@@ -13773,6 +13853,9 @@ public enum AllowedCountry implements ApiRequestParams.EnumParam {
@SerializedName("SC")
SC("SC"),
+ @SerializedName("SD")
+ SD("SD"),
+
@SerializedName("SE")
SE("SE"),
@@ -16079,6 +16162,9 @@ public enum PaymentMethodType implements ApiRequestParams.EnumParam {
@SerializedName("p24")
P24("p24"),
+ @SerializedName("pay_by_bank")
+ PAY_BY_BANK("pay_by_bank"),
+
@SerializedName("payco")
PAYCO("payco"),
diff --git a/src/main/java/com/stripe/param/financialconnections/TransactionListParams.java b/src/main/java/com/stripe/param/financialconnections/TransactionListParams.java
index 09552e8ef6d..0c5e82c3d1e 100644
--- a/src/main/java/com/stripe/param/financialconnections/TransactionListParams.java
+++ b/src/main/java/com/stripe/param/financialconnections/TransactionListParams.java
@@ -12,7 +12,8 @@
@Getter
public class TransactionListParams extends ApiRequestParams {
/**
- * Required. The ID of the Stripe account whose transactions will be retrieved.
+ * Required. The ID of the Financial Connections Account whose transactions will
+ * be retrieved.
*/
@SerializedName("account")
String account;
@@ -123,7 +124,8 @@ public TransactionListParams build() {
}
/**
- * Required. The ID of the Stripe account whose transactions will be retrieved.
+ * Required. The ID of the Financial Connections Account whose transactions
+ * will be retrieved.
*/
public Builder setAccount(String account) {
this.account = account;
diff --git a/src/main/java/com/stripe/param/terminal/ConfigurationCreateParams.java b/src/main/java/com/stripe/param/terminal/ConfigurationCreateParams.java
index 0483a98247f..01d0a43d259 100644
--- a/src/main/java/com/stripe/param/terminal/ConfigurationCreateParams.java
+++ b/src/main/java/com/stripe/param/terminal/ConfigurationCreateParams.java
@@ -578,6 +578,10 @@ public static class Tipping {
@SerializedName("hkd")
Hkd hkd;
+ /** Tipping configuration for JPY. */
+ @SerializedName("jpy")
+ Jpy jpy;
+
/** Tipping configuration for MYR. */
@SerializedName("myr")
Myr myr;
@@ -616,6 +620,7 @@ private Tipping(
Map extraParams,
Gbp gbp,
Hkd hkd,
+ Jpy jpy,
Myr myr,
Nok nok,
Nzd nzd,
@@ -632,6 +637,7 @@ private Tipping(
this.extraParams = extraParams;
this.gbp = gbp;
this.hkd = hkd;
+ this.jpy = jpy;
this.myr = myr;
this.nok = nok;
this.nzd = nzd;
@@ -664,6 +670,8 @@ public static class Builder {
private Hkd hkd;
+ private Jpy jpy;
+
private Myr myr;
private Nok nok;
@@ -690,6 +698,7 @@ public ConfigurationCreateParams.Tipping build() {
this.extraParams,
this.gbp,
this.hkd,
+ this.jpy,
this.myr,
this.nok,
this.nzd,
@@ -773,6 +782,12 @@ public Builder setHkd(ConfigurationCreateParams.Tipping.Hkd hkd) {
return this;
}
+ /** Tipping configuration for JPY. */
+ public Builder setJpy(ConfigurationCreateParams.Tipping.Jpy jpy) {
+ this.jpy = jpy;
+ return this;
+ }
+
/** Tipping configuration for MYR. */
public Builder setMyr(ConfigurationCreateParams.Tipping.Myr myr) {
this.myr = myr;
@@ -1992,6 +2007,153 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) {
}
}
+ @Getter
+ public static class Jpy {
+ /**
+ * Map of extra parameters for custom features not available in this client library. The
+ * content in this map is not serialized under this field's {@code @SerializedName} value.
+ * Instead, each key/value pair is serialized as if the key is a root-level field (serialized)
+ * name in this param object. Effectively, this map is flattened to its parent instance.
+ */
+ @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY)
+ Map extraParams;
+
+ /** Fixed amounts displayed when collecting a tip. */
+ @SerializedName("fixed_amounts")
+ List fixedAmounts;
+
+ /** Percentages displayed when collecting a tip. */
+ @SerializedName("percentages")
+ List percentages;
+
+ /**
+ * Below this amount, fixed amounts will be displayed; above it, percentages will be
+ * displayed.
+ */
+ @SerializedName("smart_tip_threshold")
+ Long smartTipThreshold;
+
+ private Jpy(
+ Map extraParams,
+ List fixedAmounts,
+ List percentages,
+ Long smartTipThreshold) {
+ this.extraParams = extraParams;
+ this.fixedAmounts = fixedAmounts;
+ this.percentages = percentages;
+ this.smartTipThreshold = smartTipThreshold;
+ }
+
+ public static Builder builder() {
+ return new Builder();
+ }
+
+ public static class Builder {
+ private Map extraParams;
+
+ private List fixedAmounts;
+
+ private List percentages;
+
+ private Long smartTipThreshold;
+
+ /** Finalize and obtain parameter instance from this builder. */
+ public ConfigurationCreateParams.Tipping.Jpy build() {
+ return new ConfigurationCreateParams.Tipping.Jpy(
+ this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold);
+ }
+
+ /**
+ * Add a key/value pair to `extraParams` map. A map is initialized for the first
+ * `put/putAll` call, and subsequent calls add additional key/value pairs to the original
+ * map. See {@link ConfigurationCreateParams.Tipping.Jpy#extraParams} for the field
+ * documentation.
+ */
+ public Builder putExtraParam(String key, Object value) {
+ if (this.extraParams == null) {
+ this.extraParams = new HashMap<>();
+ }
+ this.extraParams.put(key, value);
+ return this;
+ }
+
+ /**
+ * Add all map key/value pairs to `extraParams` map. A map is initialized for the first
+ * `put/putAll` call, and subsequent calls add additional key/value pairs to the original
+ * map. See {@link ConfigurationCreateParams.Tipping.Jpy#extraParams} for the field
+ * documentation.
+ */
+ public Builder putAllExtraParam(Map map) {
+ if (this.extraParams == null) {
+ this.extraParams = new HashMap<>();
+ }
+ this.extraParams.putAll(map);
+ return this;
+ }
+
+ /**
+ * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll`
+ * call, and subsequent calls adds additional elements to the original list. See {@link
+ * ConfigurationCreateParams.Tipping.Jpy#fixedAmounts} for the field documentation.
+ */
+ public Builder addFixedAmount(Long element) {
+ if (this.fixedAmounts == null) {
+ this.fixedAmounts = new ArrayList<>();
+ }
+ this.fixedAmounts.add(element);
+ return this;
+ }
+
+ /**
+ * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll`
+ * call, and subsequent calls adds additional elements to the original list. See {@link
+ * ConfigurationCreateParams.Tipping.Jpy#fixedAmounts} for the field documentation.
+ */
+ public Builder addAllFixedAmount(List elements) {
+ if (this.fixedAmounts == null) {
+ this.fixedAmounts = new ArrayList<>();
+ }
+ this.fixedAmounts.addAll(elements);
+ return this;
+ }
+
+ /**
+ * Add an element to `percentages` list. A list is initialized for the first `add/addAll`
+ * call, and subsequent calls adds additional elements to the original list. See {@link
+ * ConfigurationCreateParams.Tipping.Jpy#percentages} for the field documentation.
+ */
+ public Builder addPercentage(Long element) {
+ if (this.percentages == null) {
+ this.percentages = new ArrayList<>();
+ }
+ this.percentages.add(element);
+ return this;
+ }
+
+ /**
+ * Add all elements to `percentages` list. A list is initialized for the first `add/addAll`
+ * call, and subsequent calls adds additional elements to the original list. See {@link
+ * ConfigurationCreateParams.Tipping.Jpy#percentages} for the field documentation.
+ */
+ public Builder addAllPercentage(List elements) {
+ if (this.percentages == null) {
+ this.percentages = new ArrayList<>();
+ }
+ this.percentages.addAll(elements);
+ return this;
+ }
+
+ /**
+ * Below this amount, fixed amounts will be displayed; above it, percentages will be
+ * displayed.
+ */
+ public Builder setSmartTipThreshold(Long smartTipThreshold) {
+ this.smartTipThreshold = smartTipThreshold;
+ return this;
+ }
+ }
+ }
+
@Getter
public static class Myr {
/**
diff --git a/src/main/java/com/stripe/param/terminal/ConfigurationUpdateParams.java b/src/main/java/com/stripe/param/terminal/ConfigurationUpdateParams.java
index 14d6e837773..5064fad65fc 100644
--- a/src/main/java/com/stripe/param/terminal/ConfigurationUpdateParams.java
+++ b/src/main/java/com/stripe/param/terminal/ConfigurationUpdateParams.java
@@ -608,6 +608,10 @@ public static class Tipping {
@SerializedName("hkd")
Hkd hkd;
+ /** Tipping configuration for JPY. */
+ @SerializedName("jpy")
+ Jpy jpy;
+
/** Tipping configuration for MYR. */
@SerializedName("myr")
Myr myr;
@@ -646,6 +650,7 @@ private Tipping(
Map extraParams,
Gbp gbp,
Hkd hkd,
+ Jpy jpy,
Myr myr,
Nok nok,
Nzd nzd,
@@ -662,6 +667,7 @@ private Tipping(
this.extraParams = extraParams;
this.gbp = gbp;
this.hkd = hkd;
+ this.jpy = jpy;
this.myr = myr;
this.nok = nok;
this.nzd = nzd;
@@ -694,6 +700,8 @@ public static class Builder {
private Hkd hkd;
+ private Jpy jpy;
+
private Myr myr;
private Nok nok;
@@ -720,6 +728,7 @@ public ConfigurationUpdateParams.Tipping build() {
this.extraParams,
this.gbp,
this.hkd,
+ this.jpy,
this.myr,
this.nok,
this.nzd,
@@ -803,6 +812,12 @@ public Builder setHkd(ConfigurationUpdateParams.Tipping.Hkd hkd) {
return this;
}
+ /** Tipping configuration for JPY. */
+ public Builder setJpy(ConfigurationUpdateParams.Tipping.Jpy jpy) {
+ this.jpy = jpy;
+ return this;
+ }
+
/** Tipping configuration for MYR. */
public Builder setMyr(ConfigurationUpdateParams.Tipping.Myr myr) {
this.myr = myr;
@@ -2022,6 +2037,153 @@ public Builder setSmartTipThreshold(Long smartTipThreshold) {
}
}
+ @Getter
+ public static class Jpy {
+ /**
+ * Map of extra parameters for custom features not available in this client library. The
+ * content in this map is not serialized under this field's {@code @SerializedName} value.
+ * Instead, each key/value pair is serialized as if the key is a root-level field (serialized)
+ * name in this param object. Effectively, this map is flattened to its parent instance.
+ */
+ @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY)
+ Map extraParams;
+
+ /** Fixed amounts displayed when collecting a tip. */
+ @SerializedName("fixed_amounts")
+ List fixedAmounts;
+
+ /** Percentages displayed when collecting a tip. */
+ @SerializedName("percentages")
+ List percentages;
+
+ /**
+ * Below this amount, fixed amounts will be displayed; above it, percentages will be
+ * displayed.
+ */
+ @SerializedName("smart_tip_threshold")
+ Long smartTipThreshold;
+
+ private Jpy(
+ Map extraParams,
+ List fixedAmounts,
+ List percentages,
+ Long smartTipThreshold) {
+ this.extraParams = extraParams;
+ this.fixedAmounts = fixedAmounts;
+ this.percentages = percentages;
+ this.smartTipThreshold = smartTipThreshold;
+ }
+
+ public static Builder builder() {
+ return new Builder();
+ }
+
+ public static class Builder {
+ private Map extraParams;
+
+ private List fixedAmounts;
+
+ private List percentages;
+
+ private Long smartTipThreshold;
+
+ /** Finalize and obtain parameter instance from this builder. */
+ public ConfigurationUpdateParams.Tipping.Jpy build() {
+ return new ConfigurationUpdateParams.Tipping.Jpy(
+ this.extraParams, this.fixedAmounts, this.percentages, this.smartTipThreshold);
+ }
+
+ /**
+ * Add a key/value pair to `extraParams` map. A map is initialized for the first
+ * `put/putAll` call, and subsequent calls add additional key/value pairs to the original
+ * map. See {@link ConfigurationUpdateParams.Tipping.Jpy#extraParams} for the field
+ * documentation.
+ */
+ public Builder putExtraParam(String key, Object value) {
+ if (this.extraParams == null) {
+ this.extraParams = new HashMap<>();
+ }
+ this.extraParams.put(key, value);
+ return this;
+ }
+
+ /**
+ * Add all map key/value pairs to `extraParams` map. A map is initialized for the first
+ * `put/putAll` call, and subsequent calls add additional key/value pairs to the original
+ * map. See {@link ConfigurationUpdateParams.Tipping.Jpy#extraParams} for the field
+ * documentation.
+ */
+ public Builder putAllExtraParam(Map map) {
+ if (this.extraParams == null) {
+ this.extraParams = new HashMap<>();
+ }
+ this.extraParams.putAll(map);
+ return this;
+ }
+
+ /**
+ * Add an element to `fixedAmounts` list. A list is initialized for the first `add/addAll`
+ * call, and subsequent calls adds additional elements to the original list. See {@link
+ * ConfigurationUpdateParams.Tipping.Jpy#fixedAmounts} for the field documentation.
+ */
+ public Builder addFixedAmount(Long element) {
+ if (this.fixedAmounts == null) {
+ this.fixedAmounts = new ArrayList<>();
+ }
+ this.fixedAmounts.add(element);
+ return this;
+ }
+
+ /**
+ * Add all elements to `fixedAmounts` list. A list is initialized for the first `add/addAll`
+ * call, and subsequent calls adds additional elements to the original list. See {@link
+ * ConfigurationUpdateParams.Tipping.Jpy#fixedAmounts} for the field documentation.
+ */
+ public Builder addAllFixedAmount(List elements) {
+ if (this.fixedAmounts == null) {
+ this.fixedAmounts = new ArrayList<>();
+ }
+ this.fixedAmounts.addAll(elements);
+ return this;
+ }
+
+ /**
+ * Add an element to `percentages` list. A list is initialized for the first `add/addAll`
+ * call, and subsequent calls adds additional elements to the original list. See {@link
+ * ConfigurationUpdateParams.Tipping.Jpy#percentages} for the field documentation.
+ */
+ public Builder addPercentage(Long element) {
+ if (this.percentages == null) {
+ this.percentages = new ArrayList<>();
+ }
+ this.percentages.add(element);
+ return this;
+ }
+
+ /**
+ * Add all elements to `percentages` list. A list is initialized for the first `add/addAll`
+ * call, and subsequent calls adds additional elements to the original list. See {@link
+ * ConfigurationUpdateParams.Tipping.Jpy#percentages} for the field documentation.
+ */
+ public Builder addAllPercentage(List elements) {
+ if (this.percentages == null) {
+ this.percentages = new ArrayList<>();
+ }
+ this.percentages.addAll(elements);
+ return this;
+ }
+
+ /**
+ * Below this amount, fixed amounts will be displayed; above it, percentages will be
+ * displayed.
+ */
+ public Builder setSmartTipThreshold(Long smartTipThreshold) {
+ this.smartTipThreshold = smartTipThreshold;
+ return this;
+ }
+ }
+ }
+
@Getter
public static class Myr {
/**
diff --git a/src/main/java/com/stripe/param/treasury/FinancialAccountCloseParams.java b/src/main/java/com/stripe/param/treasury/FinancialAccountCloseParams.java
new file mode 100644
index 00000000000..4e233be85c2
--- /dev/null
+++ b/src/main/java/com/stripe/param/treasury/FinancialAccountCloseParams.java
@@ -0,0 +1,238 @@
+// File generated from our OpenAPI spec
+package com.stripe.param.treasury;
+
+import com.google.gson.annotations.SerializedName;
+import com.stripe.net.ApiRequestParams;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import lombok.Getter;
+
+@Getter
+public class FinancialAccountCloseParams extends ApiRequestParams {
+ /** Specifies which fields in the response should be expanded. */
+ @SerializedName("expand")
+ List expand;
+
+ /**
+ * Map of extra parameters for custom features not available in this client library. The content
+ * in this map is not serialized under this field's {@code @SerializedName} value. Instead, each
+ * key/value pair is serialized as if the key is a root-level field (serialized) name in this
+ * param object. Effectively, this map is flattened to its parent instance.
+ */
+ @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY)
+ Map extraParams;
+
+ /**
+ * A different bank account where funds can be deposited/debited in order to get the closing FA's
+ * balance to $0.
+ */
+ @SerializedName("forwarding_settings")
+ ForwardingSettings forwardingSettings;
+
+ private FinancialAccountCloseParams(
+ List expand, Map extraParams, ForwardingSettings forwardingSettings) {
+ this.expand = expand;
+ this.extraParams = extraParams;
+ this.forwardingSettings = forwardingSettings;
+ }
+
+ public static Builder builder() {
+ return new Builder();
+ }
+
+ public static class Builder {
+ private List expand;
+
+ private Map extraParams;
+
+ private ForwardingSettings forwardingSettings;
+
+ /** Finalize and obtain parameter instance from this builder. */
+ public FinancialAccountCloseParams build() {
+ return new FinancialAccountCloseParams(
+ this.expand, this.extraParams, this.forwardingSettings);
+ }
+
+ /**
+ * Add an element to `expand` list. A list is initialized for the first `add/addAll` call, and
+ * subsequent calls adds additional elements to the original list. See {@link
+ * FinancialAccountCloseParams#expand} for the field documentation.
+ */
+ public Builder addExpand(String element) {
+ if (this.expand == null) {
+ this.expand = new ArrayList<>();
+ }
+ this.expand.add(element);
+ return this;
+ }
+
+ /**
+ * Add all elements to `expand` list. A list is initialized for the first `add/addAll` call, and
+ * subsequent calls adds additional elements to the original list. See {@link
+ * FinancialAccountCloseParams#expand} for the field documentation.
+ */
+ public Builder addAllExpand(List elements) {
+ if (this.expand == null) {
+ this.expand = new ArrayList<>();
+ }
+ this.expand.addAll(elements);
+ return this;
+ }
+
+ /**
+ * Add a key/value pair to `extraParams` map. A map is initialized for the first `put/putAll`
+ * call, and subsequent calls add additional key/value pairs to the original map. See {@link
+ * FinancialAccountCloseParams#extraParams} for the field documentation.
+ */
+ public Builder putExtraParam(String key, Object value) {
+ if (this.extraParams == null) {
+ this.extraParams = new HashMap<>();
+ }
+ this.extraParams.put(key, value);
+ return this;
+ }
+
+ /**
+ * Add all map key/value pairs to `extraParams` map. A map is initialized for the first
+ * `put/putAll` call, and subsequent calls add additional key/value pairs to the original map.
+ * See {@link FinancialAccountCloseParams#extraParams} for the field documentation.
+ */
+ public Builder putAllExtraParam(Map map) {
+ if (this.extraParams == null) {
+ this.extraParams = new HashMap<>();
+ }
+ this.extraParams.putAll(map);
+ return this;
+ }
+
+ /**
+ * A different bank account where funds can be deposited/debited in order to get the closing
+ * FA's balance to $0.
+ */
+ public Builder setForwardingSettings(
+ FinancialAccountCloseParams.ForwardingSettings forwardingSettings) {
+ this.forwardingSettings = forwardingSettings;
+ return this;
+ }
+ }
+
+ @Getter
+ public static class ForwardingSettings {
+ /**
+ * Map of extra parameters for custom features not available in this client library. The content
+ * in this map is not serialized under this field's {@code @SerializedName} value. Instead, each
+ * key/value pair is serialized as if the key is a root-level field (serialized) name in this
+ * param object. Effectively, this map is flattened to its parent instance.
+ */
+ @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY)
+ Map extraParams;
+
+ /** The financial_account id. */
+ @SerializedName("financial_account")
+ String financialAccount;
+
+ /** The payment_method or bank account id. This needs to be a verified bank account. */
+ @SerializedName("payment_method")
+ String paymentMethod;
+
+ /**
+ * Required. The type of the bank account provided. This can be either
+ * "financial_account" or "payment_method"
+ */
+ @SerializedName("type")
+ Type type;
+
+ private ForwardingSettings(
+ Map extraParams, String financialAccount, String paymentMethod, Type type) {
+ this.extraParams = extraParams;
+ this.financialAccount = financialAccount;
+ this.paymentMethod = paymentMethod;
+ this.type = type;
+ }
+
+ public static Builder builder() {
+ return new Builder();
+ }
+
+ public static class Builder {
+ private Map extraParams;
+
+ private String financialAccount;
+
+ private String paymentMethod;
+
+ private Type type;
+
+ /** Finalize and obtain parameter instance from this builder. */
+ public FinancialAccountCloseParams.ForwardingSettings build() {
+ return new FinancialAccountCloseParams.ForwardingSettings(
+ this.extraParams, this.financialAccount, this.paymentMethod, this.type);
+ }
+
+ /**
+ * Add a key/value pair to `extraParams` map. A map is initialized for the first `put/putAll`
+ * call, and subsequent calls add additional key/value pairs to the original map. See {@link
+ * FinancialAccountCloseParams.ForwardingSettings#extraParams} for the field documentation.
+ */
+ public Builder putExtraParam(String key, Object value) {
+ if (this.extraParams == null) {
+ this.extraParams = new HashMap<>();
+ }
+ this.extraParams.put(key, value);
+ return this;
+ }
+
+ /**
+ * Add all map key/value pairs to `extraParams` map. A map is initialized for the first
+ * `put/putAll` call, and subsequent calls add additional key/value pairs to the original map.
+ * See {@link FinancialAccountCloseParams.ForwardingSettings#extraParams} for the field
+ * documentation.
+ */
+ public Builder putAllExtraParam(Map map) {
+ if (this.extraParams == null) {
+ this.extraParams = new HashMap<>();
+ }
+ this.extraParams.putAll(map);
+ return this;
+ }
+
+ /** The financial_account id. */
+ public Builder setFinancialAccount(String financialAccount) {
+ this.financialAccount = financialAccount;
+ return this;
+ }
+
+ /** The payment_method or bank account id. This needs to be a verified bank account. */
+ public Builder setPaymentMethod(String paymentMethod) {
+ this.paymentMethod = paymentMethod;
+ return this;
+ }
+
+ /**
+ * Required. The type of the bank account provided. This can be either
+ * "financial_account" or "payment_method"
+ */
+ public Builder setType(FinancialAccountCloseParams.ForwardingSettings.Type type) {
+ this.type = type;
+ return this;
+ }
+ }
+
+ public enum Type implements ApiRequestParams.EnumParam {
+ @SerializedName("financial_account")
+ FINANCIAL_ACCOUNT("financial_account"),
+
+ @SerializedName("payment_method")
+ PAYMENT_METHOD("payment_method");
+
+ @Getter(onMethod_ = {@Override})
+ private final String value;
+
+ Type(String value) {
+ this.value = value;
+ }
+ }
+ }
+}
diff --git a/src/main/java/com/stripe/param/treasury/FinancialAccountCreateParams.java b/src/main/java/com/stripe/param/treasury/FinancialAccountCreateParams.java
index 39a9c4d8876..08e76643f35 100644
--- a/src/main/java/com/stripe/param/treasury/FinancialAccountCreateParams.java
+++ b/src/main/java/com/stripe/param/treasury/FinancialAccountCreateParams.java
@@ -3,6 +3,7 @@
import com.google.gson.annotations.SerializedName;
import com.stripe.net.ApiRequestParams;
+import com.stripe.param.common.EmptyParam;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -40,6 +41,10 @@ public class FinancialAccountCreateParams extends ApiRequestParams {
@SerializedName("metadata")
Map metadata;
+ /** The nickname for the FinancialAccount. */
+ @SerializedName("nickname")
+ Object nickname;
+
/** The set of functionalities that the platform can restrict on the FinancialAccount. */
@SerializedName("platform_restrictions")
PlatformRestrictions platformRestrictions;
@@ -53,12 +58,14 @@ private FinancialAccountCreateParams(
Map extraParams,
Features features,
Map metadata,
+ Object nickname,
PlatformRestrictions platformRestrictions,
List supportedCurrencies) {
this.expand = expand;
this.extraParams = extraParams;
this.features = features;
this.metadata = metadata;
+ this.nickname = nickname;
this.platformRestrictions = platformRestrictions;
this.supportedCurrencies = supportedCurrencies;
}
@@ -76,6 +83,8 @@ public static class Builder {
private Map metadata;
+ private Object nickname;
+
private PlatformRestrictions platformRestrictions;
private List supportedCurrencies;
@@ -87,6 +96,7 @@ public FinancialAccountCreateParams build() {
this.extraParams,
this.features,
this.metadata,
+ this.nickname,
this.platformRestrictions,
this.supportedCurrencies);
}
@@ -178,6 +188,18 @@ public Builder putAllMetadata(Map map) {
return this;
}
+ /** The nickname for the FinancialAccount. */
+ public Builder setNickname(String nickname) {
+ this.nickname = nickname;
+ return this;
+ }
+
+ /** The nickname for the FinancialAccount. */
+ public Builder setNickname(EmptyParam nickname) {
+ this.nickname = nickname;
+ return this;
+ }
+
/** The set of functionalities that the platform can restrict on the FinancialAccount. */
public Builder setPlatformRestrictions(
FinancialAccountCreateParams.PlatformRestrictions platformRestrictions) {
diff --git a/src/main/java/com/stripe/param/treasury/FinancialAccountUpdateParams.java b/src/main/java/com/stripe/param/treasury/FinancialAccountUpdateParams.java
index 07b4a040983..d0eb523258f 100644
--- a/src/main/java/com/stripe/param/treasury/FinancialAccountUpdateParams.java
+++ b/src/main/java/com/stripe/param/treasury/FinancialAccountUpdateParams.java
@@ -3,6 +3,7 @@
import com.google.gson.annotations.SerializedName;
import com.stripe.net.ApiRequestParams;
+import com.stripe.param.common.EmptyParam;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -32,6 +33,13 @@ public class FinancialAccountUpdateParams extends ApiRequestParams {
@SerializedName("features")
Features features;
+ /**
+ * A different bank account where funds can be deposited/debited in order to get the closing FA's
+ * balance to $0.
+ */
+ @SerializedName("forwarding_settings")
+ ForwardingSettings forwardingSettings;
+
/**
* Set of key-value pairs that you can attach
* to an object. This can be useful for storing additional information about the object in a
@@ -41,6 +49,10 @@ public class FinancialAccountUpdateParams extends ApiRequestParams {
@SerializedName("metadata")
Map metadata;
+ /** The nickname for the FinancialAccount. */
+ @SerializedName("nickname")
+ Object nickname;
+
/** The set of functionalities that the platform can restrict on the FinancialAccount. */
@SerializedName("platform_restrictions")
PlatformRestrictions platformRestrictions;
@@ -49,12 +61,16 @@ private FinancialAccountUpdateParams(
List expand,
Map extraParams,
Features features,
+ ForwardingSettings forwardingSettings,
Map metadata,
+ Object nickname,
PlatformRestrictions platformRestrictions) {
this.expand = expand;
this.extraParams = extraParams;
this.features = features;
+ this.forwardingSettings = forwardingSettings;
this.metadata = metadata;
+ this.nickname = nickname;
this.platformRestrictions = platformRestrictions;
}
@@ -69,14 +85,24 @@ public static class Builder {
private Features features;
+ private ForwardingSettings forwardingSettings;
+
private Map metadata;
+ private Object nickname;
+
private PlatformRestrictions platformRestrictions;
/** Finalize and obtain parameter instance from this builder. */
public FinancialAccountUpdateParams build() {
return new FinancialAccountUpdateParams(
- this.expand, this.extraParams, this.features, this.metadata, this.platformRestrictions);
+ this.expand,
+ this.extraParams,
+ this.features,
+ this.forwardingSettings,
+ this.metadata,
+ this.nickname,
+ this.platformRestrictions);
}
/**
@@ -141,6 +167,16 @@ public Builder setFeatures(FinancialAccountUpdateParams.Features features) {
return this;
}
+ /**
+ * A different bank account where funds can be deposited/debited in order to get the closing
+ * FA's balance to $0.
+ */
+ public Builder setForwardingSettings(
+ FinancialAccountUpdateParams.ForwardingSettings forwardingSettings) {
+ this.forwardingSettings = forwardingSettings;
+ return this;
+ }
+
/**
* Add a key/value pair to `metadata` map. A map is initialized for the first `put/putAll` call,
* and subsequent calls add additional key/value pairs to the original map. See {@link
@@ -167,6 +203,18 @@ public Builder putAllMetadata(Map map) {
return this;
}
+ /** The nickname for the FinancialAccount. */
+ public Builder setNickname(String nickname) {
+ this.nickname = nickname;
+ return this;
+ }
+
+ /** The nickname for the FinancialAccount. */
+ public Builder setNickname(EmptyParam nickname) {
+ this.nickname = nickname;
+ return this;
+ }
+
/** The set of functionalities that the platform can restrict on the FinancialAccount. */
public Builder setPlatformRestrictions(
FinancialAccountUpdateParams.PlatformRestrictions platformRestrictions) {
@@ -1346,6 +1394,136 @@ public Builder setRequested(Boolean requested) {
}
}
+ @Getter
+ public static class ForwardingSettings {
+ /**
+ * Map of extra parameters for custom features not available in this client library. The content
+ * in this map is not serialized under this field's {@code @SerializedName} value. Instead, each
+ * key/value pair is serialized as if the key is a root-level field (serialized) name in this
+ * param object. Effectively, this map is flattened to its parent instance.
+ */
+ @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY)
+ Map extraParams;
+
+ /** The financial_account id. */
+ @SerializedName("financial_account")
+ Object financialAccount;
+
+ /** The payment_method or bank account id. This needs to be a verified bank account. */
+ @SerializedName("payment_method")
+ Object paymentMethod;
+
+ /**
+ * Required. The type of the bank account provided. This can be either
+ * "financial_account" or "payment_method"
+ */
+ @SerializedName("type")
+ Type type;
+
+ private ForwardingSettings(
+ Map extraParams, Object financialAccount, Object paymentMethod, Type type) {
+ this.extraParams = extraParams;
+ this.financialAccount = financialAccount;
+ this.paymentMethod = paymentMethod;
+ this.type = type;
+ }
+
+ public static Builder builder() {
+ return new Builder();
+ }
+
+ public static class Builder {
+ private Map extraParams;
+
+ private Object financialAccount;
+
+ private Object paymentMethod;
+
+ private Type type;
+
+ /** Finalize and obtain parameter instance from this builder. */
+ public FinancialAccountUpdateParams.ForwardingSettings build() {
+ return new FinancialAccountUpdateParams.ForwardingSettings(
+ this.extraParams, this.financialAccount, this.paymentMethod, this.type);
+ }
+
+ /**
+ * Add a key/value pair to `extraParams` map. A map is initialized for the first `put/putAll`
+ * call, and subsequent calls add additional key/value pairs to the original map. See {@link
+ * FinancialAccountUpdateParams.ForwardingSettings#extraParams} for the field documentation.
+ */
+ public Builder putExtraParam(String key, Object value) {
+ if (this.extraParams == null) {
+ this.extraParams = new HashMap<>();
+ }
+ this.extraParams.put(key, value);
+ return this;
+ }
+
+ /**
+ * Add all map key/value pairs to `extraParams` map. A map is initialized for the first
+ * `put/putAll` call, and subsequent calls add additional key/value pairs to the original map.
+ * See {@link FinancialAccountUpdateParams.ForwardingSettings#extraParams} for the field
+ * documentation.
+ */
+ public Builder putAllExtraParam(Map map) {
+ if (this.extraParams == null) {
+ this.extraParams = new HashMap<>();
+ }
+ this.extraParams.putAll(map);
+ return this;
+ }
+
+ /** The financial_account id. */
+ public Builder setFinancialAccount(String financialAccount) {
+ this.financialAccount = financialAccount;
+ return this;
+ }
+
+ /** The financial_account id. */
+ public Builder setFinancialAccount(EmptyParam financialAccount) {
+ this.financialAccount = financialAccount;
+ return this;
+ }
+
+ /** The payment_method or bank account id. This needs to be a verified bank account. */
+ public Builder setPaymentMethod(String paymentMethod) {
+ this.paymentMethod = paymentMethod;
+ return this;
+ }
+
+ /** The payment_method or bank account id. This needs to be a verified bank account. */
+ public Builder setPaymentMethod(EmptyParam paymentMethod) {
+ this.paymentMethod = paymentMethod;
+ return this;
+ }
+
+ /**
+ * Required. The type of the bank account provided. This can be either
+ * "financial_account" or "payment_method"
+ */
+ public Builder setType(FinancialAccountUpdateParams.ForwardingSettings.Type type) {
+ this.type = type;
+ return this;
+ }
+ }
+
+ public enum Type implements ApiRequestParams.EnumParam {
+ @SerializedName("financial_account")
+ FINANCIAL_ACCOUNT("financial_account"),
+
+ @SerializedName("payment_method")
+ PAYMENT_METHOD("payment_method");
+
+ @Getter(onMethod_ = {@Override})
+ private final String value;
+
+ Type(String value) {
+ this.value = value;
+ }
+ }
+ }
+
@Getter
public static class PlatformRestrictions {
/**
diff --git a/src/main/java/com/stripe/param/treasury/OutboundTransferCreateParams.java b/src/main/java/com/stripe/param/treasury/OutboundTransferCreateParams.java
index a429dfc5e61..0c437bd2aec 100644
--- a/src/main/java/com/stripe/param/treasury/OutboundTransferCreateParams.java
+++ b/src/main/java/com/stripe/param/treasury/OutboundTransferCreateParams.java
@@ -32,6 +32,13 @@ public class OutboundTransferCreateParams extends ApiRequestParams {
@SerializedName("destination_payment_method")
String destinationPaymentMethod;
+ /**
+ * Hash used to generate the PaymentMethod to be used for this OutboundTransfer. Exclusive with
+ * {@code destination_payment_method}.
+ */
+ @SerializedName("destination_payment_method_data")
+ DestinationPaymentMethodData destinationPaymentMethodData;
+
/** Hash describing payment method configuration details. */
@SerializedName("destination_payment_method_options")
DestinationPaymentMethodOptions destinationPaymentMethodOptions;
@@ -75,6 +82,7 @@ private OutboundTransferCreateParams(
String currency,
String description,
String destinationPaymentMethod,
+ DestinationPaymentMethodData destinationPaymentMethodData,
DestinationPaymentMethodOptions destinationPaymentMethodOptions,
List expand,
Map extraParams,
@@ -85,6 +93,7 @@ private OutboundTransferCreateParams(
this.currency = currency;
this.description = description;
this.destinationPaymentMethod = destinationPaymentMethod;
+ this.destinationPaymentMethodData = destinationPaymentMethodData;
this.destinationPaymentMethodOptions = destinationPaymentMethodOptions;
this.expand = expand;
this.extraParams = extraParams;
@@ -106,6 +115,8 @@ public static class Builder {
private String destinationPaymentMethod;
+ private DestinationPaymentMethodData destinationPaymentMethodData;
+
private DestinationPaymentMethodOptions destinationPaymentMethodOptions;
private List expand;
@@ -125,6 +136,7 @@ public OutboundTransferCreateParams build() {
this.currency,
this.description,
this.destinationPaymentMethod,
+ this.destinationPaymentMethodData,
this.destinationPaymentMethodOptions,
this.expand,
this.extraParams,
@@ -161,6 +173,16 @@ public Builder setDestinationPaymentMethod(String destinationPaymentMethod) {
return this;
}
+ /**
+ * Hash used to generate the PaymentMethod to be used for this OutboundTransfer. Exclusive with
+ * {@code destination_payment_method}.
+ */
+ public Builder setDestinationPaymentMethodData(
+ OutboundTransferCreateParams.DestinationPaymentMethodData destinationPaymentMethodData) {
+ this.destinationPaymentMethodData = destinationPaymentMethodData;
+ return this;
+ }
+
/** Hash describing payment method configuration details. */
public Builder setDestinationPaymentMethodOptions(
OutboundTransferCreateParams.DestinationPaymentMethodOptions
@@ -264,6 +286,109 @@ public Builder setStatementDescriptor(String statementDescriptor) {
}
}
+ @Getter
+ public static class DestinationPaymentMethodData {
+ /**
+ * Map of extra parameters for custom features not available in this client library. The content
+ * in this map is not serialized under this field's {@code @SerializedName} value. Instead, each
+ * key/value pair is serialized as if the key is a root-level field (serialized) name in this
+ * param object. Effectively, this map is flattened to its parent instance.
+ */
+ @SerializedName(ApiRequestParams.EXTRA_PARAMS_KEY)
+ Map extraParams;
+
+ /**
+ * Required if type is set to {@code financial_account}. The FinancialAccount ID to send funds
+ * to.
+ */
+ @SerializedName("financial_account")
+ String financialAccount;
+
+ /** Required. The type of the destination. */
+ @SerializedName("type")
+ Type type;
+
+ private DestinationPaymentMethodData(
+ Map extraParams, String financialAccount, Type type) {
+ this.extraParams = extraParams;
+ this.financialAccount = financialAccount;
+ this.type = type;
+ }
+
+ public static Builder builder() {
+ return new Builder();
+ }
+
+ public static class Builder {
+ private Map extraParams;
+
+ private String financialAccount;
+
+ private Type type;
+
+ /** Finalize and obtain parameter instance from this builder. */
+ public OutboundTransferCreateParams.DestinationPaymentMethodData build() {
+ return new OutboundTransferCreateParams.DestinationPaymentMethodData(
+ this.extraParams, this.financialAccount, this.type);
+ }
+
+ /**
+ * Add a key/value pair to `extraParams` map. A map is initialized for the first `put/putAll`
+ * call, and subsequent calls add additional key/value pairs to the original map. See {@link
+ * OutboundTransferCreateParams.DestinationPaymentMethodData#extraParams} for the field
+ * documentation.
+ */
+ public Builder putExtraParam(String key, Object value) {
+ if (this.extraParams == null) {
+ this.extraParams = new HashMap<>();
+ }
+ this.extraParams.put(key, value);
+ return this;
+ }
+
+ /**
+ * Add all map key/value pairs to `extraParams` map. A map is initialized for the first
+ * `put/putAll` call, and subsequent calls add additional key/value pairs to the original map.
+ * See {@link OutboundTransferCreateParams.DestinationPaymentMethodData#extraParams} for the
+ * field documentation.
+ */
+ public Builder putAllExtraParam(Map map) {
+ if (this.extraParams == null) {
+ this.extraParams = new HashMap<>();
+ }
+ this.extraParams.putAll(map);
+ return this;
+ }
+
+ /**
+ * Required if type is set to {@code financial_account}. The FinancialAccount ID to send funds
+ * to.
+ */
+ public Builder setFinancialAccount(String financialAccount) {
+ this.financialAccount = financialAccount;
+ return this;
+ }
+
+ /** Required. The type of the destination. */
+ public Builder setType(OutboundTransferCreateParams.DestinationPaymentMethodData.Type type) {
+ this.type = type;
+ return this;
+ }
+ }
+
+ public enum Type implements ApiRequestParams.EnumParam {
+ @SerializedName("financial_account")
+ FINANCIAL_ACCOUNT("financial_account");
+
+ @Getter(onMethod_ = {@Override})
+ private final String value;
+
+ Type(String value) {
+ this.value = value;
+ }
+ }
+ }
+
@Getter
public static class DestinationPaymentMethodOptions {
/**
diff --git a/src/main/java/com/stripe/param/treasury/ReceivedCreditListParams.java b/src/main/java/com/stripe/param/treasury/ReceivedCreditListParams.java
index 3eee3863093..1ec6d016a2c 100644
--- a/src/main/java/com/stripe/param/treasury/ReceivedCreditListParams.java
+++ b/src/main/java/com/stripe/param/treasury/ReceivedCreditListParams.java
@@ -298,6 +298,9 @@ public enum SourceFlowType implements ApiRequestParams.EnumParam {
@SerializedName("outbound_payment")
OUTBOUND_PAYMENT("outbound_payment"),
+ @SerializedName("outbound_transfer")
+ OUTBOUND_TRANSFER("outbound_transfer"),
+
@SerializedName("payout")
PAYOUT("payout");
diff --git a/src/main/java/com/stripe/service/treasury/FinancialAccountService.java b/src/main/java/com/stripe/service/treasury/FinancialAccountService.java
index 8c037c6c570..64b227cf9b1 100644
--- a/src/main/java/com/stripe/service/treasury/FinancialAccountService.java
+++ b/src/main/java/com/stripe/service/treasury/FinancialAccountService.java
@@ -12,6 +12,7 @@
import com.stripe.net.BaseAddress;
import com.stripe.net.RequestOptions;
import com.stripe.net.StripeResponseGetter;
+import com.stripe.param.treasury.FinancialAccountCloseParams;
import com.stripe.param.treasury.FinancialAccountCreateParams;
import com.stripe.param.treasury.FinancialAccountListParams;
import com.stripe.param.treasury.FinancialAccountRetrieveParams;
@@ -131,6 +132,48 @@ public FinancialAccount update(
options);
return this.request(request, FinancialAccount.class);
}
+ /**
+ * Closes a FinancialAccount. A FinancialAccount can only be closed if it has a zero balance, has
+ * no pending InboundTransfers, and has canceled all attached Issuing cards.
+ */
+ public FinancialAccount close(String financialAccount, FinancialAccountCloseParams params)
+ throws StripeException {
+ return close(financialAccount, params, (RequestOptions) null);
+ }
+ /**
+ * Closes a FinancialAccount. A FinancialAccount can only be closed if it has a zero balance, has
+ * no pending InboundTransfers, and has canceled all attached Issuing cards.
+ */
+ public FinancialAccount close(String financialAccount, RequestOptions options)
+ throws StripeException {
+ return close(financialAccount, (FinancialAccountCloseParams) null, options);
+ }
+ /**
+ * Closes a FinancialAccount. A FinancialAccount can only be closed if it has a zero balance, has
+ * no pending InboundTransfers, and has canceled all attached Issuing cards.
+ */
+ public FinancialAccount close(String financialAccount) throws StripeException {
+ return close(financialAccount, (FinancialAccountCloseParams) null, (RequestOptions) null);
+ }
+ /**
+ * Closes a FinancialAccount. A FinancialAccount can only be closed if it has a zero balance, has
+ * no pending InboundTransfers, and has canceled all attached Issuing cards.
+ */
+ public FinancialAccount close(
+ String financialAccount, FinancialAccountCloseParams params, RequestOptions options)
+ throws StripeException {
+ String path =
+ String.format(
+ "/v1/treasury/financial_accounts/%s/close", ApiResource.urlEncodeId(financialAccount));
+ ApiRequest request =
+ new ApiRequest(
+ BaseAddress.API,
+ ApiResource.RequestMethod.POST,
+ path,
+ ApiRequestParams.paramsToMap(params),
+ options);
+ return this.request(request, FinancialAccount.class);
+ }
public com.stripe.service.treasury.FinancialAccountFeaturesService features() {
return new com.stripe.service.treasury.FinancialAccountFeaturesService(
diff --git a/src/test/java/com/stripe/functional/GeneratedExamples.java b/src/test/java/com/stripe/functional/GeneratedExamples.java
index 1901347e306..9a7629fb569 100644
--- a/src/test/java/com/stripe/functional/GeneratedExamples.java
+++ b/src/test/java/com/stripe/functional/GeneratedExamples.java
@@ -11906,6 +11906,50 @@ public void testTerminalReadersProcessPaymentIntentPostServices() throws StripeE
null);
}
+ @Test
+ public void testTerminalReadersProcessSetupIntentPost() throws StripeException {
+ com.stripe.model.terminal.Reader resource =
+ com.stripe.model.terminal.Reader.retrieve("tmr_xxxxxxxxxxxxx");
+
+ com.stripe.param.terminal.ReaderProcessSetupIntentParams params =
+ com.stripe.param.terminal.ReaderProcessSetupIntentParams.builder()
+ .setSetupIntent("seti_xxxxxxxxxxxxx")
+ .setAllowRedisplay(
+ com.stripe.param.terminal.ReaderProcessSetupIntentParams.AllowRedisplay.ALWAYS)
+ .build();
+
+ com.stripe.model.terminal.Reader reader = resource.processSetupIntent(params);
+ assertNotNull(reader);
+ verifyRequest(
+ BaseAddress.API,
+ ApiResource.RequestMethod.POST,
+ "/v1/terminal/readers/tmr_xxxxxxxxxxxxx/process_setup_intent",
+ params.toMap(),
+ null);
+ }
+
+ @Test
+ public void testTerminalReadersProcessSetupIntentPostServices() throws StripeException {
+ StripeClient client = new StripeClient(networkSpy);
+
+ com.stripe.param.terminal.ReaderProcessSetupIntentParams params =
+ com.stripe.param.terminal.ReaderProcessSetupIntentParams.builder()
+ .setSetupIntent("seti_xxxxxxxxxxxxx")
+ .setAllowRedisplay(
+ com.stripe.param.terminal.ReaderProcessSetupIntentParams.AllowRedisplay.ALWAYS)
+ .build();
+
+ com.stripe.model.terminal.Reader reader =
+ client.terminal().readers().processSetupIntent("tmr_xxxxxxxxxxxxx", params);
+ assertNotNull(reader);
+ verifyRequest(
+ BaseAddress.API,
+ ApiResource.RequestMethod.POST,
+ "/v1/terminal/readers/tmr_xxxxxxxxxxxxx/process_setup_intent",
+ params.toMap(),
+ null);
+ }
+
@Test
public void testTestHelpersCustomersFundCashBalancePost() throws StripeException {
Customer resource = Customer.retrieve("cus_123");
From dfafa652bc29c2154b79670acda4575516880895 Mon Sep 17 00:00:00 2001
From: Helen Ye
Date: Mon, 27 Jan 2025 15:18:46 -0500
Subject: [PATCH 03/45] Bump version to 28.3.0
---
CHANGELOG.md | 32 ++++++++++++++++++++++++++++
README.md | 8 +++----
VERSION | 2 +-
gradle.properties | 2 +-
src/main/java/com/stripe/Stripe.java | 2 +-
5 files changed, 39 insertions(+), 7 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index fdf7af92311..c99a473a206 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,37 @@
# Changelog
+## 28.3.0 - 2025-01-27
+* [#1936](https://github.com/stripe/stripe-java/pull/1936) Update generated code
+ * Add support for `close` method on resource `Treasury.FinancialAccount`
+ * Add support for `pay_by_bank_payments` on `Account.capabilities`, `AccountCreateParams.capabilities`, and `AccountUpdateParams.capabilities`
+ * Add support for `directorship_declaration` and `ownership_exemption_reason` on `Account.company`, `AccountCreateParams.company`, `AccountUpdateParams.company`, and `TokenCreateParams.account.company`
+ * Add support for `proof_of_ultimate_beneficial_ownership` on `AccountCreateParams.documents` and `AccountUpdateParams.documents`
+ * Add support for `financial_account` on `AccountSession.components`, `AccountSessionCreateParams.components`, and `Treasury.OutboundTransfer.destination_payment_method_details`
+ * Add support for `financial_account_transactions`, `issuing_card`, and `issuing_cards_list` on `AccountSession.components` and `AccountSessionCreateParams.components`
+ * Add support for `advice_code` on `Charge.outcome`, `Invoice.last_finalization_error`, `PaymentIntent.last_payment_error`, `SetupAttempt.setup_error`, `SetupIntent.last_setup_error`, and `StripeError`
+ * Add support for `pay_by_bank` 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`, `PaymentMethodConfigurationCreateParams`, `PaymentMethodConfigurationUpdateParams`, `PaymentMethodConfiguration`, `PaymentMethodCreateParams`, `PaymentMethodUpdateParams`, `PaymentMethod`, `SetupIntentConfirmParams.payment_method_data`, `SetupIntentCreateParams.payment_method_data`, `SetupIntentUpdateParams.payment_method_data`, and `checkout.SessionCreateParams.payment_method_options`
+ * Add support for `country` on `Charge.payment_method_details.paypal`, `ConfirmationToken.payment_method_preview.paypal`, and `PaymentMethod.paypal`
+ * Add support for new value `pay_by_bank` on enums `CustomerListPaymentMethodsParams.type`, `PaymentMethodCreateParams.type`, `PaymentMethodListParams.type`, and `checkout.SessionCreateParams.payment_method_types[]`
+ * Add support for new value `SD` on enums `PaymentLinkCreateParams.shipping_address_collection.allowed_countries[]`, `PaymentLinkUpdateParams.shipping_address_collection.allowed_countries[]`, and `checkout.SessionCreateParams.shipping_address_collection.allowed_countries[]`
+ * Add support for `discounts` on `Checkout.Session`
+ * Add support for new value `pay_by_bank` 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 `pay_by_bank` on enums `PaymentLinkCreateParams.payment_method_types[]` and `PaymentLinkUpdateParams.payment_method_types[]`
+ * Add support for `phone_number_collection` on `PaymentLinkUpdateParams`
+ * Add support for `jpy` on `Terminal.Configuration.tipping`, `terminal.ConfigurationCreateParams.tipping`, and `terminal.ConfigurationUpdateParams.tipping`
+ * Add support for `nickname` on `Treasury.FinancialAccount`, `treasury.FinancialAccountCreateParams`, and `treasury.FinancialAccountUpdateParams`
+ * Add support for `forwarding_settings` on `treasury.FinancialAccountUpdateParams`
+ * Add support for `is_default` on `Treasury.FinancialAccount`
+ * Add support for `destination_payment_method_data` on `treasury.OutboundTransferCreateParams`
+ * Change type of `Treasury.OutboundTransfer.destination_payment_method_details.type` from `literal('us_bank_account')` to `enum('financial_account'|'us_bank_account')`
+ * Add support for new value `outbound_transfer` on enum `treasury.ReceivedCreditListParams.linked_flows.source_flow_type`
+ * Add support for `outbound_transfer` on `Treasury.ReceivedCredit.linked_flows.source_flow_details`
+ * Add support for new value `2025-01-27.acacia` on enum `WebhookEndpointCreateParams.api_version`
+* [#1941](https://github.com/stripe/stripe-java/pull/1941) Updated upload artifact ci action
+* [#1938](https://github.com/stripe/stripe-java/pull/1938) update justfile import & pin CI ubuntu
+* [#1937](https://github.com/stripe/stripe-java/pull/1937) Added CONTRIBUTING.md file
+* [#1934](https://github.com/stripe/stripe-java/pull/1934) add justfile tweak readme, remove coveralls
+* [#1933](https://github.com/stripe/stripe-java/pull/1933) Added pull request template
+
## 28.2.0 - 2024-12-18
* [#1931](https://github.com/stripe/stripe-java/pull/1931) This release changes the pinned API version to `2024-12-18.acacia`.
* Add support for `network_advice_code` and `network_decline_code` on `Charge.outcome`, `Invoice.last_finalization_error`, `PaymentIntent.last_payment_error`, `SetupAttempt.setup_error`, `SetupIntent.last_setup_error`, and `StripeError`
diff --git a/README.md b/README.md
index adf3238be44..c8e31092939 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,6 @@
# Stripe Java client library
-[](https://mvnrepository.com/artifact/com.stripe/stripe-java)
+[](https://mvnrepository.com/artifact/com.stripe/stripe-java)
[](https://stripe.dev/stripe-java)
[](https://github.com/stripe/stripe-java/actions?query=branch%3Amaster)
@@ -17,7 +17,7 @@ The official [Stripe][stripe] Java client library.
Add this dependency to your project's build file:
```groovy
-implementation "com.stripe:stripe-java:28.2.0"
+implementation "com.stripe:stripe-java:28.3.0"
```
### Maven users
@@ -28,7 +28,7 @@ Add this dependency to your project's POM:
com.stripe
stripe-java
- 28.2.0
+ 28.3.0
```
@@ -36,7 +36,7 @@ Add this dependency to your project's POM:
You'll need to manually install the following JARs:
-- [The Stripe JAR](https://search.maven.org/remotecontent?filepath=com/stripe/stripe-java/28.2.0/stripe-java-28.2.0.jar)
+- [The Stripe JAR](https://search.maven.org/remotecontent?filepath=com/stripe/stripe-java/28.3.0/stripe-java-28.3.0.jar)
- [Google Gson][gson] from .
### [ProGuard][proguard]
diff --git a/VERSION b/VERSION
index 55ee98da7a2..f2d2bcec292 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-28.2.0
+28.3.0
diff --git a/gradle.properties b/gradle.properties
index 2dcb90b6b55..561a53e1d4e 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -1,5 +1,5 @@
GROUP=com.stripe
-VERSION_NAME=28.2.0
+VERSION_NAME=28.3.0
POM_URL=https://github.com/stripe/stripe-java
POM_SCM_URL=git@github.com:stripe/stripe-java.git
diff --git a/src/main/java/com/stripe/Stripe.java b/src/main/java/com/stripe/Stripe.java
index c24ef61f842..16208d53dda 100644
--- a/src/main/java/com/stripe/Stripe.java
+++ b/src/main/java/com/stripe/Stripe.java
@@ -14,7 +14,7 @@ public abstract class Stripe {
public static final String LIVE_API_BASE = "https://api.stripe.com";
public static final String UPLOAD_API_BASE = "https://files.stripe.com";
public static final String METER_EVENTS_API_BASE = "https://meter-events.stripe.com";
- public static final String VERSION = "28.2.0";
+ public static final String VERSION = "28.3.0";
public static volatile String apiKey;
public static volatile String clientId;
From 7c991963d32de62c52b34d4ba4e5c344c70b438c Mon Sep 17 00:00:00 2001
From: David Brownman <109395161+xavdid-stripe@users.noreply.github.com>
Date: Wed, 5 Feb 2025 11:49:33 -0800
Subject: [PATCH 04/45] Ensure `getRawJsonObject` returns data for constructed
webhooks (#1946)
* construct fake response during webhook parsing
* formatting
---
src/main/java/com/stripe/net/Webhook.java | 8 ++++++++
src/test/java/com/stripe/net/WebhookTest.java | 10 ++++++++++
2 files changed, 18 insertions(+)
diff --git a/src/main/java/com/stripe/net/Webhook.java b/src/main/java/com/stripe/net/Webhook.java
index 7b5a34febf2..ea67ea34362 100644
--- a/src/main/java/com/stripe/net/Webhook.java
+++ b/src/main/java/com/stripe/net/Webhook.java
@@ -9,6 +9,7 @@
import java.security.NoSuchAlgorithmException;
import java.time.Clock;
import java.util.ArrayList;
+import java.util.Collections;
import java.util.List;
import javax.crypto.Mac;
import javax.crypto.spec.SecretKeySpec;
@@ -72,6 +73,13 @@ public static Event constructEvent(
StripeObject.deserializeStripeObject(
payload, Event.class, ApiResource.getGlobalResponseGetter());
Signature.verifyHeader(payload, sigHeader, secret, tolerance, clock);
+ // StripeObjects source their raw JSON object from their last response, but constructed webhooks
+ // don't have that
+ // in order to make the raw object available on parsed events, we fake the response.
+ if (event.getLastResponse() == null) {
+ event.setLastResponse(
+ new StripeResponse(200, HttpHeaders.of(Collections.emptyMap()), payload));
+ }
return event;
}
diff --git a/src/test/java/com/stripe/net/WebhookTest.java b/src/test/java/com/stripe/net/WebhookTest.java
index 175f0cd5feb..c6a9c89aa77 100644
--- a/src/test/java/com/stripe/net/WebhookTest.java
+++ b/src/test/java/com/stripe/net/WebhookTest.java
@@ -1,5 +1,6 @@
package com.stripe.net;
+import static org.junit.Assert.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.junit.jupiter.api.Assertions.assertTrue;
@@ -325,4 +326,13 @@ public void testStripeClientConstructEventWithTolerance()
Mockito.verify(responseGetter).request(Mockito.any(), Mockito.any());
}
+
+ @Test
+ public void testConstructEventWithRawJson()
+ throws StripeException, NoSuchAlgorithmException, InvalidKeyException {
+
+ final Event event = Webhook.constructEvent(payload, generateSigHeader(), secret);
+
+ assertNotNull(event.getRawJsonObject());
+ }
}
From 5ff511343da875e9c75b2dd753154bb9d6ffb032 Mon Sep 17 00:00:00 2001
From: David Brownman
Date: Fri, 7 Feb 2025 13:23:52 -0800
Subject: [PATCH 05/45] Bump version to 28.3.1
---
CHANGELOG.md | 3 +++
README.md | 8 ++++----
VERSION | 2 +-
gradle.properties | 2 +-
src/main/java/com/stripe/Stripe.java | 2 +-
5 files changed, 10 insertions(+), 7 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index c99a473a206..8af0bf12bf7 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,8 @@
# Changelog
+## 28.3.1 - 2025-02-07
+* [#1946](https://github.com/stripe/stripe-java/pull/1946) Ensure `getRawJsonObject` returns data for constructed webhooks
+
## 28.3.0 - 2025-01-27
* [#1936](https://github.com/stripe/stripe-java/pull/1936) Update generated code
* Add support for `close` method on resource `Treasury.FinancialAccount`
diff --git a/README.md b/README.md
index c8e31092939..c3effc0a211 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,6 @@
# Stripe Java client library
-[](https://mvnrepository.com/artifact/com.stripe/stripe-java)
+[](https://mvnrepository.com/artifact/com.stripe/stripe-java)
[](https://stripe.dev/stripe-java)
[](https://github.com/stripe/stripe-java/actions?query=branch%3Amaster)
@@ -17,7 +17,7 @@ The official [Stripe][stripe] Java client library.
Add this dependency to your project's build file:
```groovy
-implementation "com.stripe:stripe-java:28.3.0"
+implementation "com.stripe:stripe-java:28.3.1"
```
### Maven users
@@ -28,7 +28,7 @@ Add this dependency to your project's POM:
com.stripe
stripe-java
- 28.3.0
+ 28.3.1
```
@@ -36,7 +36,7 @@ Add this dependency to your project's POM:
You'll need to manually install the following JARs:
-- [The Stripe JAR](https://search.maven.org/remotecontent?filepath=com/stripe/stripe-java/28.3.0/stripe-java-28.3.0.jar)
+- [The Stripe JAR](https://search.maven.org/remotecontent?filepath=com/stripe/stripe-java/28.3.1/stripe-java-28.3.1.jar)
- [Google Gson][gson] from .
### [ProGuard][proguard]
diff --git a/VERSION b/VERSION
index f2d2bcec292..e5ef00e6458 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-28.3.0
+28.3.1
diff --git a/gradle.properties b/gradle.properties
index 561a53e1d4e..06b569e9169 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -1,5 +1,5 @@
GROUP=com.stripe
-VERSION_NAME=28.3.0
+VERSION_NAME=28.3.1
POM_URL=https://github.com/stripe/stripe-java
POM_SCM_URL=git@github.com:stripe/stripe-java.git
diff --git a/src/main/java/com/stripe/Stripe.java b/src/main/java/com/stripe/Stripe.java
index 16208d53dda..2c854f7dc3e 100644
--- a/src/main/java/com/stripe/Stripe.java
+++ b/src/main/java/com/stripe/Stripe.java
@@ -14,7 +14,7 @@ public abstract class Stripe {
public static final String LIVE_API_BASE = "https://api.stripe.com";
public static final String UPLOAD_API_BASE = "https://files.stripe.com";
public static final String METER_EVENTS_API_BASE = "https://meter-events.stripe.com";
- public static final String VERSION = "28.3.0";
+ public static final String VERSION = "28.3.1";
public static volatile String apiKey;
public static volatile String clientId;
From f3a2d0df04e45c481342e12b639047a5992fe105 Mon Sep 17 00:00:00 2001
From: Stripe OpenAPI <105521251+stripe-openapi[bot]@users.noreply.github.com>
Date: Mon, 10 Feb 2025 22:10:15 +0000
Subject: [PATCH 06/45] Update generated code for v1479
---
OPENAPI_VERSION | 2 +-
.../com/stripe/model/billing/CreditGrant.java | 6 +++++
.../billing/CreditGrantCreateParams.java | 25 +++++++++++++++++--
3 files changed, 30 insertions(+), 3 deletions(-)
diff --git a/OPENAPI_VERSION b/OPENAPI_VERSION
index 1c140afccda..00ad8bdb8b0 100644
--- a/OPENAPI_VERSION
+++ b/OPENAPI_VERSION
@@ -1 +1 @@
-v1473
\ No newline at end of file
+v1479
\ No newline at end of file
diff --git a/src/main/java/com/stripe/model/billing/CreditGrant.java b/src/main/java/com/stripe/model/billing/CreditGrant.java
index 1fb08e47186..ba7d83050e3 100644
--- a/src/main/java/com/stripe/model/billing/CreditGrant.java
+++ b/src/main/java/com/stripe/model/billing/CreditGrant.java
@@ -105,6 +105,12 @@ public class CreditGrant extends ApiResource implements HasId, MetadataStore extraParams,
Map metadata,
- String name) {
+ String name,
+ Long priority) {
this.amount = amount;
this.applicabilityConfig = applicabilityConfig;
this.category = category;
@@ -85,6 +93,7 @@ private CreditGrantCreateParams(
this.extraParams = extraParams;
this.metadata = metadata;
this.name = name;
+ this.priority = priority;
}
public static Builder builder() {
@@ -112,6 +121,8 @@ public static class Builder {
private String name;
+ private Long priority;
+
/** Finalize and obtain parameter instance from this builder. */
public CreditGrantCreateParams build() {
return new CreditGrantCreateParams(
@@ -124,7 +135,8 @@ public CreditGrantCreateParams build() {
this.expiresAt,
this.extraParams,
this.metadata,
- this.name);
+ this.name,
+ this.priority);
}
/** Required. Amount of this credit grant. */
@@ -252,6 +264,15 @@ public Builder setName(String name) {
this.name = name;
return this;
}
+
+ /**
+ * The desired priority for applying this credit grant. If not specified, it will be set to the
+ * default value of 50. The highest priority is 0 and the lowest is 100.
+ */
+ public Builder setPriority(Long priority) {
+ this.priority = priority;
+ return this;
+ }
}
@Getter
From d2a089136dfe49ba3f6acbc6eed2f41b4821e18d Mon Sep 17 00:00:00 2001
From: Stripe OpenAPI <105521251+stripe-openapi[bot]@users.noreply.github.com>
Date: Tue, 11 Feb 2025 19:08:10 +0000
Subject: [PATCH 07/45] Update generated code for v1481
---
OPENAPI_VERSION | 2 +-
src/main/java/com/stripe/model/Order.java | 16 ++
.../java/com/stripe/model/PaymentIntent.java | 40 ++++
.../com/stripe/model/checkout/Session.java | 40 ++++
.../com/stripe/param/OrderCreateParams.java | 49 ++++-
.../com/stripe/param/OrderUpdateParams.java | 69 ++++++-
.../param/PaymentIntentConfirmParams.java | 125 ++++++++++++-
.../param/PaymentIntentCreateParams.java | 125 ++++++++++++-
.../param/PaymentIntentUpdateParams.java | 175 +++++++++++++++++-
.../param/checkout/SessionCreateParams.java | 124 ++++++++++++-
10 files changed, 736 insertions(+), 29 deletions(-)
diff --git a/OPENAPI_VERSION b/OPENAPI_VERSION
index 00ad8bdb8b0..75ad4e96a0f 100644
--- a/OPENAPI_VERSION
+++ b/OPENAPI_VERSION
@@ -1 +1 @@
-v1479
\ No newline at end of file
+v1481
\ No newline at end of file
diff --git a/src/main/java/com/stripe/model/Order.java b/src/main/java/com/stripe/model/Order.java
index 0c834a2d40c..fe8fdac358a 100644
--- a/src/main/java/com/stripe/model/Order.java
+++ b/src/main/java/com/stripe/model/Order.java
@@ -928,6 +928,14 @@ public static class AcssDebit extends StripeObject {
@SerializedName("setup_future_usage")
String setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The
+ * date must be a string in YYYY-MM-DD format. The date must be in the future and between
+ * 3 and 15 calendar days from now.
+ */
+ @SerializedName("target_date")
+ String targetDate;
+
/**
* Bank account verification method.
*
@@ -1630,6 +1638,14 @@ public static class SepaDebit extends StripeObject {
@SerializedName("setup_future_usage")
String setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The
+ * date must be a string in YYYY-MM-DD format. The date must be in the future and between
+ * 3 and 15 calendar days from now.
+ */
+ @SerializedName("target_date")
+ String targetDate;
+
/**
* For more details about MandateOptions, please refer to the API Reference.
diff --git a/src/main/java/com/stripe/model/PaymentIntent.java b/src/main/java/com/stripe/model/PaymentIntent.java
index c99cbcd1d1f..eb9cca569d2 100644
--- a/src/main/java/com/stripe/model/PaymentIntent.java
+++ b/src/main/java/com/stripe/model/PaymentIntent.java
@@ -3233,6 +3233,14 @@ public static class AcssDebit extends StripeObject {
@SerializedName("setup_future_usage")
String setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The date
+ * must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15
+ * calendar days from now.
+ */
+ @SerializedName("target_date")
+ String targetDate;
+
/**
* Bank account verification method.
*
@@ -3494,6 +3502,14 @@ public static class AuBecsDebit extends StripeObject {
*/
@SerializedName("setup_future_usage")
String setupFutureUsage;
+
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The date
+ * must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15
+ * calendar days from now.
+ */
+ @SerializedName("target_date")
+ String targetDate;
}
/**
@@ -3531,6 +3547,14 @@ public static class BacsDebit extends StripeObject {
@SerializedName("setup_future_usage")
String setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The date
+ * must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15
+ * calendar days from now.
+ */
+ @SerializedName("target_date")
+ String targetDate;
+
/**
* For more details about MandateOptions, please refer to the API Reference.
@@ -5401,6 +5425,14 @@ public static class SepaDebit extends StripeObject {
@SerializedName("setup_future_usage")
String setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The date
+ * must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15
+ * calendar days from now.
+ */
+ @SerializedName("target_date")
+ String targetDate;
+
/**
* For more details about MandateOptions, please refer to the API Reference.
@@ -5610,6 +5642,14 @@ public static class UsBankAccount extends StripeObject {
@SerializedName("setup_future_usage")
String setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The date
+ * must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15
+ * calendar days from now.
+ */
+ @SerializedName("target_date")
+ String targetDate;
+
/**
* Bank account verification method.
*
diff --git a/src/main/java/com/stripe/model/checkout/Session.java b/src/main/java/com/stripe/model/checkout/Session.java
index c33b1390bc9..c2b56165768 100644
--- a/src/main/java/com/stripe/model/checkout/Session.java
+++ b/src/main/java/com/stripe/model/checkout/Session.java
@@ -1869,6 +1869,14 @@ public static class AcssDebit extends StripeObject {
@SerializedName("setup_future_usage")
String setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The date
+ * must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15
+ * calendar days from now.
+ */
+ @SerializedName("target_date")
+ String targetDate;
+
/**
* Bank account verification method.
*
@@ -2084,6 +2092,14 @@ public static class AuBecsDebit extends StripeObject {
*/
@SerializedName("setup_future_usage")
String setupFutureUsage;
+
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The date
+ * must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15
+ * calendar days from now.
+ */
+ @SerializedName("target_date")
+ String targetDate;
}
/**
@@ -2121,6 +2137,14 @@ public static class BacsDebit extends StripeObject {
@SerializedName("setup_future_usage")
String setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The date
+ * must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15
+ * calendar days from now.
+ */
+ @SerializedName("target_date")
+ String targetDate;
+
/**
* For more details about MandateOptions, please refer to the API Reference.
@@ -3315,6 +3339,14 @@ public static class SepaDebit extends StripeObject {
@SerializedName("setup_future_usage")
String setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The date
+ * must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15
+ * calendar days from now.
+ */
+ @SerializedName("target_date")
+ String targetDate;
+
/**
* For more details about MandateOptions, please refer to the API Reference.
@@ -3417,6 +3449,14 @@ public static class UsBankAccount extends StripeObject {
@SerializedName("setup_future_usage")
String setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The date
+ * must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15
+ * calendar days from now.
+ */
+ @SerializedName("target_date")
+ String targetDate;
+
/**
* Bank account verification method.
*
diff --git a/src/main/java/com/stripe/param/OrderCreateParams.java b/src/main/java/com/stripe/param/OrderCreateParams.java
index 490f57940a9..899df65fd81 100644
--- a/src/main/java/com/stripe/param/OrderCreateParams.java
+++ b/src/main/java/com/stripe/param/OrderCreateParams.java
@@ -2787,6 +2787,14 @@ public static class AcssDebit {
@SerializedName("setup_future_usage")
ApiRequestParams.EnumParam setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The
+ * date must be a string in YYYY-MM-DD format. The date must be in the future and between
+ * 3 and 15 calendar days from now.
+ */
+ @SerializedName("target_date")
+ String targetDate;
+
/** Bank account verification method. */
@SerializedName("verification_method")
VerificationMethod verificationMethod;
@@ -2795,10 +2803,12 @@ private AcssDebit(
Map extraParams,
MandateOptions mandateOptions,
ApiRequestParams.EnumParam setupFutureUsage,
+ String targetDate,
VerificationMethod verificationMethod) {
this.extraParams = extraParams;
this.mandateOptions = mandateOptions;
this.setupFutureUsage = setupFutureUsage;
+ this.targetDate = targetDate;
this.verificationMethod = verificationMethod;
}
@@ -2813,6 +2823,8 @@ public static class Builder {
private ApiRequestParams.EnumParam setupFutureUsage;
+ private String targetDate;
+
private VerificationMethod verificationMethod;
/** Finalize and obtain parameter instance from this builder. */
@@ -2821,6 +2833,7 @@ public OrderCreateParams.Payment.Settings.PaymentMethodOptions.AcssDebit build()
this.extraParams,
this.mandateOptions,
this.setupFutureUsage,
+ this.targetDate,
this.verificationMethod);
}
@@ -2922,6 +2935,16 @@ public Builder setSetupFutureUsage(EmptyParam setupFutureUsage) {
return this;
}
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The
+ * date must be a string in YYYY-MM-DD format. The date must be in the future and
+ * between 3 and 15 calendar days from now.
+ */
+ public Builder setTargetDate(String targetDate) {
+ this.targetDate = targetDate;
+ return this;
+ }
+
/** Bank account verification method. */
public Builder setVerificationMethod(
OrderCreateParams.Payment.Settings.PaymentMethodOptions.AcssDebit.VerificationMethod
@@ -6326,13 +6349,23 @@ public static class SepaDebit {
@SerializedName("setup_future_usage")
ApiRequestParams.EnumParam setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The
+ * date must be a string in YYYY-MM-DD format. The date must be in the future and between
+ * 3 and 15 calendar days from now.
+ */
+ @SerializedName("target_date")
+ String targetDate;
+
private SepaDebit(
Map extraParams,
MandateOptions mandateOptions,
- ApiRequestParams.EnumParam setupFutureUsage) {
+ ApiRequestParams.EnumParam setupFutureUsage,
+ String targetDate) {
this.extraParams = extraParams;
this.mandateOptions = mandateOptions;
this.setupFutureUsage = setupFutureUsage;
+ this.targetDate = targetDate;
}
public static Builder builder() {
@@ -6346,10 +6379,12 @@ public static class Builder {
private ApiRequestParams.EnumParam setupFutureUsage;
+ private String targetDate;
+
/** Finalize and obtain parameter instance from this builder. */
public OrderCreateParams.Payment.Settings.PaymentMethodOptions.SepaDebit build() {
return new OrderCreateParams.Payment.Settings.PaymentMethodOptions.SepaDebit(
- this.extraParams, this.mandateOptions, this.setupFutureUsage);
+ this.extraParams, this.mandateOptions, this.setupFutureUsage, this.targetDate);
}
/**
@@ -6449,6 +6484,16 @@ public Builder setSetupFutureUsage(EmptyParam setupFutureUsage) {
this.setupFutureUsage = setupFutureUsage;
return this;
}
+
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The
+ * date must be a string in YYYY-MM-DD format. The date must be in the future and
+ * between 3 and 15 calendar days from now.
+ */
+ public Builder setTargetDate(String targetDate) {
+ this.targetDate = targetDate;
+ return this;
+ }
}
@Getter
diff --git a/src/main/java/com/stripe/param/OrderUpdateParams.java b/src/main/java/com/stripe/param/OrderUpdateParams.java
index d47037a42f8..65898e323b8 100644
--- a/src/main/java/com/stripe/param/OrderUpdateParams.java
+++ b/src/main/java/com/stripe/param/OrderUpdateParams.java
@@ -3234,6 +3234,14 @@ public static class AcssDebit {
@SerializedName("setup_future_usage")
ApiRequestParams.EnumParam setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The
+ * date must be a string in YYYY-MM-DD format. The date must be in the future and between
+ * 3 and 15 calendar days from now.
+ */
+ @SerializedName("target_date")
+ Object targetDate;
+
/** Bank account verification method. */
@SerializedName("verification_method")
VerificationMethod verificationMethod;
@@ -3242,10 +3250,12 @@ private AcssDebit(
Map extraParams,
MandateOptions mandateOptions,
ApiRequestParams.EnumParam setupFutureUsage,
+ Object targetDate,
VerificationMethod verificationMethod) {
this.extraParams = extraParams;
this.mandateOptions = mandateOptions;
this.setupFutureUsage = setupFutureUsage;
+ this.targetDate = targetDate;
this.verificationMethod = verificationMethod;
}
@@ -3260,6 +3270,8 @@ public static class Builder {
private ApiRequestParams.EnumParam setupFutureUsage;
+ private Object targetDate;
+
private VerificationMethod verificationMethod;
/** Finalize and obtain parameter instance from this builder. */
@@ -3268,6 +3280,7 @@ public OrderUpdateParams.Payment.Settings.PaymentMethodOptions.AcssDebit build()
this.extraParams,
this.mandateOptions,
this.setupFutureUsage,
+ this.targetDate,
this.verificationMethod);
}
@@ -3369,6 +3382,26 @@ public Builder setSetupFutureUsage(EmptyParam setupFutureUsage) {
return this;
}
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The
+ * date must be a string in YYYY-MM-DD format. The date must be in the future and
+ * between 3 and 15 calendar days from now.
+ */
+ public Builder setTargetDate(String targetDate) {
+ this.targetDate = targetDate;
+ return this;
+ }
+
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The
+ * date must be a string in YYYY-MM-DD format. The date must be in the future and
+ * between 3 and 15 calendar days from now.
+ */
+ public Builder setTargetDate(EmptyParam targetDate) {
+ this.targetDate = targetDate;
+ return this;
+ }
+
/** Bank account verification method. */
public Builder setVerificationMethod(
OrderUpdateParams.Payment.Settings.PaymentMethodOptions.AcssDebit.VerificationMethod
@@ -6862,13 +6895,23 @@ public static class SepaDebit {
@SerializedName("setup_future_usage")
ApiRequestParams.EnumParam setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The
+ * date must be a string in YYYY-MM-DD format. The date must be in the future and between
+ * 3 and 15 calendar days from now.
+ */
+ @SerializedName("target_date")
+ Object targetDate;
+
private SepaDebit(
Map extraParams,
MandateOptions mandateOptions,
- ApiRequestParams.EnumParam setupFutureUsage) {
+ ApiRequestParams.EnumParam setupFutureUsage,
+ Object targetDate) {
this.extraParams = extraParams;
this.mandateOptions = mandateOptions;
this.setupFutureUsage = setupFutureUsage;
+ this.targetDate = targetDate;
}
public static Builder builder() {
@@ -6882,10 +6925,12 @@ public static class Builder {
private ApiRequestParams.EnumParam setupFutureUsage;
+ private Object targetDate;
+
/** Finalize and obtain parameter instance from this builder. */
public OrderUpdateParams.Payment.Settings.PaymentMethodOptions.SepaDebit build() {
return new OrderUpdateParams.Payment.Settings.PaymentMethodOptions.SepaDebit(
- this.extraParams, this.mandateOptions, this.setupFutureUsage);
+ this.extraParams, this.mandateOptions, this.setupFutureUsage, this.targetDate);
}
/**
@@ -6985,6 +7030,26 @@ public Builder setSetupFutureUsage(EmptyParam setupFutureUsage) {
this.setupFutureUsage = setupFutureUsage;
return this;
}
+
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The
+ * date must be a string in YYYY-MM-DD format. The date must be in the future and
+ * between 3 and 15 calendar days from now.
+ */
+ public Builder setTargetDate(String targetDate) {
+ this.targetDate = targetDate;
+ return this;
+ }
+
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The
+ * date must be a string in YYYY-MM-DD format. The date must be in the future and
+ * between 3 and 15 calendar days from now.
+ */
+ public Builder setTargetDate(EmptyParam targetDate) {
+ this.targetDate = targetDate;
+ return this;
+ }
}
@Getter
diff --git a/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java b/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java
index a31d6087e7b..0225cfb07ee 100644
--- a/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java
+++ b/src/main/java/com/stripe/param/PaymentIntentConfirmParams.java
@@ -12782,6 +12782,14 @@ public static class AcssDebit {
@SerializedName("setup_future_usage")
ApiRequestParams.EnumParam setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The date
+ * must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15
+ * calendar days from now.
+ */
+ @SerializedName("target_date")
+ String targetDate;
+
/** Bank account verification method. */
@SerializedName("verification_method")
VerificationMethod verificationMethod;
@@ -12790,10 +12798,12 @@ private AcssDebit(
Map extraParams,
MandateOptions mandateOptions,
ApiRequestParams.EnumParam setupFutureUsage,
+ String targetDate,
VerificationMethod verificationMethod) {
this.extraParams = extraParams;
this.mandateOptions = mandateOptions;
this.setupFutureUsage = setupFutureUsage;
+ this.targetDate = targetDate;
this.verificationMethod = verificationMethod;
}
@@ -12808,6 +12818,8 @@ public static class Builder {
private ApiRequestParams.EnumParam setupFutureUsage;
+ private String targetDate;
+
private VerificationMethod verificationMethod;
/** Finalize and obtain parameter instance from this builder. */
@@ -12816,6 +12828,7 @@ public PaymentIntentConfirmParams.PaymentMethodOptions.AcssDebit build() {
this.extraParams,
this.mandateOptions,
this.setupFutureUsage,
+ this.targetDate,
this.verificationMethod);
}
@@ -12915,6 +12928,16 @@ public Builder setSetupFutureUsage(EmptyParam setupFutureUsage) {
return this;
}
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The
+ * date must be a string in YYYY-MM-DD format. The date must be in the future and between 3
+ * and 15 calendar days from now.
+ */
+ public Builder setTargetDate(String targetDate) {
+ this.targetDate = targetDate;
+ return this;
+ }
+
/** Bank account verification method. */
public Builder setVerificationMethod(
PaymentIntentConfirmParams.PaymentMethodOptions.AcssDebit.VerificationMethod
@@ -14102,10 +14125,21 @@ public static class AuBecsDebit {
@SerializedName("setup_future_usage")
ApiRequestParams.EnumParam setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The date
+ * must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15
+ * calendar days from now.
+ */
+ @SerializedName("target_date")
+ String targetDate;
+
private AuBecsDebit(
- Map extraParams, ApiRequestParams.EnumParam setupFutureUsage) {
+ Map extraParams,
+ ApiRequestParams.EnumParam setupFutureUsage,
+ String targetDate) {
this.extraParams = extraParams;
this.setupFutureUsage = setupFutureUsage;
+ this.targetDate = targetDate;
}
public static Builder builder() {
@@ -14117,10 +14151,12 @@ public static class Builder {
private ApiRequestParams.EnumParam setupFutureUsage;
+ private String targetDate;
+
/** Finalize and obtain parameter instance from this builder. */
public PaymentIntentConfirmParams.PaymentMethodOptions.AuBecsDebit build() {
return new PaymentIntentConfirmParams.PaymentMethodOptions.AuBecsDebit(
- this.extraParams, this.setupFutureUsage);
+ this.extraParams, this.setupFutureUsage, this.targetDate);
}
/**
@@ -14210,6 +14246,16 @@ public Builder setSetupFutureUsage(EmptyParam setupFutureUsage) {
this.setupFutureUsage = setupFutureUsage;
return this;
}
+
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The
+ * date must be a string in YYYY-MM-DD format. The date must be in the future and between 3
+ * and 15 calendar days from now.
+ */
+ public Builder setTargetDate(String targetDate) {
+ this.targetDate = targetDate;
+ return this;
+ }
}
public enum SetupFutureUsage implements ApiRequestParams.EnumParam {
@@ -14272,13 +14318,23 @@ public static class BacsDebit {
@SerializedName("setup_future_usage")
ApiRequestParams.EnumParam setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The date
+ * must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15
+ * calendar days from now.
+ */
+ @SerializedName("target_date")
+ String targetDate;
+
private BacsDebit(
Map extraParams,
MandateOptions mandateOptions,
- ApiRequestParams.EnumParam setupFutureUsage) {
+ ApiRequestParams.EnumParam setupFutureUsage,
+ String targetDate) {
this.extraParams = extraParams;
this.mandateOptions = mandateOptions;
this.setupFutureUsage = setupFutureUsage;
+ this.targetDate = targetDate;
}
public static Builder builder() {
@@ -14292,10 +14348,12 @@ public static class Builder {
private ApiRequestParams.EnumParam setupFutureUsage;
+ private String targetDate;
+
/** Finalize and obtain parameter instance from this builder. */
public PaymentIntentConfirmParams.PaymentMethodOptions.BacsDebit build() {
return new PaymentIntentConfirmParams.PaymentMethodOptions.BacsDebit(
- this.extraParams, this.mandateOptions, this.setupFutureUsage);
+ this.extraParams, this.mandateOptions, this.setupFutureUsage, this.targetDate);
}
/**
@@ -14393,6 +14451,16 @@ public Builder setSetupFutureUsage(EmptyParam setupFutureUsage) {
this.setupFutureUsage = setupFutureUsage;
return this;
}
+
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The
+ * date must be a string in YYYY-MM-DD format. The date must be in the future and between 3
+ * and 15 calendar days from now.
+ */
+ public Builder setTargetDate(String targetDate) {
+ this.targetDate = targetDate;
+ return this;
+ }
}
@Getter
@@ -23812,13 +23880,23 @@ public static class SepaDebit {
@SerializedName("setup_future_usage")
ApiRequestParams.EnumParam setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The date
+ * must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15
+ * calendar days from now.
+ */
+ @SerializedName("target_date")
+ String targetDate;
+
private SepaDebit(
Map extraParams,
MandateOptions mandateOptions,
- ApiRequestParams.EnumParam setupFutureUsage) {
+ ApiRequestParams.EnumParam setupFutureUsage,
+ String targetDate) {
this.extraParams = extraParams;
this.mandateOptions = mandateOptions;
this.setupFutureUsage = setupFutureUsage;
+ this.targetDate = targetDate;
}
public static Builder builder() {
@@ -23832,10 +23910,12 @@ public static class Builder {
private ApiRequestParams.EnumParam setupFutureUsage;
+ private String targetDate;
+
/** Finalize and obtain parameter instance from this builder. */
public PaymentIntentConfirmParams.PaymentMethodOptions.SepaDebit build() {
return new PaymentIntentConfirmParams.PaymentMethodOptions.SepaDebit(
- this.extraParams, this.mandateOptions, this.setupFutureUsage);
+ this.extraParams, this.mandateOptions, this.setupFutureUsage, this.targetDate);
}
/**
@@ -23933,6 +24013,16 @@ public Builder setSetupFutureUsage(EmptyParam setupFutureUsage) {
this.setupFutureUsage = setupFutureUsage;
return this;
}
+
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The
+ * date must be a string in YYYY-MM-DD format. The date must be in the future and between 3
+ * and 15 calendar days from now.
+ */
+ public Builder setTargetDate(String targetDate) {
+ this.targetDate = targetDate;
+ return this;
+ }
}
@Getter
@@ -24725,6 +24815,14 @@ public static class UsBankAccount {
@SerializedName("setup_future_usage")
ApiRequestParams.EnumParam setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The date
+ * must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15
+ * calendar days from now.
+ */
+ @SerializedName("target_date")
+ String targetDate;
+
/** Bank account verification method. */
@SerializedName("verification_method")
VerificationMethod verificationMethod;
@@ -24736,6 +24834,7 @@ private UsBankAccount(
Networks networks,
ApiRequestParams.EnumParam preferredSettlementSpeed,
ApiRequestParams.EnumParam setupFutureUsage,
+ String targetDate,
VerificationMethod verificationMethod) {
this.extraParams = extraParams;
this.financialConnections = financialConnections;
@@ -24743,6 +24842,7 @@ private UsBankAccount(
this.networks = networks;
this.preferredSettlementSpeed = preferredSettlementSpeed;
this.setupFutureUsage = setupFutureUsage;
+ this.targetDate = targetDate;
this.verificationMethod = verificationMethod;
}
@@ -24763,6 +24863,8 @@ public static class Builder {
private ApiRequestParams.EnumParam setupFutureUsage;
+ private String targetDate;
+
private VerificationMethod verificationMethod;
/** Finalize and obtain parameter instance from this builder. */
@@ -24774,6 +24876,7 @@ public PaymentIntentConfirmParams.PaymentMethodOptions.UsBankAccount build() {
this.networks,
this.preferredSettlementSpeed,
this.setupFutureUsage,
+ this.targetDate,
this.verificationMethod);
}
@@ -24904,6 +25007,16 @@ public Builder setSetupFutureUsage(EmptyParam setupFutureUsage) {
return this;
}
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The
+ * date must be a string in YYYY-MM-DD format. The date must be in the future and between 3
+ * and 15 calendar days from now.
+ */
+ public Builder setTargetDate(String targetDate) {
+ this.targetDate = targetDate;
+ return this;
+ }
+
/** Bank account verification method. */
public Builder setVerificationMethod(
PaymentIntentConfirmParams.PaymentMethodOptions.UsBankAccount.VerificationMethod
diff --git a/src/main/java/com/stripe/param/PaymentIntentCreateParams.java b/src/main/java/com/stripe/param/PaymentIntentCreateParams.java
index 8af494d8a35..63bd08dc256 100644
--- a/src/main/java/com/stripe/param/PaymentIntentCreateParams.java
+++ b/src/main/java/com/stripe/param/PaymentIntentCreateParams.java
@@ -13260,6 +13260,14 @@ public static class AcssDebit {
@SerializedName("setup_future_usage")
ApiRequestParams.EnumParam setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The date
+ * must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15
+ * calendar days from now.
+ */
+ @SerializedName("target_date")
+ String targetDate;
+
/** Bank account verification method. */
@SerializedName("verification_method")
VerificationMethod verificationMethod;
@@ -13268,10 +13276,12 @@ private AcssDebit(
Map extraParams,
MandateOptions mandateOptions,
ApiRequestParams.EnumParam setupFutureUsage,
+ String targetDate,
VerificationMethod verificationMethod) {
this.extraParams = extraParams;
this.mandateOptions = mandateOptions;
this.setupFutureUsage = setupFutureUsage;
+ this.targetDate = targetDate;
this.verificationMethod = verificationMethod;
}
@@ -13286,6 +13296,8 @@ public static class Builder {
private ApiRequestParams.EnumParam setupFutureUsage;
+ private String targetDate;
+
private VerificationMethod verificationMethod;
/** Finalize and obtain parameter instance from this builder. */
@@ -13294,6 +13306,7 @@ public PaymentIntentCreateParams.PaymentMethodOptions.AcssDebit build() {
this.extraParams,
this.mandateOptions,
this.setupFutureUsage,
+ this.targetDate,
this.verificationMethod);
}
@@ -13393,6 +13406,16 @@ public Builder setSetupFutureUsage(EmptyParam setupFutureUsage) {
return this;
}
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The
+ * date must be a string in YYYY-MM-DD format. The date must be in the future and between 3
+ * and 15 calendar days from now.
+ */
+ public Builder setTargetDate(String targetDate) {
+ this.targetDate = targetDate;
+ return this;
+ }
+
/** Bank account verification method. */
public Builder setVerificationMethod(
PaymentIntentCreateParams.PaymentMethodOptions.AcssDebit.VerificationMethod
@@ -14580,10 +14603,21 @@ public static class AuBecsDebit {
@SerializedName("setup_future_usage")
ApiRequestParams.EnumParam setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The date
+ * must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15
+ * calendar days from now.
+ */
+ @SerializedName("target_date")
+ String targetDate;
+
private AuBecsDebit(
- Map extraParams, ApiRequestParams.EnumParam setupFutureUsage) {
+ Map extraParams,
+ ApiRequestParams.EnumParam setupFutureUsage,
+ String targetDate) {
this.extraParams = extraParams;
this.setupFutureUsage = setupFutureUsage;
+ this.targetDate = targetDate;
}
public static Builder builder() {
@@ -14595,10 +14629,12 @@ public static class Builder {
private ApiRequestParams.EnumParam setupFutureUsage;
+ private String targetDate;
+
/** Finalize and obtain parameter instance from this builder. */
public PaymentIntentCreateParams.PaymentMethodOptions.AuBecsDebit build() {
return new PaymentIntentCreateParams.PaymentMethodOptions.AuBecsDebit(
- this.extraParams, this.setupFutureUsage);
+ this.extraParams, this.setupFutureUsage, this.targetDate);
}
/**
@@ -14688,6 +14724,16 @@ public Builder setSetupFutureUsage(EmptyParam setupFutureUsage) {
this.setupFutureUsage = setupFutureUsage;
return this;
}
+
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The
+ * date must be a string in YYYY-MM-DD format. The date must be in the future and between 3
+ * and 15 calendar days from now.
+ */
+ public Builder setTargetDate(String targetDate) {
+ this.targetDate = targetDate;
+ return this;
+ }
}
public enum SetupFutureUsage implements ApiRequestParams.EnumParam {
@@ -14750,13 +14796,23 @@ public static class BacsDebit {
@SerializedName("setup_future_usage")
ApiRequestParams.EnumParam setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The date
+ * must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15
+ * calendar days from now.
+ */
+ @SerializedName("target_date")
+ String targetDate;
+
private BacsDebit(
Map extraParams,
MandateOptions mandateOptions,
- ApiRequestParams.EnumParam setupFutureUsage) {
+ ApiRequestParams.EnumParam setupFutureUsage,
+ String targetDate) {
this.extraParams = extraParams;
this.mandateOptions = mandateOptions;
this.setupFutureUsage = setupFutureUsage;
+ this.targetDate = targetDate;
}
public static Builder builder() {
@@ -14770,10 +14826,12 @@ public static class Builder {
private ApiRequestParams.EnumParam setupFutureUsage;
+ private String targetDate;
+
/** Finalize and obtain parameter instance from this builder. */
public PaymentIntentCreateParams.PaymentMethodOptions.BacsDebit build() {
return new PaymentIntentCreateParams.PaymentMethodOptions.BacsDebit(
- this.extraParams, this.mandateOptions, this.setupFutureUsage);
+ this.extraParams, this.mandateOptions, this.setupFutureUsage, this.targetDate);
}
/**
@@ -14871,6 +14929,16 @@ public Builder setSetupFutureUsage(EmptyParam setupFutureUsage) {
this.setupFutureUsage = setupFutureUsage;
return this;
}
+
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The
+ * date must be a string in YYYY-MM-DD format. The date must be in the future and between 3
+ * and 15 calendar days from now.
+ */
+ public Builder setTargetDate(String targetDate) {
+ this.targetDate = targetDate;
+ return this;
+ }
}
@Getter
@@ -24277,13 +24345,23 @@ public static class SepaDebit {
@SerializedName("setup_future_usage")
ApiRequestParams.EnumParam setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The date
+ * must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15
+ * calendar days from now.
+ */
+ @SerializedName("target_date")
+ String targetDate;
+
private SepaDebit(
Map extraParams,
MandateOptions mandateOptions,
- ApiRequestParams.EnumParam setupFutureUsage) {
+ ApiRequestParams.EnumParam setupFutureUsage,
+ String targetDate) {
this.extraParams = extraParams;
this.mandateOptions = mandateOptions;
this.setupFutureUsage = setupFutureUsage;
+ this.targetDate = targetDate;
}
public static Builder builder() {
@@ -24297,10 +24375,12 @@ public static class Builder {
private ApiRequestParams.EnumParam setupFutureUsage;
+ private String targetDate;
+
/** Finalize and obtain parameter instance from this builder. */
public PaymentIntentCreateParams.PaymentMethodOptions.SepaDebit build() {
return new PaymentIntentCreateParams.PaymentMethodOptions.SepaDebit(
- this.extraParams, this.mandateOptions, this.setupFutureUsage);
+ this.extraParams, this.mandateOptions, this.setupFutureUsage, this.targetDate);
}
/**
@@ -24398,6 +24478,16 @@ public Builder setSetupFutureUsage(EmptyParam setupFutureUsage) {
this.setupFutureUsage = setupFutureUsage;
return this;
}
+
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The
+ * date must be a string in YYYY-MM-DD format. The date must be in the future and between 3
+ * and 15 calendar days from now.
+ */
+ public Builder setTargetDate(String targetDate) {
+ this.targetDate = targetDate;
+ return this;
+ }
}
@Getter
@@ -25190,6 +25280,14 @@ public static class UsBankAccount {
@SerializedName("setup_future_usage")
ApiRequestParams.EnumParam setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The date
+ * must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15
+ * calendar days from now.
+ */
+ @SerializedName("target_date")
+ String targetDate;
+
/** Bank account verification method. */
@SerializedName("verification_method")
VerificationMethod verificationMethod;
@@ -25201,6 +25299,7 @@ private UsBankAccount(
Networks networks,
ApiRequestParams.EnumParam preferredSettlementSpeed,
ApiRequestParams.EnumParam setupFutureUsage,
+ String targetDate,
VerificationMethod verificationMethod) {
this.extraParams = extraParams;
this.financialConnections = financialConnections;
@@ -25208,6 +25307,7 @@ private UsBankAccount(
this.networks = networks;
this.preferredSettlementSpeed = preferredSettlementSpeed;
this.setupFutureUsage = setupFutureUsage;
+ this.targetDate = targetDate;
this.verificationMethod = verificationMethod;
}
@@ -25228,6 +25328,8 @@ public static class Builder {
private ApiRequestParams.EnumParam setupFutureUsage;
+ private String targetDate;
+
private VerificationMethod verificationMethod;
/** Finalize and obtain parameter instance from this builder. */
@@ -25239,6 +25341,7 @@ public PaymentIntentCreateParams.PaymentMethodOptions.UsBankAccount build() {
this.networks,
this.preferredSettlementSpeed,
this.setupFutureUsage,
+ this.targetDate,
this.verificationMethod);
}
@@ -25367,6 +25470,16 @@ public Builder setSetupFutureUsage(EmptyParam setupFutureUsage) {
return this;
}
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The
+ * date must be a string in YYYY-MM-DD format. The date must be in the future and between 3
+ * and 15 calendar days from now.
+ */
+ public Builder setTargetDate(String targetDate) {
+ this.targetDate = targetDate;
+ return this;
+ }
+
/** Bank account verification method. */
public Builder setVerificationMethod(
PaymentIntentCreateParams.PaymentMethodOptions.UsBankAccount.VerificationMethod
diff --git a/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java b/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java
index f1b24566627..2ecaac8833a 100644
--- a/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java
+++ b/src/main/java/com/stripe/param/PaymentIntentUpdateParams.java
@@ -13462,6 +13462,14 @@ public static class AcssDebit {
@SerializedName("setup_future_usage")
ApiRequestParams.EnumParam setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The date
+ * must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15
+ * calendar days from now.
+ */
+ @SerializedName("target_date")
+ Object targetDate;
+
/** Bank account verification method. */
@SerializedName("verification_method")
VerificationMethod verificationMethod;
@@ -13470,10 +13478,12 @@ private AcssDebit(
Map extraParams,
MandateOptions mandateOptions,
ApiRequestParams.EnumParam setupFutureUsage,
+ Object targetDate,
VerificationMethod verificationMethod) {
this.extraParams = extraParams;
this.mandateOptions = mandateOptions;
this.setupFutureUsage = setupFutureUsage;
+ this.targetDate = targetDate;
this.verificationMethod = verificationMethod;
}
@@ -13488,6 +13498,8 @@ public static class Builder {
private ApiRequestParams.EnumParam setupFutureUsage;
+ private Object targetDate;
+
private VerificationMethod verificationMethod;
/** Finalize and obtain parameter instance from this builder. */
@@ -13496,6 +13508,7 @@ public PaymentIntentUpdateParams.PaymentMethodOptions.AcssDebit build() {
this.extraParams,
this.mandateOptions,
this.setupFutureUsage,
+ this.targetDate,
this.verificationMethod);
}
@@ -13595,6 +13608,26 @@ public Builder setSetupFutureUsage(EmptyParam setupFutureUsage) {
return this;
}
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The
+ * date must be a string in YYYY-MM-DD format. The date must be in the future and between 3
+ * and 15 calendar days from now.
+ */
+ public Builder setTargetDate(String targetDate) {
+ this.targetDate = targetDate;
+ return this;
+ }
+
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The
+ * date must be a string in YYYY-MM-DD format. The date must be in the future and between 3
+ * and 15 calendar days from now.
+ */
+ public Builder setTargetDate(EmptyParam targetDate) {
+ this.targetDate = targetDate;
+ return this;
+ }
+
/** Bank account verification method. */
public Builder setVerificationMethod(
PaymentIntentUpdateParams.PaymentMethodOptions.AcssDebit.VerificationMethod
@@ -14809,10 +14842,21 @@ public static class AuBecsDebit {
@SerializedName("setup_future_usage")
ApiRequestParams.EnumParam setupFutureUsage;
+ /**
+ * Controls when Stripe will attempt to debit the funds from the customer's account. The date
+ * must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15
+ * calendar days from now.
+ */
+ @SerializedName("target_date")
+ Object targetDate;
+
private AuBecsDebit(
- Map extraParams, ApiRequestParams.EnumParam setupFutureUsage) {
+ Map